10 #ifndef lgrCheckpointPolicy_H_
11 #define lgrCheckpointPolicy_H_
22 class DtLgrFileOutput;
56 virtual bool timeForCheckpoint()
const = 0;
59 virtual void reset() = 0;
62 virtual void checkpointWritten() = 0;
66 virtual void packetWritten(
const DtPacket&) = 0;
72 virtual bool interactionsCheckpointed()
const;
75 virtual void setInteractionsCheckpointed(
bool enable);
79 void onPacketWritten(
const DtPacket&);
116 virtual bool timeForCheckpoint()
const;
119 virtual void reset();
122 virtual size_t sizeBetweenCheckpoints()
const;
125 virtual void checkpointWritten();
128 virtual void packetWritten(
const DtPacket&);
155 virtual bool timeForCheckpoint()
const;
158 virtual void reset();
161 virtual void checkpointWritten();
164 virtual void packetWritten(
const DtPacket&);
189 virtual bool timeForCheckpoint()
const;
192 virtual void reset();
195 virtual void checkpointWritten();
198 virtual void packetWritten(
const DtPacket&);
#define DT_PURE_VIRTUAL_CTR(CLASS_NAME, ARG_TYPES_LIST)
Declare a pure virtual constructor.
Definition: virtualConstructor.h:138
PacketObserverFunctor myPacketWrittenObserver
Definition: lgrCheckpointPolicy.h:84
size_t myCheckpointSize
The size in bytes between checkpoints.
Definition: lgrCheckpointPolicy.h:133
Checkpoint policy which checkpoints are set by size.
Definition: lgrCheckpointPolicy.h:95
#define DT_VIRTUAL_BASE_CTR(BASE_NAME, ARG_TYPES_LIST)
Declare a Virtual Base Constructor Create using DT_VIRTUAL_CTR(CLASS_NAME,ARG_TYPES_LIST) Where BASE_...
Definition: virtualConstructor.h:118
size_t myCurrentDataSize
The current number of bytes written since last checkpoint.
Definition: lgrCheckpointPolicy.h:136
#define DT_VIRTUAL_CTR(CLASS_NAME, ARG_TYPES_LIST)
Declare a Virtual Constructor Create using DT_VIRTUAL_CTR(CLASS_NAME,ARG_TYPES_LIST) Where CLASS_NAME...
Definition: virtualConstructor.h:34
DtAbsoluteTime myLastCheckpointTime
Definition: lgrCheckpointPolicy.h:206
DtLgrFileOutput * myLgrFileOutput
Definition: lgrCheckpointPolicy.h:89
Contains MAKLogger::DtFilePosition typedef.
Relative Time, an elapsed duration of time, no implied measurement, could be seconds/cycles or ticks ...
Definition: absoluteTime.h:28
int myCheckpointCount
checkpoints between
Definition: lgrCheckpointPolicy.h:168
Contains DT_VIRTUAL_CTR DT_VIRTUAL_CTR_DEFAULTS DT_VIRTUAL_COPY_ASSIGN DT_VIRTUAL_BASE_CTR DT_PURE_VI...
bool myCheckpointInteractions
Definition: lgrCheckpointPolicy.h:90
DtAbsoluteTime myLastPacketTime
The time of the last checkpoint.
Definition: lgrCheckpointPolicy.h:208
DtMessageState * myMessageState
Definition: lgrCheckpointPolicy.h:88
Contains MAKLogger::DtObserver and MAKLogger::DtObserverCallback and MAKLogger::DtObserverFunctor cla...
Checkpoint policy which checkpoints are set by time.
Definition: lgrCheckpointPolicy.h:176
Checkpoint policy class responsible.
Definition: lgrCheckpointPolicy.h:28
int myCurrentPacketsCount
The number of packets written since last checkpoint.
Definition: lgrCheckpointPolicy.h:171
Contains MAKLogger::DtAbsoluteTime and MAKLogger::DtRelativeTime classes.
A generic packed of typed binary data.
Definition: packet.h:41
Checkpoint policy which checkpoints are set by count.
Definition: lgrCheckpointPolicy.h:141
#define DT_DLL_LGRCORE
Definition: lgrCore.h:19
Definition: lgrCheckpointPolicy.h:39
DtRelativeTime myCheckpointTime
The time duration between checkpoints.
Definition: lgrCheckpointPolicy.h:204
The Abstract message state maintained by the logger.
Definition: messageState.h:33
Policy
Definition: lgrCheckpointPolicy.h:37
Class responsible for message Output to a file.
Definition: lgrFileOutput.h:25
DtObserverFunctor< DtCheckpointPolicy, DtPacket > PacketObserverFunctor
Type of the functor connecting the checkpoint policy to the output.
Definition: lgrCheckpointPolicy.h:82
Absolute Time, a particular measured instance in time, could be thought of as a set of relative times...
Definition: absoluteTime.h:82
Definition: lgrCheckpointPolicy.h:40
Contains lgrCore library definitions.