📄 warlogiostreamhandler.h
字号:
/** Log event handler for C++ ostream. */#ifndef WAR_LOG_IOSTREAM_HANDLER_H#define WAR_LOG_IOSTREAM_HANDLER_H/* SYSTEM INCLUDES *//* PROJECT INCLUDES */#ifndef WAR_LOG_EVENT_HANDLER_H# include "WarLogEventHandler.h"#endif#ifndef WAR_LOG_H# include "WarLog.h"#endif/* LOCAL INCLUDES *//* FORWARD REFERENCES */#ifdef __cplusplusextern "C" {#endif/****************** BEGIN OLD STYLE C spesific ********//****************** END OLD STYLE C spesific **********/#ifdef __cplusplus }#endif/****************** BEGIN C++ spesific ****************/#ifdef __cplusplusclass WarLogIoStreamHandler : public WarLogEventHandler{public: // LIFECYCLE /** * Default constructor. */ WarLogIoStreamHandler(std::ostream& rIo, war_ccstr_t name) : WarLogEventHandler(name), mrIo(rIo) {} // OPERATORS // OPERATIONS // ACCESS // INQUIRY protected: virtual void OnEvent(WarLogEvent& logEvent) { if (!(GetSupressFlags() & SUPRESS_PREFIX)) { if (!(GetSupressFlags() & SUPRESS_TYPE)) mrIo << WarLog::sTypeChr[logEvent.mType] << ' '; if (!(GetSupressFlags() & SUPRESS_DATE)) mrIo << logEvent.mTime.FormatLT("%c "); } if (!(GetSupressFlags() & SUPRESS_ERROR) && logEvent.mError) mrIo << '{' << logEvent.mError.Explain() << "} "; if (!(GetSupressFlags() & SUPRESS_IDENTIFIER) && logEvent.mIdentifier.HaveLogIdentifier()) { std::string log_identifier; logEvent.mIdentifier.GetLogIdentifier(log_identifier); mrIo << '<' << log_identifier << "> "; } if (!(GetSupressFlags() & SUPRESS_PREFIX) && !(GetSupressFlags() & SUPRESS_MODULE) && !logEvent.mCallingFunc.empty()) { mrIo << '[' << logEvent.mCallingFunc << "] "; } mrIo << logEvent.mMessage << std::endl; }private: std::ostream& mrIo;};/* INLINE METHODS *//* EXTERNAL REFERENCES */#endif /* __cplusplus *//****************** END C++ spesific ******************/#endif /* WAR_LOG_IOSTREAM_HANDLER_H_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -