14 #include <vlutil/vlMachineTypes.h>
15 #include <vlutil/vlNetTypes.h>
22 class DtMessageBuffer;
25 class DtMessageIOInfo;
27 class DtLgrSimManager;
41 ProcessFirstCheckpoint
77 virtual void startDiff();
84 virtual void endDiff();
87 virtual bool isDiffInProgress()
const;
109 virtual void updateState(
DtPacket* packet);
112 virtual void postUpdate();
151 virtual void activate();
154 virtual void deactivate();
160 virtual const DtStateObject* findObject(DtU64 uniqueId)
const;
164 virtual DtStateObject* findObjectByName(
const DtString& name);
167 virtual const DtStateObject* findObjectByName(
const DtString& name)
const;
171 virtual void setLinkCheckpoints(
bool enableLinking);
173 virtual bool linkCheckpointsEnabled()
const;
190 bool includeInteractions) = 0;
194 bool includeInteractions) = 0;
207 bool includeInteractions);
212 virtual const std::list<DtStateObject*>& stateObjectList()
const;
229 virtual void clearState();
238 virtual void setInteractionsCollectedForCheckpoints(
bool enable);
241 virtual bool interactionsCollectedForCheckpoints()
const;
244 virtual void setInteractionsCollectedFromCheckpoints(
bool enable);
247 virtual bool interactionsCollectedFromCheckpoints()
const;
260 virtual void modifyMessage(
DtPacket& packet)
const = 0;
264 virtual bool isInitialStateMessage(
const DtPacket& packet)
const;
268 virtual bool isCheckpointMessage(
const DtPacket& packet)
const;
271 virtual bool isUpdateMessage(
const DtPacket& packet)
const = 0;
274 virtual bool isRemovalMessage(
const DtPacket& packet)
const = 0;
277 virtual bool isInteractionMessage(
const DtPacket& packet)
const = 0;
308 virtual void activateState() = 0;
311 virtual void deactivateState() = 0;
330 virtual bool updateStateObjects(
const DtPacket& packet);
357 virtual bool removeStateObject(
const DtPacket& packet);
368 virtual void clearInteractionList(
DtPacketList& interactionList);
DtStateObjectList myObjects
List of state objects.
Definition: messageState.h:373
std::map< DtString, DtStateObject * > DtStateObjectNameMap
Type for lookup objects by name.
Definition: messageState.h:296
DtStateObjectList mySnapshotOfObjects
List of objects used when diffing two different states.
Definition: messageState.h:385
CheckpointProcessing
Definition: messageState.h:37
DtStateObjectNameMap myObjectLookupNameMap
Map to lookup state objects.
Definition: messageState.h:382
const DtLgrSimManager * mySimMgr
The simulation manager.
Definition: messageState.h:388
bool myStateChanged
Definition: messageState.h:405
std::list< DtPacket * > DtPacketList
Type for the queue of interactions.
Definition: messageState.h:67
DtObserveEvent< DtMessageState > myStateActivatedEvent
Events called on certain actions of the messageState.
Definition: messageState.h:395
CheckpointProcessing myCheckpointProcessing
Definition: messageState.h:403
DtObserveEvent< DtStateObject > myObjectUpdatedEvent
Events called on certain actions of the messageState.
Definition: messageState.h:400
A generic object that has state.
Definition: stateObject.h:27
Necessary Predefinitions.
Definition: observeConnection.h:23
DtStateObjectMap myObjectLookupMap
Map to lookup state objects.
Definition: messageState.h:379
Message buffer class responsible for storing a list of messages and iterating through that list...
Definition: messageBuffer.h:23
bool myCollectInteractionsFromCheckpoint
Definition: messageState.h:409
DtObserveEvent< DtMessageState > myStateDeactivetedEvent
Events called on certain actions of the messageState.
Definition: messageState.h:396
Definition: messageState.h:46
Definition: messageState.h:40
bool myUseDiffTimeForStateObjects
Definition: messageState.h:408
Definition: messageState.h:39
Implements a protocol independent Simulation manager.
Definition: lgrSimManager.h:40
DtObserveEvent< DtMessageState > myStateModifiedEvent
Events called on certain actions of the messageState.
Definition: messageState.h:394
DtPacketList myInteractions
List of interactions received since last flush.
Definition: messageState.h:376
A message IO info object stores information about a specific message input or output stage...
Definition: messageIoInfo.h:21
A generic packed of typed binary data.
Definition: packet.h:41
DtObserveEvent< DtStateObject > myObjectToBeRemovedEvent
Events called on certain actions of the messageState.
Definition: messageState.h:399
Definition: messageState.h:47
#define DT_DLL_LGRCORE
Definition: lgrCore.h:19
bool myLinkCheckpoints
Definition: messageState.h:407
InteractionProcessing
Definition: messageState.h:44
class DT_DLL_LGRUTIL DtAbsoluteTime
Definition: absoluteTime.h:22
bool myDiffInProgress
Definition: messageState.h:410
DtObserveEvent< DtMessageState > myOutputChangedEvent
Events called on certain actions of the messageState.
Definition: messageState.h:393
The Abstract message state maintained by the logger.
Definition: messageState.h:33
DtObserveEvent< DtStateObject > myObjectAddedEvent
Events called on certain actions of the messageState.
Definition: messageState.h:398
Contains MAKLogger::DtObserveEvent class.
bool myCheckpointInteractions
Definition: messageState.h:406
std::list< DtStateObject * > DtStateObjectList
Type for the list of objects.
Definition: messageState.h:290
std::map< DtU64, DtStateObject * > DtStateObjectMap
Type for lookup objects by unique id.
Definition: messageState.h:293
DtObserveEvent< DtMessageState > myEndDiffEvent
Events called on certain actions of the messageState.
Definition: messageState.h:397
Absolute Time, a particular measured instance in time, could be thought of as a set of relative times...
Definition: absoluteTime.h:82
Contains lgrCore library definitions.