00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef _DECAF_UTIL_LOGGING_FORMATTER_H_
00018 #define _DECAF_UTIL_LOGGING_FORMATTER_H_
00019
00020 #include <decaf/util/Config.h>
00021 #include <decaf/util/logging/Handler.h>
00022
00023 namespace decaf{
00024 namespace util{
00025 namespace logging{
00026
00037 class DECAF_API Formatter {
00038 public:
00039
00040 virtual ~Formatter() {}
00041
00047 virtual std::string format( const LogRecord& record ) const = 0;
00048
00054 virtual std::string formatMessage( const LogRecord& record ) const;
00055
00065 virtual std::string getHead( const Handler* handler DECAF_UNUSED ) {
00066 return "";
00067 }
00068
00075 virtual std::string getTail( const Handler* handler DECAF_UNUSED ) {
00076 return "";
00077 }
00078
00079 };
00080
00081 }}}
00082
00083 #endif