18 #ifndef SDF_CONSOLE_HH_ 19 #define SDF_CONSOLE_HH_ 26 #include <sdf/sdf_config.h> 33 #pragma warning(disable: 4251) 39 inline namespace SDF_VERSION_NAMESPACE {
46 #define sdfdbg (sdf::Console::Instance()->Log("Dbg", __FILE__, __LINE__)) 49 #define sdfmsg (sdf::Console::Instance()->ColorMsg("Msg", \ 50 __FILE__, __LINE__, 32)) 53 #define sdfwarn (sdf::Console::Instance()->ColorMsg("Warning", \ 54 __FILE__, __LINE__, 33)) 57 #define sdferr (sdf::Console::Instance()->ColorMsg("Error", \ 58 __FILE__, __LINE__, 31)) 83 public:
template <
class T>
91 public:
void Prefix(
const std::string &_lbl,
92 const std::string &_file,
93 unsigned int _line,
int _color);
96 private: std::ostream *stream;
106 public:
static ConsolePtr Instance();
109 public:
static void Clear();
113 public:
void SetQuiet(
bool _q);
122 const std::string &file,
123 unsigned int line,
int color);
131 const std::string &file,
136 private: std::unique_ptr<ConsolePrivate> dataPtr;
162 *this->stream << _rhs;
165 if (Console::Instance()->dataPtr->logFileStream.is_open())
167 Console::Instance()->dataPtr->logFileStream << _rhs;
168 Console::Instance()->dataPtr->logFileStream.flush();
Message, error, warning, and logging functionality.
Definition: Console.hh:68
std::shared_ptr< Console > ConsolePtr
Definition: Console.hh:65
Console::ConsoleStream logStream
log stream
Definition: Console.hh:150
Definition: Console.hh:141
Console::ConsoleStream msgStream
message stream
Definition: Console.hh:147
ConsolePrivate()
Constructor.
Definition: Console.hh:144
std::ostream & operator<<(std::ostream &os, ParamStreamer< T > s)
Definition: Param.hh:78
ConsoleStream(std::ostream *_stream)
Constructor.
Definition: Console.hh:76
An ostream-like class that we'll use for logging.
Definition: Console.hh:71
#define SDFORMAT_VISIBLE
Use to represent "symbol visible" if supported.
Definition: system_util.hh:41
namespace for Simulation Description Format parser
Definition: Actor.hh:33
std::ofstream logFileStream
logfile stream
Definition: Console.hh:153