9 #ifndef messageState_H_
10 #define messageState_H_
15 #include <vlutil/vlMachineTypes.h>
16 #include <vlutil/vlNetTypes.h>
23 class DtMessageBuffer;
26 class DtMessageIOInfo;
28 class DtLgrSimManager;
42 ProcessFirstCheckpoint
68 virtual void startDiff();
75 virtual void endDiff();
97 virtual void updateState(
DtPacket* packet);
100 virtual void postUpdate();
136 virtual void activate();
139 virtual void deactivate();
145 virtual const DtStateObject* findObject(DtU64 uniqueId)
const;
151 virtual DtStateObject* findObjectByName(
const DtString& name);
152 virtual const DtStateObject* findObjectByName(
const DtString& name)
const;
157 virtual void setLinkCheckpoints(
bool enableLinking);
158 virtual bool linkCheckpointsEnabled()
const;
174 virtual void decodeLinkedCheckpoint(
const DtPacket& packet,
DtMessageBuffer& buffer,
bool includeInteractions) = 0;
182 virtual const std::list<DtStateObject*>& stateObjectList()
const;
199 virtual void clearState();
208 virtual void setInteractionsCollectedForCheckpoints(
bool enable);
211 virtual bool interactionsCollectedForCheckpoints()
const;
214 virtual void setInteractionsCollectedFromCheckpoints(
bool enable);
217 virtual bool interactionsCollectedFromCheckpoints()
const;
230 virtual void modifyMessage(
DtPacket& packet)
const = 0;
234 virtual bool isCheckpointMessage(
const DtPacket& packet)
const;
237 virtual bool isUpdateMessage(
const DtPacket& packet)
const = 0;
240 virtual bool isRemovalMessage(
const DtPacket& packet)
const = 0;
243 virtual bool isInteractionMessage(
const DtPacket& packet)
const = 0;
274 virtual void activateState() = 0;
277 virtual void deactivateState() = 0;
285 virtual bool updateStateObjects(
const DtPacket& packet);
312 virtual bool removeStateObject(
const DtPacket& packet);