log4cpp 1.1.6
Loading...
Searching...
No Matches
PatternLayout.hh
Go to the documentation of this file.
1/*
2 * PatternLayout.hh
3 *
4 * Copyright 2002, Bastiaan Bakker. All rights reserved.
5 *
6 * See the COPYING file for the terms of usage and distribution.
7 */
8
9#ifndef _LOG4CPP_PATTERNLAYOUT_HH
10#define _LOG4CPP_PATTERNLAYOUT_HH
11
13#include <log4cpp/Layout.hh>
15#include <vector>
16#ifdef LOG4CPP_HAVE_SSTREAM
17#include <sstream>
18#endif
19#include <string>
20
21namespace log4cpp {
22
27 public:
31 static const char* DEFAULT_CONVERSION_PATTERN;
32
36 static const char* SIMPLE_CONVERSION_PATTERN;
37
41 static const char* BASIC_CONVERSION_PATTERN;
42
47 static const char* TTCC_CONVERSION_PATTERN;
48
50 virtual ~PatternLayout();
51
52 // NOTE: All double percentage signs ('%%') followed by a character
53 // in the following comments should actually be a single char.
54 // The doubles are included so that doxygen will print them correctly.
60 virtual std::string format(const LoggingEvent& event);
61
85 virtual void setConversionPattern(const std::string& conversionPattern);
86
87 virtual std::string getConversionPattern() const;
88
89 virtual void clearConversionPattern();
90
92 public:
93 inline virtual ~PatternComponent() {};
94 virtual void append(std::ostringstream& out, const LoggingEvent& event) = 0;
95 };
96
97 private:
98 typedef std::vector<PatternComponent*> ComponentVector;
99 ComponentVector _components;
100
101 std::string _conversionPattern;
102 };
103} // namespace log4cpp
104
105#endif // _LOG4CPP_PATTERNLAYOUT_HH
#define LOG4CPP_EXPORT
Definition Export.hh:26
Extend this abstract class to create your own log layout format.
Definition Layout.hh:22
Definition PatternLayout.hh:91
virtual void append(std::ostringstream &out, const LoggingEvent &event)=0
virtual ~PatternComponent()
Definition PatternLayout.hh:93
virtual std::string getConversionPattern() const
Definition PatternLayout.cpp:380
virtual std::string format(const LoggingEvent &event)
Formats the LoggingEvent in the style set by the setConversionPattern call.
Definition PatternLayout.cpp:384
static const char * TTCC_CONVERSION_PATTERN
A conversion pattern equivalent to the TTCCLayout.
Definition PatternLayout.hh:47
virtual void setConversionPattern(const std::string &conversionPattern)
Sets the format of log lines handled by this PatternLayout.
Definition PatternLayout.cpp:265
PatternLayout()
Definition PatternLayout.cpp:246
virtual void clearConversionPattern()
Definition PatternLayout.cpp:257
static const char * DEFAULT_CONVERSION_PATTERN
The default conversion pattern.
Definition PatternLayout.hh:31
static const char * SIMPLE_CONVERSION_PATTERN
A conversion pattern equivalent to the SimpleLayout.
Definition PatternLayout.hh:36
static const char * BASIC_CONVERSION_PATTERN
A conversion pattern equivalent to the BasicLayout.
Definition PatternLayout.hh:41
Definition Portability.hh:62
The top level namespace for all 'Log for C++' types and classes.
Definition AbortAppender.hh:16
The internal representation of logging events.
Definition LoggingEvent.hh:32