TurtleBrains  0.3.1
High quality, portable, C++ framework for rapid 2D game development.
tb_debug_logger.h
1 
9 #ifndef _TurtleBrains_DebugLogger_h_
10 #define _TurtleBrains_DebugLogger_h_
11 
12 #include "tb_debug_tool_set.h"
13 #include <string>
14 
19 
20 #if defined(tb_enable_debug_set) || defined(tb_generate_documentation)
21 
33  #define tb_log_open(logFile, createConsoleWindow) TurtleBrains::Core::Debug::OpenLog(logFile, createConsoleWindow)
34 
40  #define tb_log_save() TurtleBrains::Core::Debug::SaveLog()
41 
48  #define tb_log_close() TurtleBrains::Core::Debug::CloseLog()
49 
59  #define tb_log(formattedMessage, ...) TurtleBrains::Core::Debug::Log(formattedMessage, ##__VA_ARGS__)
60 
73  #define tb_log_if(testResult, formattedMessage, ...) TurtleBrains::Core::Debug::LogIf((testResult), formattedMessage, ##__VA_ARGS__)
74 
75 #else //NO tb_enable_debug_set
76 
77  #define tb_log_open(logFile, createConsoleWindow) ;
78  #define tb_log_save() ;
79  #define tb_log_close() ;
80  #define tb_log(formattedMessage, ...) ;
81  #define tb_log_if(test, formattedMessage, ...) ;
82 
83 #endif /* tb_enable_debug_set */
84 
88 
89 namespace TurtleBrains
90 {
91  namespace Core
92  {
93  namespace Debug
94  {
95 
108  void OpenLog(const std::string& logFile, bool createConsoleWindow);
109 
116  void SaveLog(void);
117 
125  void CloseLog(void);
126 
137  void Log(const char* formattedMessage, ...);
138 
152  void LogIf(const bool testResult, const char* formattedMessage, ...);
153 
154  }; /* namespace Debug */
155  }; /* namespace Core */
156 }; /* namespace TurtleBrains */
157 
158 #endif /* _TurtleBrains_DebugLogger_h_ */
void OpenLog(const std::string &logFile, bool createConsoleWindow)
void LogIf(const bool testResult, const char *formattedMessage,...)
Here is some information about the primary namespace.
Definition: tb_application_dialog.h:21
void Log(const char *formattedMessage,...)