27 #include <vlpi/entityType.h>
28 #include <matrix/vlVector.h>
33 #include <vl/commentInteraction.h>
52 #define DtCommentCallbackFcn DtCommentPduCb
54 #define DtCommentCallbackFcn DtCommentInteractionCb
59 class DtVrlinkElement;
64 class DtAggregateElement;
65 class DtEntityElement;
66 class DtEntitySimDataProcessor;
72 class DtNetworkMessageInterface;
73 class DtNetworkMessageInterfaceHandlerAgent;
77 class DtVrfBackendInterceptor;
78 class DtVrfConnectionHelper;
79 class DtVrfObjectDataStateProcessor;
80 class DtVrfWeatherStateProcessor;
81 class DtVrfEnvironmentObjectDataStateProcessor;
82 class DtEnvironmentSimDataProcessor;
83 class DtEmitterSystemSimDataProcessor;
84 class DtActiveSonarSimDataProcessor;
85 class DtVrfAggregateObjectDataStateProcessor;
86 class DtAggregateSimDataProcessor;
87 class DtVrfFogOfWarHandler;
88 class DtVrfEmbarkationProcessor;
89 class DtIffSimDataProcessor;
90 class DtPropulsionNoiseSimDataProcessor;
91 class DtWeatherStateCacheManager;
92 class DtVrfWeatherProcessor;
93 class DtSensorFieldOfViewSimDataProcessor;
104 virtual bool onStart();
111 virtual void sendLoggerSetFilename(std::string filename);
114 virtual void sendLoggerRecordMessage();
117 virtual void sendLoggerStopMessage();
121 virtual void newScenario(
const DtScenario*, time_t startTimeOfDay = 12 * 3600);
129 bool queueSave =
false,
int putIntoPlayMode = 0,
bool deleteMemory =
false);
133 virtual void saveCheckpoints(
const std::vector<DtScenario*>&,
const DtFilename& baseName);
136 virtual void saveNextCheckpoint();
139 virtual void clearSavingCheckpoints();
142 virtual void closeScenario(DtFilename,
bool forceCloseAll =
false);
145 virtual void createEnvironmentalObject(DtSimulationAddress addr,
149 virtual void getMessageFilterStatus(std::map<std::string,bool>& statusMap)
const;
152 virtual void setMessageFilterStatus(
const std::map<std::string,bool>& statusMap);
155 virtual void getMessageProcessorStatus(std::map<std::string,bool>& statusMap)
const;
158 virtual void setMessageProcessorStatus(
const std::map<std::string,bool>& statusMap);
162 virtual void registerSimMessageCallbackFor(
int t,
bool reg);
170 virtual void registerSetMessageCallbackFor(
const DtSetMessageType& s,
bool reg);
177 virtual void setTimeoutInterval(
int i);
180 virtual void sendMessageToObject(
const DtVrfObjectMessage* m, DtSimulationAddress addr);
219 virtual void startFreezeScenario(DtSimulationAddress,
bool sendStart);
231 virtual void importScenarioDescriptionFile(std::string file, DtSimulationAddress address, std::string format,
232 std::map<std::string, std::string> importData);
235 virtual void exportScenarioDescriptionFile(std::string file, DtSimulationAddress address, std::string format,
236 std::map<std::string, std::string> importData);
246 return myVrfObjectDataStateDataProcessor;
252 return myDataProcessor;
257 return myEmitterSystemDataProcessor;
262 return myWeatherDataProcessor;
267 return myActiveSonarDataProcessor;
272 return myEnvironmentDataProcessor;
277 return myAggregateDataProcessor;
282 return myExtendedStateDataProcessor;
285 DtSensorFieldOfViewSimDataProcessor* sensorFieldOfViewDataProcessor()
287 return mySensorFieldOfViewDataProcessor;
290 void setUseThreadFlag(
bool b)
295 bool connected()
const
300 virtual bool onStop();
302 virtual bool onTick();
327 const std::string& nonVrfObjectsUseUUIDScheme()
const;
330 virtual void onSetupExerciseConnection();
331 virtual void onCleanupExerciseConnection();
333 virtual void connectionConnected();
338 virtual void setupEntityData();
339 virtual void setupAggregateData();
340 virtual void setupEnvironmentalData();
343 static void simMessageCallback(
DtSimMessage* msg,
void* usr);
351 virtual void elementAttributeChangeRequested(
359 virtual void symbolDecorationsChanged();
363 static void scenarioCheckpointed(
DtSaveResult result,
double,
void*);
364 virtual void processScenarioCheckpointed(
DtSaveResult result,
double);
423 typedef std::map<double,