OrocosComponentLibrary  2.7.0
Public Member Functions | Protected Member Functions | Protected Attributes
OstreamAppender Class Reference
Inheritance diagram for OstreamAppender:
Appender

List of all members.

Public Member Functions

 OstreamAppender (std::string name)
virtual bool configureLayout ()
 Optionally create a layout according to layoutName and layoutPattern.
virtual bool startHook ()
 ensure port is connected before we start
virtual void stopHook ()
 Drain the buffer.
virtual void drainBuffer ()
 Process all remaining events in buffer.

Protected Member Functions

virtual bool configureHook ()
 Create log4cpp appender.
virtual void updateHook ()
 Process at most one (1) event.
virtual void cleanupHook ()
 Destroy appender.
virtual void processEvents (int n)
 Process up n events.

Protected Attributes

RTT::Property< int > maxEventsPerCycle_prop
 Property to set maximum number of log events to pop per cycle.
int maxEventsPerCycle
 Maximum number of log events to pop per cycle.
RTT::InputPort
< OCL::logging::LoggingEvent
log_port
 Port we receive logging events on Initially unconnected.
log4cpp::Appender * appender
 Appender created by derived class.
RTT::Property< std::string > layoutName_prop
 Layout name (e.g. "simple", "basic", "pattern")
RTT::Property< std::string > layoutPattern_prop
 Layout conversion pattern (for those layouts that use a pattern)
unsigned int countMaxPopped

Detailed Description

Definition at line 10 of file OstreamAppender.hpp.


Member Function Documentation

bool configureLayout ( ) [virtual, inherited]

Optionally create a layout according to layoutName and layoutPattern.

Precondition:
!appender, if you want a layout to actually be created
Returns:
true if not layout or no appender or a layout was created successfully, otherwise false
Todo:
ensure "" != layoutPattern?

Definition at line 29 of file Appender.cpp.

void processEvents ( int  n) [protected, virtual, inherited]

Process up n events.

Parameters:
nif 0 ==n then process events until buffer is empty, otherwise process at most n events
Precondition:
0 <= n (otherwise acts as though n==1)

Definition at line 104 of file Appender.cpp.

References LoggingEvent::toLog4cpp().

bool startHook ( ) [virtual, inherited]

ensure port is connected before we start

Todo:
input ports must be connected?

Definition at line 69 of file Appender.cpp.


Member Data Documentation

RTT::InputPort<OCL::logging::LoggingEvent> log_port [protected, inherited]

Port we receive logging events on Initially unconnected.

The logging service connects appenders.

Definition at line 47 of file Appender.hpp.

int maxEventsPerCycle [protected]

Maximum number of log events to pop per cycle.

Defaults to 1.

A value of 0 indicates to not limit the number of events per cycle. With enough event production, this could lead to thread starvation!

Definition at line 38 of file OstreamAppender.hpp.


The documentation for this class was generated from the following files: