MAK Data Logger API Documentation for DIS
List of all members | Public Types | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Private Member Functions
MAKLogger::DtCheckpointPolicy Class Reference

Checkpoint policy class responsible. More...

+ Inheritance diagram for MAKLogger::DtCheckpointPolicy:
+ Collaboration diagram for MAKLogger::DtCheckpointPolicy:

Public Types

enum  Policy { ByCount, BySize, ByTime }

Public Member Functions

virtual ~DtCheckpointPolicy ()
 DTOR.
virtual bool timeForCheckpoint () const =0
 Function called to check to see if it is time to create a checkpoint, called after every packet is written.
virtual void reset ()=0
 Function called if the checkpoint mechanism should be reset.
virtual void checkpointWritten ()=0
 Function called after a checkpoint has been written.
virtual void packetWritten (const DtPacket &)=0
 Function called after every packet written.
virtual void connectFileOutput (DtMessageState *, DtLgrFileOutput *)
 Set the file output object. Called if the FileOuput changes.

Protected Types

typedef DtObserverFunctor
< DtCheckpointPolicy, DtPacket
PacketObserverFunctor
 Type of the functor connecting the checkpoint policy to the output.

Protected Member Functions

void onPacketWritten (const DtPacket &)

Protected Attributes

PacketObserverFunctor myPacketWrittenObserver
DtMessageStatemyMessageState
DtLgrFileOutputmyLgrFileOutput

Private Member Functions

 DtCheckpointPolicy (const DtCheckpointPolicy &)
 Not Implemented.
DtCheckpointPolicyoperator= (const DtCheckpointPolicy &)
 Not Implemented.

Detailed Description

Checkpoint policy class responsible.

Member Typedef Documentation

Type of the functor connecting the checkpoint policy to the output.

Member Enumeration Documentation

Enumerator:
ByCount 
BySize 
ByTime 

Constructor & Destructor Documentation

virtual MAKLogger::DtCheckpointPolicy::~DtCheckpointPolicy ( )
virtual

DTOR.

MAKLogger::DtCheckpointPolicy::DtCheckpointPolicy ( const DtCheckpointPolicy )
private

Not Implemented.

Member Function Documentation

virtual void MAKLogger::DtCheckpointPolicy::checkpointWritten ( )
pure virtual

Function called after a checkpoint has been written.

Implemented in MAKLogger::DtCheckpointByTime, MAKLogger::DtCheckpointByCount, and MAKLogger::DtCheckpointBySize.

virtual void MAKLogger::DtCheckpointPolicy::connectFileOutput ( DtMessageState ,
DtLgrFileOutput  
)
virtual

Set the file output object. Called if the FileOuput changes.

void MAKLogger::DtCheckpointPolicy::onPacketWritten ( const DtPacket )
protected
DtCheckpointPolicy& MAKLogger::DtCheckpointPolicy::operator= ( const DtCheckpointPolicy )
private

Not Implemented.

virtual void MAKLogger::DtCheckpointPolicy::packetWritten ( const DtPacket )
pure virtual

Function called after every packet written.

This should be a fast function.

Implemented in MAKLogger::DtCheckpointByTime, MAKLogger::DtCheckpointByCount, and MAKLogger::DtCheckpointBySize.

virtual void MAKLogger::DtCheckpointPolicy::reset ( )
pure virtual

Function called if the checkpoint mechanism should be reset.

Implemented in MAKLogger::DtCheckpointByTime, MAKLogger::DtCheckpointByCount, and MAKLogger::DtCheckpointBySize.

virtual bool MAKLogger::DtCheckpointPolicy::timeForCheckpoint ( ) const
pure virtual

Function called to check to see if it is time to create a checkpoint, called after every packet is written.

Return values
trueTime for checkpoint.
falseNot time for checkpoint.

Implemented in MAKLogger::DtCheckpointByTime, MAKLogger::DtCheckpointByCount, and MAKLogger::DtCheckpointBySize.

Member Data Documentation

DtLgrFileOutput* MAKLogger::DtCheckpointPolicy::myLgrFileOutput
protected
DtMessageState* MAKLogger::DtCheckpointPolicy::myMessageState
protected
PacketObserverFunctor MAKLogger::DtCheckpointPolicy::myPacketWrittenObserver
protected

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

Document ID: Generated on Thu Apr 10 18:53:01 EDT 2014 from SVN revision 138105
Copyright © 2005-2012 VT MÄK. All Rights Reserved (www.mak.com)