lestes::msg::conjunct_formatter Class Reference

Combines sequentially two formatters. More...

#include <logger_formatters.hh>

Inheritance diagram for lestes::msg::conjunct_formatter:

lestes::msg::logger_formatter lestes::std::object lestes::std::mem::keystone List of all members.

Public Member Functions

virtual ::std::ostream & format (const ptr< logger > &,::std::ostream &)
virtual void format_end (const ptr< logger > &,::std::ostream &)

Static Public Member Functions

static ptr< conjunct_formattercreate (const ptr< logger_formatter > &, const ptr< logger_formatter > &)

Protected Member Functions

 conjunct_formatter (const ptr< logger_formatter > &, const ptr< logger_formatter > &)
virtual void gc_mark ()
 Marks the keystone.

Private Attributes

srp< logger_formatterfirst
srp< logger_formattersecond

Detailed Description

Combines sequentially two formatters.

Author:
TMA

Definition at line 96 of file logger_formatters.hh.


Constructor & Destructor Documentation

lestes::msg::conjunct_formatter::conjunct_formatter ( const ptr< logger_formatter > &  ,
const ptr< logger_formatter > &   
) [protected]

Definition at line 133 of file logger_formatters.cc.

Referenced by create().

00134         : first(checked(f)), second(checked(s))
00135 { }


Member Function Documentation

ptr< conjunct_formatter > lestes::msg::conjunct_formatter::create ( const ptr< logger_formatter > &  ,
const ptr< logger_formatter > &   
) [static]

Definition at line 137 of file logger_formatters.cc.

References conjunct_formatter().

Referenced by lestes::msg::formatter_factory::create_formatter().

00138 {
00139         return new conjunct_formatter(f, s);
00140 }

std::ostream & lestes::msg::conjunct_formatter::format ( const ptr< logger > &  ,
::std::ostream &   
) [virtual]

Implements lestes::msg::logger_formatter.

Definition at line 149 of file logger_formatters.cc.

References first, and second.

00150 {
00151         return second->format(l,first->format(l, os));
00152 }

void lestes::msg::conjunct_formatter::format_end ( const ptr< logger > &  ,
::std::ostream &   
) [virtual]

Implements lestes::msg::logger_formatter.

Definition at line 153 of file logger_formatters.cc.

References first, and second.

00154 {
00155         second->format_end(l,os);
00156         first->format_end(l,os);
00157 }

void lestes::msg::conjunct_formatter::gc_mark ( void   )  [protected, virtual]

Marks the keystone.

Marks all directly reachable parts of the class. The method must be overriden for each inherited class. It should contain abc.gc_mark() for each field abc of the inherited class and call to gc_mark() of the direct ancestor of the class. Does nothing for keystone, only stops processing of ancestors.

Reimplemented from lestes::std::mem::keystone.

Definition at line 142 of file logger_formatters.cc.

References first, lestes::std::mem::keystone::gc_mark(), and second.

00143 {
00144         first.gc_mark();
00145         second.gc_mark();
00146         logger_formatter::gc_mark();
00147 }


Member Data Documentation

srp< logger_formatter > lestes::msg::conjunct_formatter::first [private]

Definition at line 105 of file logger_formatters.hh.

Referenced by format(), format_end(), and gc_mark().

srp< logger_formatter > lestes::msg::conjunct_formatter::second [private]

Definition at line 106 of file logger_formatters.hh.

Referenced by format(), format_end(), and gc_mark().


The documentation for this class was generated from the following files:
Generated on Mon Feb 12 18:25:54 2007 for lestes by doxygen 1.5.1-20070107