casa
$Rev:20696$
|
Abstract base class for filtering LogMessages. More...
#include <LogFilterInterface.h>
Public Member Functions | |
LogFilterInterface () | |
Construct a filter with the LOWEST priority that you want passed. | |
virtual | ~LogFilterInterface () |
virtual LogFilterInterface * | clone () const =0 |
Clone the object. | |
virtual Bool | pass (const LogMessage &message) const =0 |
Return True if message passes this filter. | |
Private Member Functions | |
LogFilterInterface (const LogFilterInterface &other) | |
Copy constructor and assignment cannot be used. | |
LogFilterInterface & | operator= (const LogFilterInterface &other) |
Abstract base class for filtering LogMessages.
Internal
Log[Message] Filter.
The LogFilter
class is used by the various log sink classes, typically accessed through LogSink , to decide whether a particular LogMessage should be accepted or rejected.
Simple filtering is based on the messages priority. In particular, you typically will choose to only pass messages greater than or equal to NORMAL
in priority, but you might choose DEBUGGING
to see all messages, or SEVERE
to only see messages that report serious problems.
Suppose we wanted to change the global sink so that it prints all messages, including debugging messages:
LogFilter all(LogMessage::DEBUGGING); LogSink::globalSink().filter(all);
Definition at line 84 of file LogFilterInterface.h.
casa::LogFilterInterface::LogFilterInterface | ( | ) | [inline] |
Construct a filter with the LOWEST priority that you want passed.
Thus DEBUGGING
passes everything. Note that it is not possible to block SEVERE
level messages, although you can use a NullLogSink which will have this effect.
Definition at line 92 of file LogFilterInterface.h.
virtual casa::LogFilterInterface::~LogFilterInterface | ( | ) | [virtual] |
casa::LogFilterInterface::LogFilterInterface | ( | const LogFilterInterface & | other | ) | [private] |
Copy constructor and assignment cannot be used.
virtual LogFilterInterface* casa::LogFilterInterface::clone | ( | ) | const [pure virtual] |
Clone the object.
Implemented in casa::PlotLoggerFilter, casa::LogFilterTaql, and casa::LogFilter.
LogFilterInterface& casa::LogFilterInterface::operator= | ( | const LogFilterInterface & | other | ) | [private] |
virtual Bool casa::LogFilterInterface::pass | ( | const LogMessage & | message | ) | const [pure virtual] |
Return True if message
passes this filter.
Implemented in casa::PlotLoggerFilter, casa::LogFilterTaql, and casa::LogFilter.