18 #include <vlpi/simulationAddress.h>
22 #include <boost/unordered_map.hpp>
41 typedef std::vector<std::string*>
OOB;
71 virtual void setSimTime(
double);
74 virtual void enablePeriodicSnapshots(
bool flag);
75 virtual bool periodicSnapshotsEnabled()
const;
78 virtual void setSnapshotPeriod(
double period);
79 virtual double snapshotPeriod()
const;
82 virtual void setNumberOfSnapshotsToKeep(
int);
83 virtual int numberOfSnapshotsToKeep()
const;
87 virtual void setPauseCleanup(
bool);
90 virtual void clear(
bool allButBase =
false);
98 virtual DtInMemorySnapshot* takeSnapshot(
bool isPeriodic =
false,
bool makeBase =
false);
102 virtual void rollbackToSimTime(
double simTime);
108 virtual void clearOutStaleSnapshots();
114 virtual void setSnapshotHeartbeatTime(
double d);
115 virtual double snapshotHeartbeatTime()
const;
118 virtual void sendCurrentSnapshots();
123 const DtScenario& currentScenario,
const DtSimulationAddress& requestor);
129 virtual void removeSnapshotsAfter(
double simTime);
132 virtual bool hasSnapshots()
const;
135 virtual void clearAllSnapshots();
139 static void clearAllSnapshotsCallback(
DtSimMessage*,
void*);
141 static void settingConsumerCallback(
152 virtual void finishSavingSnapshots();
170 virtual bool writeAndSendOrderOfBattleFile();
171 virtual bool writeAndSendPlanFile();
172 virtual bool writeAndSendScenarioExtrasFile();
173 virtual bool writeAndSendScenarioScriptsFile();
174 virtual bool writeAndSendOrbatFile();
DtScenario myScenarioInformation
Definition: snapshotManager.h:47
std::string myOrbat
Definition: snapshotManager.h:46
DtVrfCallbackQueue * myFileWriterJobQueue
Definition: snapshotManager.h:200
double mySnapshotHeartbeatTime
Definition: snapshotManager.h:182
std::string myPlans
Definition: snapshotManager.h:43
Structure holds a complete single-backend snapshot state in memory.
Definition: snapshotManager.h:31
Definition: scenario.h:52
int myNextSnapshotId
Definition: snapshotManager.h:185
double mySnapshotPeriod
Definition: snapshotManager.h:180
class DtIfSaveScenario:
Definition: ifSaveScenario.h:23
double myLastSnapshotHeartbeat
Definition: snapshotManager.h:181
Snapshots mySnapshots
Definition: snapshotManager.h:188
#define DT_DEFINE_OBJECT_DEBUGGER_NAME(type)
Definition: objectCounter.h:265
Default on in debug, off in release.
Definition: objectCounter.h:31
bool mySuccess
Definition: snapshotManager.h:167
Simple asynchronous callback queue.
Definition: vrfCallbackQueue.h:32
OOB myOob
Definition: snapshotManager.h:42
Definition: settingsObject.h:27
int myNumberOfSnapshotsToKeep
Definition: snapshotManager.h:184
int myId
Definition: snapshotManager.h:37
bool mySnapshotsModified
Definition: snapshotManager.h:191
double myLastTimePeriodicSnapshoted
Definition: snapshotManager.h:183
std::vector< std::string * > OOB
Definition: snapshotManager.h:41
DtIfSnapshotsResponse myCurrentSnapshots
Definition: snapshotManager.h:193
API for writing callbacks.
Definition: vrfCallbackQueue.h:55
bool myPauseCleanup
Definition: snapshotManager.h:195
std::string myScenarioExtras
Definition: snapshotManager.h:44
DtInMemorySnapshot * mySnapshot
Definition: snapshotManager.h:165
DtCompressedFileTransporter & myTransporter
Definition: snapshotManager.h:166
class DtIfSnapshotsResponse:
Definition: ifSnapshotsResponse.h:25
std::string myScenarioScripts
Definition: snapshotManager.h:45
File: simMsg.h.
Definition: simMessage.h:35
Definition: snapshotManager.h:155
SavingSnapshots myCheckpointing
Definition: snapshotManager.h:198
Definition: compressedFileTransporter.h:24
std::map< int, DtInMemorySnapshot * > Snapshots
Definition: snapshotManager.h:187
DtCgf * myCgf
Definition: snapshotManager.h:178
std::map< int, DtVrfCallbackQueue::CallbackInterface::Ptr > SavingSnapshots
Definition: snapshotManager.h:197
double mySimTime
Definition: snapshotManager.h:38
DtInMemorySnapshot()
Definition: snapshotManager.h:33
bool pauseCleanup() const
Definition: snapshotManager.h:88
int myNumberOfLuaScripts
Definition: snapshotManager.h:48
DtIfSaveScenario mySaveMessage
Definition: snapshotManager.h:164
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
DtSimulationAddress myRequestor
Definition: snapshotManager.h:163
bool myIsPeriodic
Definition: snapshotManager.h:39
Definition: snapshotManager.h:53
bool myPeriodicSnapshotsEnabled
Definition: snapshotManager.h:179
virtual ~DtInMemorySnapshot()
An instance of DtCgf is an object representing a CGF (Computer Generated Forces). ...
Definition: cgf.h:115
#define DT_DLL_vrfcgf
This file is used to determine how to build.
Definition: vrfcgfDefines.h:25
Snapshots myPeriodicSnapshots
Definition: snapshotManager.h:189
Periodic snapshot settings are used to keep track of whether or not periodic snapshots are enabled an...
Definition: periodicSnapshotSettings.h:28