TurtleBrains  0.2.1
High quality, portable, C++ API for native application and 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 #ifdef tb_use_debug_set
21 
33  #define tb_log_open(logFile, createConsoleWindow) TurtleBrains::Debug::OpenLog(logFile, createConsoleWindow)
34 
40  #define tb_log_save() TurtleBrains::Debug::SaveLog()
41 
48  #define tb_log_close() TurtleBrains::Debug::CloseLog()
49 
59  #define tb_log(formattedMessage, ...) TurtleBrains::Debug::Log(formattedMessage, ##__VA_ARGS__)
60 
73  #define tb_log_if(testResult, formattedMessage, ...) TurtleBrains::Debug::LogIf((testResult), formattedMessage, ##__VA_ARGS__)
74 
75 #else //NO tb_use_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_use_debug_set */
84 
88 
89 namespace TurtleBrains
90 {
91  namespace Debug
92  {
93 
106  void OpenLog(const std::string& logFile, bool createConsoleWindow);
107 
114  void SaveLog(void);
115 
123  void CloseLog(void);
124 
135  void Log(const char* formattedMessage, ...);
136 
147  void LogIf(const bool testResult, const char* formattedMessage, ...);
148 
149  }; /* namespace Debug */
150 }; /* namespace TurtleBrains */
151 
152 namespace tbDebug = TurtleBrains::Debug;
153 
154 #endif /* _TurtleBrains_DebugLogger_h_ */
void OpenLog(const std::string &logFile, bool createConsoleWindow)
Contains all functions, classes and helpers related to game/application development written by Tim "B...
Definition: tb_application_dialog.h:21
void LogIf(const bool testResult, const char *formattedMessage,...)
Contains some functionality for creating a debug log, and in some cases (Windows) popping open a cons...
Definition: tb_debug_logger.h:91
void Log(const char *formattedMessage,...)