VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfRemoteController.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2014 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
11 
12 #pragma once
13 
17 #include "vrfmsgs/ifSaveComplete.h"
20 #include "vrfutil/scenario.h"
21 #include "vrfutil/rwUUID.h"
22 #include "vrftasks/simTask.h"
23 #include "vrfplan/plan.h"
39 
41 #include <vl/commentInteraction.h>
42 #include <vl/exerciseConn.h>
43 #include <vl/hostStructs.h>
44 #include <vlpi/disEnums.h>
45 #include <vlpi/appearance.h>
46 #include <vlutil/vlHashlist.h>
47 
49 #include <list>
50 
51 class DtAdminContent;
52 class DtBackendMap;
53 class DtAddressMap;
59 class DtIfLoadScenario;
60 class DtIfPlan;
66 class DtSettingsObject;
72 class DtEventManager;
73 class DtEvent;
74 
75 namespace makVrfVrlinkExtToolkit
76 {
77  class DtReflectedExtendedAttributesObjectList;
78 }
79 
80 typedef void (*DtScenarioCallbackFcn)(void* usr);
81 typedef void (*DtScenarioAboutToBeSavedCallbackFcn)(DtScenario&, void* usr);
83 
85 typedef bool (*DtBackendRemappingFcn)(DtBackendMap* map, const std::set<DtSimulationAddress>& expectedBackends, void* usr);
88 typedef bool (*DtPreserveMappingsFcn)(void* usr);
89 
91 
92 typedef void (*DtBackendSaveCallbackFcn)
93  (const DtSimulationAddress& addr, DtSaveResult result, void * usr);
94 
95 typedef void (*DtScenarioSavedCallbackFcn)
96  (DtSaveResult result, const DtString& sError, void* usr);
97 
98 typedef void (*DtCheckpointSavedCallbackFcn)
99  (DtSaveResult result, double, void* usr);
100 
101 typedef void (*DtVrfObjectCreatedCallbackFcn)
102  (const DtString& name, const DtEntityIdentifier& id, const DtUUID& uuid, void* usr);
103 
104 typedef void (*DtOverlayCreatedCallbackFcn)
105  (const DtString& name, const DtEntityIdentifier& id, const DtUUID& uuid, DtVrfOverlayObjectModify* usr);
106 
108  (const DtString& name, const DtEntityIdentifier& id,
109  const DtUUID& uuid, void* usr);
110 
111 typedef void (*DtObjectConsoleMessageCallbackFcn)
112  (const DtEntityIdentifier& id, int notifyLevel, const DtString& message,
113  void* usr);
114 
116  (const DtSimulationAddress& id, int notifyLevel, const DtString& message,
117  void* usr);
118 
123  (const DtIfServerRequestResponse& response, void* usr);
124 
127 {
128 public:
129  PlanCbInfo(const DtUUID& n, bool global, DtPlanCallbackFcn f, void* usr) :
130  planName(n), isGlobal(global), fcn(f), data(usr) {}
132  bool operator==(const PlanCbInfo& orig) const
133  {
134  return (planName == orig.planName && fcn == orig.fcn && data == orig.data
135  && isGlobal == orig.isGlobal);
136  }
137 
139  bool isGlobal;
141  void* data;
142 };
143 
146 {
147 public:
148  StmtCbInfo(const DtUUID& n, bool global,
149  DtPlanStatementCallbackFcn f, void* usr) :
150  planName(n), isGlobal(global) , fcn(f), data(usr) {}
152  bool operator==(const StmtCbInfo& orig) const
153  {
154  return (planName == orig.planName && fcn == orig.fcn && data == orig.data &&
155  isGlobal == orig.isGlobal);
156  }
157 
160  bool isGlobal;
161  void* data;
162 };
163 
166 {
167 public:
168  PlanCompleteCbInfo(const DtUUID& n, bool global,
169  DtPlanCompleteCallbackFcn f, void* usr) :
170  planName(n), isGlobal(global), fcn(f), data(usr) {}
172  bool operator==(const PlanCompleteCbInfo& orig) const
173  {
174  return (planName == orig.planName && fcn == orig.fcn && data == orig.data && isGlobal == orig.isGlobal);
175  }
176 
179  bool isGlobal;
180  void* data;
181 };
182 
183 
204 {
205 public:
207  AttachNone=0,
209  AttachEven
210  };
211 
212 public:
213 
217 
223  DtVrfRemoteController(int receivePort = 9000);
224 
226  virtual ~DtVrfRemoteController();
227 
229  virtual DtVrfMessageInterface* vrfMessageInterface() const;
230 
232  virtual DtVrfTDLMessageInterface* vrfTDLMessageInterface() const;
233 
235  virtual DtUUIDNetworkManager* uuidNetworkManager() const;
236 
238  DtRemoteEnvironmentController* remoteEnvironmentController();
239 
241  virtual DtVrfConfigurationFileComposer* composer();
242 
244  virtual void setHostInetAddr(DtInetAddr);
245  virtual DtInetAddr hostInetAddr() const;
246 
248  virtual const DtSimulationAddress& simulationAddress() const;
249 
251  virtual int sessionId() const;
252 
256  virtual unsigned int generateRequestId() const;
257 
259 
260  //---------------------------------------------------------------
261 
265 
287  virtual void init(DtExerciseConn* exConn,
289  DtReflectedEntityList* reel = NULL,
290  DtReflectedAggregateList* ral = NULL,
291  const DtString& uuidMarkingForNonVrForces = "entity-identifier"
292 #if DtHLA
294 #endif
295  );
296 
297  virtual void init(DtEventManager* exConn,
299  DtReflectedEntityList* reel = NULL,
300  DtReflectedAggregateList* ral = NULL,
301  const DtString& uuidMarkingForNonVrForces = "entity-identifier"
302 #if DtHLA
304 #endif
305  );
306 
307  virtual void init(DtVrfMessageInterface* msgIf,
309  DtReflectedEntityList* reel = NULL,
310  DtReflectedAggregateList* ral = NULL,
311  const DtString& uuidMarkingForNonVrForces = "entity-identifier"
312 #if DtHLA
314 #endif
315  , DtVrfTDLMessageInterface* vrfTDLMsgIf = 0
316  );
317 
321  virtual void reinitialize(
323  DtReflectedEntityList* reel = NULL,
324  DtReflectedAggregateList* ral = NULL
325 #if DtHLA
327 #endif
328  );
329 
332  DtRemoteEnvironmentController* createRemoteEnvironmentController();
333 
335 
336 //-----------------------------------------------------------x
337 
341 
343  virtual const DtList& backends() const;
344 
347  virtual const DtList& pendingBackends() const;
348 
350  virtual DtVrfBackendListener* backendListener() const;
351 
353  virtual void addBackendDiscoveryCallback(
354  DtBackendCallbackFcn fcn, void* usr);
355  virtual void removeBackendDiscoveryCallback(
356  DtBackendCallbackFcn fcn, void* usr);
357 
359  virtual void addBackendRemovalCallback(
360  DtBackendCallbackFcn fcn, void* usr);
361  virtual void removeBackendRemovalCallback(
362  DtBackendCallbackFcn fcn, void* usr);
363 
367  virtual int backendsControlState() const;
368 
370  virtual int numberBackendsLoaded() const;
371 
374  virtual bool allBackendsReady() const;
375 
377  virtual bool backendLoaded(const DtSimulationAddress& addr) const;
378 
381  virtual void modifyBackEndSetting(const DtSettingsObject* setting,
382  const DtSimulationAddress& addr = DtSimSendToAll);
383 
394  virtual void requestBackEndSetting(std::string name,
396  const DtSimulationAddress& addr = DtSimSendToAll);
397 
400  virtual double simTime(const DtSimulationAddress* a = NULL) const;
401 
403 
404 //-----------------------------------------------------------
405 
408 
411  virtual void setSpotReportsGloballyEnabled(bool enabled);
412 
415  virtual void setTDLMessagesGloballyEnabled(bool enabled);
416 
419  virtual void setEngagementReportsGloballyEnabled(bool enabled);
420 
423  virtual void setPeriodicSnapshotSettings(bool enabled, double period, int numberOfSnapshotsToKeep);
424 
427  virtual void setDRThresholds(double translation, double rotation);
428 
430  virtual void setCommModelSettings(bool useExternalComms);
431 
433  virtual void setRoadDrivingSettings(bool driveOnLeft);
434 
436  virtual void setRadarCoverageAltitudeMSL(bool);
437 
439  virtual void setRadarCoverageAltitudeSettings(const DtRadarCoverageAltitudeSettings& settings);
440 
443  virtual void setAutomaticAggregationDisaggregationEnabled(bool enabled);
444 
449  virtual void setPublishAggregateFormationRoutes(bool yesNo);
450 
452  virtual void setRotationThreshold(DtReal thresh);
453 
455  virtual void setTranslationThreshold(DtReal thresh);
456 
461  virtual void setAggDimensionThreshold(DtReal thresh);
462 
465  virtual void querySpatialSubdivisionConfiguration(
466  const DtSimulationAddress& backendAddress,
467  DtSpatialSubdivisionType spatialSubdivisionType,
468  DtServerRequestResponseCallbackFcn fcn = 0, void* usr = 0);
469 
471  virtual void setSpatialSubdivsionConfiguration(
472  const DtSimulationAddress& backendAddress,
473  DtSpatialSubdivisionType spatialSubdivisionType,
474  const int spatialSubdivisionXResolution,
475  const int spatialSubdivisionYResolution,
476  const int spatialSubdivisionZResolution);
477 
483  virtual void processSpatialSubdivisionConfigurationCb(
484  const DtIfServerRequestResponse& rsp);
485 
487 
488  //------------------------------------------------------------
489 
494 
503  virtual bool newScenario(
504  const DtFilename& dbname,
505  const DtFilename& guidbname,
506  const DtFilename& opdname = DtFilename::nullFilename(),
507  const DtFilename& physicalWorldName = DtFilename::nullFilename(),
508  const DtScenario* baseScenario = 0,
509  time_t startTimeOfDay = 12 * 3600,
510  DtString* errorString = 0,
511  const DtChangeWeatherCommand& initialEnvironmentCondition = DtChangeWeatherCommand());
512 
514  virtual bool newScenario(
515  const DtFilename& dbname,
516  const DtFilename& guidbname,
517  const std::vector<DtString>& simulationModelSetFiles,
518  const DtScenario* baseScenario = 0,
519  time_t startTimeOfDay = 12 * 3600,
520  DtString* errorString = 0,
521  const DtChangeWeatherCommand& initialEnvironmentCondition = DtChangeWeatherCommand());
522 
528  virtual bool newScenario(
529  const DtFilename& dbname,
530  const DtFilename& guidbname,
531  const DtFilename& opdname,
532  const DtFilename& physicalWorldName,
533  const std::vector<DtString>& simulationModelSetFiles,
534  const DtScenario* baseScenario = 0,
535  time_t startTimeOfDay = 12 * 3600,
536  DtString* errorString = 0,
537  const DtChangeWeatherCommand& initialEnvironmentCondition = DtChangeWeatherCommand());
538 
544  virtual void createSimulationObjectGroup(const DtSimulationAddress&, const DtString& simulationObjectGroup,
545  const DtVector& createPosition, double offsetRotation, int createFlags, DtForceType force,
546  bool storedInZipFile = false);
547 
548 
550 
554 
580  virtual bool loadScenario(const DtFilename& filename,
581  DtBackendRemappingFcn fcn = 0, void* usrRemapping = 0,
582  DtLoadBalancingFcn = 0, void* usrBalancing = 0,
583  const std::vector<DtString>& simulationModelSetFiles = std::vector<DtString>(),
584  ComponentAttachmentRule compAttachRule = DtVrfRemoteController::AttachNone,
585  DtString* errorString = 0);
586  virtual bool loadScenario(const DtScenarioLoadInformation&,
587  const std::vector<DtString>& simulationModelSetFiles = std::vector<DtString>(),
588  DtString* errorString = 0);
589 
598  virtual bool loadScenario(const DtScenario& scenario,
599  DtBackendRemappingFcn fcn = 0, void* usrRemapping = 0,
600  DtLoadBalancingFcn = 0, void* usrBalancing = 0,
601  const std::vector<DtString>& simulationModelSetFiles = std::vector<DtString>(),
602  DtString* errorString = 0);
603 
621  virtual bool sendLoadScenarioMessage(
622  const DtScenario& scenario,
623  const DtSimulationAddress& addr = DtSimSendToAll,
624  bool import = false,
625  bool isOrbatEnabled = false,
626  bool createGlobalEnv = false,
627  bool createGlobalDynamicTerrain = false) const;
628 
631  virtual DtIfLoadScenario* createLoadScenarioMessage() const;
632 
635  virtual void addBackendLoadedCallback(DtBackendCallbackFcn fcn, void* usr);
636  virtual void removeBackendLoadedCallback(DtBackendCallbackFcn fcn, void* usr);
637 
640  virtual void addScenarioLoadedCallback(DtScenarioCallbackFcn fcn, void* usr);
641  virtual void removeScenarioLoadedCallback(DtScenarioCallbackFcn fcn, void* usr);
642 
643 
648  virtual bool rollbackToSnapshot(double simTime);
649 
652  virtual bool importScenario(const DtScenario&, const DtSimulationAddress& addr, DtString* errorString = 0);
653  virtual bool importScenario(const DtFilename&, const DtSimulationAddress& addr, DtString* errorString = 0);
654 
659  virtual bool importScenarioDescriptionFile(const DtFilename& file, DtSimulationAddress, const DtString& format,
660  const std::map<std::string, std::string>& importData);
661 
665  virtual void setMaxWaitLoadTime(DtTime t);
666  virtual DtTime maxWaitLoadTime() const;
667 
669 
674 
677  virtual bool exportScenarioDescriptionFile(const DtFilename& file, DtSimulationAddress, const DtString& format,
678  const std::map<std::string, std::string>& importData);
679 
683  virtual DtString guiTerrainDatabaseFilename() const;
684  virtual void setGuiTerrainDatabaseFilename(DtString db);
685 
687  virtual const DtRwKeyValueList& scenarioData() const;
688  virtual void setScenarioData(const DtRwKeyValueList&);
689 
691  virtual bool isSavingScenario() const;
692 
709  virtual bool saveScenario(const DtFilename& saveName,
710  DtPreserveMappingsFcn fcn = 0, void* userData = 0, DtString* error = 0, bool saveToZip = false,
711  bool deleteExistingZip = true, double simTime = -1);
712 
719  virtual bool save(DtString& sError);
720 
725  virtual bool saveScenarioCheckpoint(const DtFilename& filename, double simTime, bool saveToZip = false, DtString* saveError = 0);
726 
729  virtual void takeSnapshot(DtSimulationAddress addr = DtSimSendToAll);
730 
733  virtual void takeBaseSnapshot();
734 
736  virtual void createGlobalDynamicTerrain(bool);
737 
739  virtual void createGlobalEnvironment(bool);
740 
744  virtual void sendSaveScenarioMessage(const DtSimulationAddress& addr = DtSimSendToAll, double simTime = -1,
745  const DtFilename& saveScenarioFilename = "") const;
746 
749  virtual void addBackendSavedCallback(DtBackendSaveCallbackFcn fcn, void* usr);
750  virtual void removeBackendSavedCallback(DtBackendSaveCallbackFcn fcn, void* usr);
751 
755  virtual void addScenarioSavedCallback(
756  DtScenarioCallbackFcn fcn, void* usr);
757  virtual void removeScenarioSavedCallback(
758  DtScenarioCallbackFcn fcn, void* usr);
759 
761  virtual void addScenarioAboutToBeSavedCallback(
762  DtScenarioAboutToBeSavedCallbackFcn fcn, void* usr);
763  virtual void removeScenarioAboutToBeSavedCallback(
764  DtScenarioAboutToBeSavedCallbackFcn fcn, void* usr);
765 
767  virtual void addScenarioExportedCallback(
768  DtScenarioSavedCallbackFcn fcn, void* usr);
769  virtual void removeScenarioExportedCallback(
770  DtScenarioSavedCallbackFcn fcn, void* usr);
771 
773  virtual void addCheckpointSavedCallback(
774  DtCheckpointSavedCallbackFcn fcn, void* usr);
775  virtual void removeCheckpointSavedCallback(
776  DtCheckpointSavedCallbackFcn fcn, void* usr);
777 
781  virtual void addScenarioSavedCallback(
782  DtScenarioSavedCallbackFcn fcn, void* usr);
783  virtual void removeScenarioSavedCallback(
784  DtScenarioSavedCallbackFcn fcn, void* usr);
785 
793  virtual void setOpdSaveName(const DtFilename& f);
794  virtual const DtFilename& opdSaveName() const;
795 
799  virtual void setMaxWaitSaveTime(DtTime t);
800  virtual DtTime maxWaitSaveTime() const;
801 
805  virtual void setOverlayFilename(const DtFilename& overlay);
806  virtual const DtFilename& overlayFilename() const;
807 
808  virtual void setScenarioExtrasFilename(const DtFilename& extras);
809  virtual const DtFilename& scenarioExtrasFilename() const;
810 
814  virtual void setSelectionGroupsFilename(const DtFilename& sel);
815  virtual const DtFilename& selectionGroupsFilename() const;
816 
820  virtual void setSymbolMapFilename(const DtFilename& overlay);
821  virtual const DtFilename& symbolMapFilename() const;
822 
826  virtual void setCreateMenuFilename(const DtFilename& overlay);
827  virtual const DtFilename& createMenuFilename() const;
828 
830  virtual void saveParameterDb(const DtFilename& filename);
831 
839  virtual bool saveSimulationObjectGroup(const DtFilename& smsDirectory, const DtString& groupName,
840  const DtString& groupDescription, int creationFlags, const DtSimulationAddress& addr,
841  const std::map<DtString, DtString>& additionalInformation = std::map<DtString, DtString>(),
842  DtString* saveError = 0, bool saveAsZip = false);
843 
845 
850 
856  virtual void closeScenario(const DtSimulationAddress& addr = DtSimSendToAll,
857  const DtFilename& databaseToOpen = "", bool forceCloseAll = false);
858 
860  virtual void reinitializeScenario();
861 
863 
868 
872  virtual DtTime scenarioSimTimeForSave();
873 
877  virtual void setTerrainDatabaseFilename(DtScenario* scen);
878 
882  virtual void setParameterDatabaseFilename(DtScenario* scen);
883 
887  virtual void setPhysicalWorldFilename(DtScenario* scen);
888 
892  virtual void setTimeMultiplier(DtScenario* scen);
893 
897  virtual void setAutoReorganize(DtScenario* scen);
898 
902  virtual void setRandomNumberSeed(DtScenario* scen);
903 
907  virtual void setFrameRateMode(DtScenario* scen);
908 
912  virtual void setFrameDeltaTime(DtScenario* scen);
913 
917  virtual void setExerciseStartTime(DtScenario* scen);
918 
922  virtual void setExerciseStartDateAndTime(DtScenario* scen);
923 
925  {
926  return myEventManager;
927  }
928 
930 
935 
938  virtual void run(bool useStartStopInteraction = false, const DtSimulationAddress& addr = DtSimSendToAll) const;
939  virtual void pause(bool useStartStopInteraction = false, const DtSimulationAddress& addr = DtSimSendToAll) const;
940 
942  virtual void rewind();
943 
944  virtual void exit(const DtSimulationAddress& addr = DtSimSendToAll) const;
945  virtual void step() const;
946  virtual void setTimeMultiplier(double multiplier) const;
947 
948 
950 
951  //-------------------------------------------------------
952 
959 
963  virtual void loadedScenario(
964  const DtSimulationAddress& addr, unsigned int requestId, const DtU32& capabilities);
965 
967  virtual DtReflectedEnvironmentProcessList* reflectedEnvironmentProcessList();
968 
975  virtual void initializeGlobalEnvironment(
976  const DtSimulationAddress& environmentSimBackend = DtSimSendToAll);
977 
983  virtual void initializeGlobalDynamicTerrain(
984  const DtSimulationAddress& environmentSimBackend = DtSimSendToAll);
985 
990  virtual void save(const DtSimulationAddress& addr, DtIfSaveComplete* s);
991 
995  virtual void processSaveMessages();
996 
1000  virtual void exported(const DtSimulationAddress& addr, DtIfExportComplete* s);
1001 
1003  virtual void completeExport();
1004 
1008  virtual void savedScenario(const DtSimulationAddress& addr,
1009  DtSaveResult result, unsigned int requestId, bool isCheckpointSave = false, double checkpointSimTime = -1);
1010 
1013  virtual void doPendingSaveWork();
1014 
1017  virtual void doPendingExportWork();
1018 
1021  virtual void doPendingLoadWork();
1022 
1024 
1025  //-------------------------------------------------------
1026 
1040 
1041 
1042  //Waypoints (Note-- no way to make a subsection in doxygen; so prevent this word from appearing)
1043 
1048  virtual void createWaypoint(
1049  const DtVector& geocentricPosition,
1050  const DtString& uniqueName = DtString::nullString(),
1051  const DtString& label = DtString::nullString(),
1052  const DtSimulationAddress& addr = DtSimSendToAll,
1053  const DtUUID& startingUUID = DtUUID::nullUUID()) const;
1054 
1058  virtual void createWaypoint(
1059  DtVrfObjectCreatedCallbackFcn fcn, void* usr,
1060  const DtVector& geocentricPosition,
1061  const DtString& uniqueName = DtString::nullString(),
1062  const DtString& label = DtString::nullString(),
1063  const DtSimulationAddress& addr = DtSimSendToAll,
1064  const DtUUID& startingUUID = DtUUID::nullUUID());
1065 
1067  virtual void modifyWaypoint(
1068  const DtUUID& uuid,
1069  DtString* uniqueName = 0,
1070  DtString* label = 0,
1071  DtVector* geocentricPosition = 0,
1072  const DtSimulationAddress& addr = DtSimSendToAll) const;
1073 
1074  //Routes
1075 
1080  virtual void createRoute(
1081  const DtList& vertices,
1082  const DtString& uniqueName = DtString::nullString(),
1083  const DtString& label = DtString::nullString(),
1084  const DtSimulationAddress& addr = DtSimSendToAll,
1085  const DtUUID& startingUUID = DtUUID::nullUUID()) const;
1086 
1090  virtual void createRoute(
1091  DtVrfObjectCreatedCallbackFcn fcn, void* usr,
1092  const DtList& vertices,
1093  const DtString& uniqueName = DtString::nullString(),
1094  const DtString& label = DtString::nullString(),
1095  const DtSimulationAddress& addr = DtSimSendToAll,
1096  const DtUUID& startingUUID = DtUUID::nullUUID());
1097 
1099  virtual void modifyRoute(
1100  const DtUUID& uuid,
1101  DtString* uniqueName = 0,
1102  DtString* label = 0,
1103  DtList* vertices = 0,
1104  const DtSimulationAddress& addr = DtSimSendToAll) const;
1105 
1106  //Phase Lines
1107 
1112  virtual void createPhaseLine(
1113  const DtVector& dbPoint1,
1114  const DtVector& dbPoint2,
1115  const DtString& uniqueName = DtString::nullString(),
1116  const DtString& label = DtString::nullString(),
1117  const DtSimulationAddress& addr = DtSimSendToAll,
1118  const DtUUID& startingUUID = DtUUID::nullUUID()) const;
1119 
1123  virtual void createPhaseLine(
1124  DtVrfObjectCreatedCallbackFcn fcn, void* usr,
1125  const DtVector& dbPoint1,
1126  const DtVector& dbPoint2,
1127  const DtString& uniqueName = DtString::nullString(),
1128  const DtString& label = DtString::nullString(),
1129  const DtSimulationAddress& addr = DtSimSendToAll,
1130  const DtUUID& startingUUID = DtUUID::nullUUID());
1131 
1133  virtual void modifyPhaseLine(
1134  const DtUUID& uuid,
1135  DtString* uniqueName = 0,
1136  DtString* label = 0,
1137  DtVector* newDbPoint1 = 0,
1138  DtVector* newDbPoint2 = 0,
1139  const DtSimulationAddress& addr = DtSimSendToAll) const;
1140 
1141  //Control Areas
1142 
1148  virtual void createControlArea(
1149  const DtList& vertices,
1150  const DtString& uniqueName = DtString::nullString(),
1151  const DtString& label = DtString::nullString(),
1152  const DtSimulationAddress& addr = DtSimSendToAll,
1153  const DtUUID& startingUUID = DtUUID::nullUUID()) const;
1154 
1158  virtual void createControlArea(
1159  DtVrfObjectCreatedCallbackFcn fcn, void* usr,
1160  const DtList& vertices,
1161  const DtString& uniqueName = DtString::nullString(),
1162  const DtString& label = DtString::nullString(),
1163  const DtSimulationAddress& addr = DtSimSendToAll,
1164  const DtUUID& startingUUID = DtUUID::nullUUID());
1165 
1167  virtual void modifyControlArea(
1168  const DtUUID& uuid,
1169  DtString* uniqueName = 0,
1170  DtString* label = 0,
1171  DtList* newVertices = 0,
1172  const DtSimulationAddress& addr = DtSimSendToAll) const;
1173 
1174  //Obstacles
1175 
1181  virtual void createObstacle(
1182  const DtList& vertices,
1183  const DtString& uniqueName = DtString::nullString(),
1184  const DtString& label = DtString::nullString(),
1185  const DtSimulationAddress& addr = DtSimSendToAll,
1186  const DtUUID& startingUUID = DtUUID::nullUUID()) const;
1187 
1191  virtual void createObstacle(
1192  DtVrfObjectCreatedCallbackFcn fcn, void* usr,
1193  const DtList& vertices,
1194  const DtString& uniqueName = DtString::nullString(),
1195  const DtString& label = DtString::nullString(),
1196  const DtSimulationAddress& addr = DtSimSendToAll,
1197  const DtUUID& startingUUID = DtUUID::nullUUID());
1198 
1200  virtual void modifyObstacle(
1201  const DtUUID& uuid,
1202  DtString* uniqueName = 0,
1203  DtString* label = 0,
1204  DtList* newVertices = 0,
1205  const DtSimulationAddress& addr = DtSimSendToAll) const;
1206 
1207  //Disaggregation Area
1208 
1215  virtual void createDisaggregationArea(
1216  const DtList& vertices,
1217  const DtString& uniqueName = DtString::nullString(),
1218  const DtString& label = DtString::nullString(),
1219  const DtSimulationAddress& addr = DtSimSendToAll,
1220  const DtUUID& startingUUID = DtUUID::nullUUID()) const;
1221 
1226  virtual void createDisaggregationArea(
1227  DtVrfObjectCreatedCallbackFcn fcn, void* usr,
1228  const DtList& vertices,
1229  const DtString& uniqueName = DtString::nullString(),
1230  const DtString& label = DtString::nullString(),
1231  const DtSimulationAddress& addr = DtSimSendToAll,
1232  const DtUUID& startingUUID = DtUUID::nullUUID());
1233 
1235  virtual void modifyDisaggregationArea(
1236  const DtUUID& uuid,
1237  DtString* uniqueName = 0,
1238  DtString* label = 0,
1239  DtList* newVertices = 0,
1240  const DtSimulationAddress& addr = DtSimSendToAll) const;
1241 
1242  //Overlay objects
1243 
1256  virtual void createOverlayObject(
1257  const DtEntityType& type,
1258  const DtList& vertices,
1259  const DtForceType& force,
1260  const DtString& name,
1261  const DtString& label,
1262  int color,
1263  const DtString& parentName,
1264  bool projection,
1265  bool closedFigure,
1266  const DtAppearance& appearance = DtAppearance::nullAppearance(),
1267  const DtUUID& attachTo = DtUUID::nullUUID(),
1268  char* userData = 0,
1269  int dataSize = 0,
1270  const std::map<std::string, std::string>& extendedData = std::map<std::string, std::string>(),
1271  const std::map<int, DtString>& extendedLabels = std::map<int, DtString>(),
1273  const DtSimulationAddress& addr = DtSimSendToAll,
1274  unsigned int rId = 0,
1275  std::list<DtAdminContent*>* initialAdminContent = 0,
1276  std::list<DtSimInterfaceContent*>* initialInterfaceContent = 0,
1277  const DtUUID& uuidForCreation = DtUUID::nullUUID());
1278 
1282  virtual void processOverlayObjectCreated(const DtString& name, const DtEntityIdentifier& id, const DtUUID& uuid,
1283  DtVrfOverlayObjectModify* modifications);
1284 
1286  virtual void setPhysicalLineWidth(const DtSimulationAddress& addr,
1287  const DtUUID& entityId, double w);
1288 
1290  virtual void setPhysicalLineHeight(const DtSimulationAddress& addr,
1291  const DtUUID& entityId, double h);
1292 
1294  virtual void setCeiling(const DtSimulationAddress& addr,
1295  const DtUUID& entityId, double c);
1296 
1300  virtual void sendVrfOverlayObjectModifyMsg(
1301  const DtSimulationAddress& addr,
1302  const DtUUID& uuid,
1303  int color,
1304  const DtString& parentName,
1305  const DtUUID& attachTo,
1306  bool keepExistingAttachment = true,
1307  char* userData = 0,
1308  int len = 0) const;
1309 
1310  //Indirect artillery objects
1311 
1313  virtual void createIndirectArtillery(
1314  const DtVrfIndirectArtilleryObjectModify * params,
1315  const DtSimulationAddress& addr);
1316 
1320  virtual void processIndirectArtilleryObjectCreated(const DtString& name, const DtEntityIdentifier& id, const DtUUID& uuid,
1321  DtVrfIndirectArtilleryObjectModify* modifications);
1322 
1323  virtual void sendVrfIndirectArtilleryObjectModifyMsg(
1324  const DtSimulationAddress& addr,
1325  const DtUUID& uuid,
1326  const DtVrfIndirectArtilleryObjectModify * mod) const;
1327 
1329 
1330  //-------------------------------------------------------
1331 
1335 
1338  virtual void createObject(
1339  const DtEntityType& type,
1340  DtForceType force,
1341  DtList* vertices,
1342  const DtString& name,
1343  const DtSimulationAddress& addr,
1344  const DtUUID& startingUUID = DtUUID::nullUUID());
1345 
1349  virtual void objectCreated(unsigned int requestId,
1350  const DtString& name, const DtEntityIdentifier& id, const DtUUID& uuid);
1351 
1353  virtual void deleteObject(const DtUUID& uuid,
1354  const DtSimulationAddress& addr = DtSimSendToAll) const;
1355 
1357  virtual void createEntity(
1358  const DtEntityType& type,
1359  const DtVector& geocentricPosition,
1360  DtForceType force,
1361  DtReal heading,
1362  const DtString& uniqueName = DtString::nullString(),
1363  const DtString& label = DtString::nullString(),
1364  const DtSimulationAddress& addr = DtSimSendToAll,
1365  bool groundClamp = true,
1366  const DtUUID& startingUUID = DtUUID::nullUUID()) const;
1367 
1371  virtual void createEntity(
1372  DtVrfObjectCreatedCallbackFcn fcn, void* usr,
1373  const DtEntityType& type,
1374  const DtVector& geocentricPosition,
1375  DtForceType force,
1376  DtReal heading,
1377  const DtString& uniqueName = DtString::nullString(),
1378  const DtString& label = DtString::nullString(),
1379  const DtSimulationAddress& addr = DtSimSendToAll,
1380  bool groundClamp = true,
1381  const DtUUID& startingUUID = DtUUID::nullUUID());
1382 
1383  virtual void createAggregate(
1384  DtVrfObjectCreatedCallbackFcn fcn, void* usr,
1385  const DtEntityType& type,
1386  const DtVector& geocentricPosition,
1387  DtForceType force,
1388  DtReal heading,
1389  const DtString& uniqueName,
1390  const DtString& label = DtString::nullString(),
1391  const DtSimulationAddress& addr = DtSimSendToAll,
1392  DtAggregateState initialAggregateState = DtDisaggregated,
1393  const DtUUID& startingUUID = DtUUID::nullUUID(),
1394  bool createSubordinates = false);
1395 
1397  virtual void createAggregate(
1398  const DtEntityType& type,
1399  const DtVector& geocentricPosition,
1400  DtForceType force,
1401  DtReal heading,
1402  DtList* entityNames = 0,
1403  const DtSimulationAddress& addr = DtSimSendToAll,
1404  DtAggregateState initialAggregateState = DtDisaggregated,
1405  unsigned int requestId = 0,
1406  const DtUUID& startingUUID = DtUUID::nullUUID()) const;
1407 
1411  virtual void createAggregate(
1412  DtVrfObjectCreatedCallbackFcn fcn, void* usr,
1413  const DtEntityType& type,
1414  const DtVector& geocentricPosition,
1415  DtForceType force,
1416  DtReal heading,
1417  DtList* entityNames = 0,
1418  const DtSimulationAddress& addr = DtSimSendToAll,
1419  DtAggregateState initialAggregateState = DtDisaggregated,
1420  const DtUUID& startingUUID = DtUUID::nullUUID());
1421 
1424  virtual void addToOrganization(
1425  const DtUUID& objectId,
1426  const DtUUID& newSuperiorId,
1427  const DtSimulationAddress& addr = DtSimSendToAll);
1428 
1432  virtual void addToForceLevelOrganization(
1433  const DtUUID& uuid,
1434  const DtSimulationAddress& addr = DtSimSendToAll);
1435 
1438  virtual void removeFromOrganization(
1439  const DtUUID& uuid,
1440  const DtSimulationAddress& addr = DtSimSendToAll);
1441 
1445  virtual void setLabel(
1446  const DtUUID& uuid, const DtString& label,
1447  const DtSimulationAddress& addr = DtSimSendToAll) const;
1448 
1453  virtual void setOverlayParent(
1454  const DtUUID& uuid, const DtString& label,
1455  const DtSimulationAddress& addr = DtSimSendToAll) const;
1456 
1460  virtual void setAltitude(
1461  const DtUUID& uuid, double altitude, bool aboveGroundLevel = false,
1462  const DtSimulationAddress& addr = DtSimSendToAll) const;
1463 
1467  virtual void setLocation(
1468  const DtUUID& uuid, DtVector coord,
1469  const DtSimulationAddress& addr = DtSimSendToAll) const;
1470 
1472  virtual void setAppearance(
1473  const DtUUID& uuid, int appearance,
1474  const DtSimulationAddress& addr = DtSimSendToAll) const;
1475 
1477  virtual void setCapabilities(
1478  const DtUUID& uuid, int capabilities,
1479  const DtSimulationAddress& addr = DtSimSendToAll) const;
1480 
1484  virtual void setHeading(
1485  const DtUUID& uuid, double degrees,
1486  const DtSimulationAddress& addr = DtSimSendToAll) const;
1487 
1491  virtual void setForce(
1492  const DtUUID& uuid, DtForceType force,
1493  const DtSimulationAddress& addr = DtSimSendToAll) const;
1494 
1500  virtual void requestSpotReports(const DtUUID& uuid, int onOff,
1501  const DtSimulationAddress& addr = DtSimSendToAll) const;
1502 
1506  virtual void requestSendTDLMessages(const DtUUID& uuid, int onOff,
1507  const DtSimulationAddress& addr = DtSimSendToAll) const;
1508 
1514  virtual void requestEngagementReports(const DtUUID& uuid, bool onOff,
1515  const DtSimulationAddress& addr = DtSimSendToAll) const;
1516 
1520  virtual void setResource(const DtUUID& uuid,
1521  const char* resourceType, double value,
1522  const DtSimulationAddress& addr = DtSimSendToAll) const;
1523 
1529  virtual void setRulesOfEngagement(
1530  const DtUUID& uuid, const char* rulesType,
1531  const DtSimulationAddress& addr = DtSimSendToAll) const;
1532 
1537  virtual void setSectorOfResponsibility(
1538  const DtUUID& uuid, double center, double size,
1539  const DtSimulationAddress& addr = DtSimSendToAll) const;
1540 
1544  virtual void setSpeed(
1545  const DtUUID& uuid, double speed,
1546  const DtSimulationAddress& addr = DtSimSendToAll) const;
1547 
1551  virtual void setCurrentSpeed(
1552  const DtUUID& uuid, double speed,
1553  const DtSimulationAddress& addr = DtSimSendToAll) const;
1554 
1558  virtual void setTarget(
1559  const DtUUID& uuid, const DtUUID& target,
1560  const DtSimulationAddress& addr = DtSimSendToAll) const;
1561 
1565  virtual void setSuperior(
1566  const DtUUID& uuid, const DtUUID& superior,
1567  const DtSimulationAddress& addr = DtSimSendToAll) const;
1568 
1570  virtual void setTaskedBySuperior(const DtUUID& uuid,
1571  const DtSimulationAddress& addr = DtSimSendToAll) const;
1572 
1576  virtual void setConcealed(const DtUUID& uuid,
1577  bool yes, const DtSimulationAddress& addr = DtSimSendToAll) const;
1578 
1580  virtual void setEmitter(const DtUUID& uuid,
1581  int emitterId, bool on,
1582  const DtSimulationAddress& addr = DtSimSendToAll) const;
1583 
1585  virtual void setEmergencyBeacon(const DtUUID& uuid,
1586  bool on,
1587  const DtSimulationAddress& addr = DtSimSendToAll) const;
1588 
1590  virtual void setIff(const DtUUID& uuid,
1591  bool mode1on, int mode1code,
1592  bool mode2on, int mode2code,
1593  bool mode3on, int mode3code,
1594  bool mode4on, int mode4code,
1595  DtIffAtcNavaidsAltParm4 altParm4,
1596  bool modeCon, bool useAltModeC,
1597  bool modeSon, bool emergency,
1598  bool flash, bool sti, bool modeSTcasI,
1599  int pin, bool mode5LevelSelection,
1600  unsigned int messageFormatsPresent, unsigned int nationalOrigin,
1601  unsigned int navigationSource, unsigned int figureOfMerit,
1602  const DtSimulationAddress& addr = DtSimSendToAll) const;
1603 
1605  virtual void restore(const DtUUID& uuid,
1606  const DtSimulationAddress& addr = DtSimSendToAll) const;
1607 
1611  virtual void setDestroyed(const DtUUID& uuid,
1612  const DtSimulationAddress& addr = DtSimSendToAll) const;
1613 
1617  virtual void setLifeformWeaponState(
1618  const DtUUID& uuid, DtWeaponState weapon,
1619  const DtSimulationAddress& addr) const;
1620 
1622  void setSystemEnabled(const DtUUID& name, const DtString& systemName,
1623  bool val,
1624  const DtSimulationAddress& addr = DtSimSendToAll) const;
1625 
1629  virtual void setLifeformPosture(
1630  const DtUUID& uuid, DtLifeformState posture,
1631  const DtSimulationAddress& addr) const;
1632 
1635  virtual void setAggregateFormation(
1636  const DtUUID& leader, const DtString& formationName,
1637  const DtSimulationAddress& addr = DtSimSendToAll) const;
1638 
1642  virtual void reorganizeAggregate(const DtUUID& leader,
1643  const DtSimulationAddress& addr = DtSimSendToAll) const;
1644 
1648  virtual void disaggregateEntity(const DtUUID& entity,
1649  const DtSimulationAddress& addr = DtSimSendToAll) const;
1650 
1654  virtual void aggregateEntity(const DtUUID& entity,
1655  const DtSimulationAddress& addr = DtSimSendToAll) const;
1656 
1659  virtual void sendSetDataMsg(
1660  const DtUUID& recipient, DtSetDataRequest* msg,
1661  const DtSimulationAddress& addr) const;
1662 
1664 
1665  //-----------------------------------------------------
1666 
1670 
1675  virtual void sendVrfObjectCreateMsg(
1676  const DtSimulationAddress& addr,
1677  unsigned int requestId,
1678  const DtString& name,
1679  const DtObjectType& type,
1680  const DtList& vertices,
1681  const DtString& label,
1682  const DtAppearance& appearance,
1683  DtForceType force,
1684  bool projection,
1685  bool closedFigure,
1686  DtReal heading,
1687  bool createSubObjects,
1688  bool clampToGroundFlag = true,
1689  const DtString& initialFormation = DtString::nullString(),
1690  DtAggregateState initialAggregateState = DtDisaggregated,
1691  const DtString& userData = DtString::nullString(),
1692  const std::map<std::string, std::string>& extendedData = std::map<std::string, std::string>(),
1693  const std::map<int, DtString>& extendedLabels = std::map<int, DtString>(),
1694  std::list<DtAdminContent*>* initialAdminContent = 0,
1695  std::list<DtSimInterfaceContent*>* initialInterfaceContent = 0,
1696  const DtString& overlayParent = "",
1697  const DtUUID& uuidForCreation = DtUUID::nullUUID()) const;
1698 
1705  virtual void sendVrfObjectModifyMsg(
1706  const DtSimulationAddress& addr,
1707  const DtUUID& uuid,
1708  DtString* name = 0,
1709  DtList* vertices = 0,
1710  DtForceType* force = 0,
1711  DtReal* heading = 0,
1712  DtString* label = 0,
1713  DtAppearance* appearance = 0,
1714  DtString* overlayParent = 0,
1715  DtString* userData = 0) const;
1716 
1718 
1719  //------------------------------------------------------
1720 
1725 
1729  virtual void sendTaskMsg(
1730  const DtUUID& recipient, DtSimTask* task,
1731  const DtSimulationAddress& addr = DtSimSendToAll) const;
1732 
1735  virtual void moveAlongRoute(
1736  const DtUUID& entityName, const DtUUID& routeName,
1737  const DtSimulationAddress& addr = DtSimSendToAll) const;
1738 
1741  virtual void moveToWaypoint(
1742  const DtUUID& entityName, const DtUUID& waypoint,
1743  const DtSimulationAddress& addr = DtSimSendToAll) const;
1744 
1748  virtual void moveToLocation(
1749  const DtUUID& entityName, const DtVector& destinationLocation,
1750  const DtSimulationAddress& addr = DtSimSendToAll) const;
1751 
1754  virtual void patrolBetweenWaypoints(
1755  const DtUUID& uuid,
1756  const DtUUID& waypoint1, const DtUUID& waypoint2,
1757  const DtSimulationAddress& addr = DtSimSendToAll) const;
1758 
1761  virtual void patrolAlongRoute(
1762  const DtUUID& uuid, const DtUUID& route,
1763  const DtSimulationAddress& addr = DtSimSendToAll) const;
1764 
1770  virtual void followEntity(
1771  const DtUUID& uuid,
1772  const DtUUID& leader, const DtVector& offset,
1773  const DtSimulationAddress& addr = DtSimSendToAll) const;
1774 
1777  virtual void wait(
1778  const DtUUID& uuid,
1779  const DtSimulationAddress& addr = DtSimSendToAll) const;
1780 
1783  virtual void waitDuration(
1784  const DtUUID& uuid, DtTime duration,
1785  const DtSimulationAddress& addr = DtSimSendToAll) const;
1786 
1789  virtual void waitElapsed(
1790  const DtUUID& uuid, DtTime elapsed,
1791  const DtSimulationAddress& addr = DtSimSendToAll) const;
1792 
1794  virtual void skipTask(const DtUUID& uuid,
1795  const DtSimulationAddress& addr = DtSimSendToAll) const;
1796 
1798 
1799  //--------------------------------------------------------------
1800 
1804 
1807  virtual void restartPlan(const DtUUID& uuid,
1808  const DtSimulationAddress& addr = DtSimSendToAll) const;
1809 
1817  virtual void assignPlanByName(
1818  const DtUUID& uuid, const DtPlan& plan,
1819  const DtSimulationAddress& addr = DtSimSendToAll,
1820  int *retiStatus = NULL, DtString* retsStmt = NULL) const;
1821 
1823  virtual void assignMultiplePlanByName(
1824  const std::vector<DtUUID>& entities, const DtPlan& plan,
1825  const DtSimulationAddress& addr = DtSimSendToAll,
1826  int *retiStatus = NULL, DtString* retsStmt = NULL) const;
1827 
1832  virtual void requestPlan(
1833  const DtUUID& uuid,
1834  bool addStmtCallback = true,
1835  const DtSimulationAddress& addr = DtSimSendToAll) const;
1836 
1841  virtual void subscribePlan(const DtUUID& uuid,
1842  DtPlanCallbackFcn fn, void* usr,
1843  const DtSimulationAddress& addr = DtSimSendToAll);
1844 
1848  virtual void receivedPlan(const DtUUID& uuid, bool isGlobal,
1849  const std::vector<DtSimStatement*>& statements);
1850 
1856  virtual void requestMultiplePlan(const std::vector<DtUUID>& entities,
1857  DtMultiplePlanRequestCallbackFcn fcn, void *usr,
1858  const DtSimulationAddress& addr = DtSimSendToAll);
1859 
1860  virtual void requestMultiplePlan(const std::vector<DtUUID>& entities,
1861  const DtSimulationAddress& addr = DtSimSendToAll);
1862 
1866  virtual void processReceivedMultiPlan(DtIfMultiplePlanResponse* msg);
1867 
1870  virtual void unsubscribePlan(const DtUUID& uuid,
1871  DtPlanCallbackFcn fn, void* usr);
1872 
1875  virtual void unsubscribeAllPlans();
1876 
1881  virtual void addPlanStatementCallback(const DtUUID& uuid,
1882  DtPlanStatementCallbackFcn callback, void* usrData);
1883 
1886  virtual void removePlanStatementCallback(const DtUUID& uuid,
1887  DtPlanStatementCallbackFcn callback, void* usrData);
1888 
1891  virtual void removeAllPlanStatementCallbacks();
1892 
1898  virtual void receivedPlanStmt(const DtUUID& uuid, bool isGlobal,
1899  DtPlanStatus planStatus);
1900 
1905  virtual void addPlanCompleteCallback(const DtUUID& uuid,
1906  DtPlanCompleteCallbackFcn callback, void* usrData);
1907 
1910  virtual void removePlanCompleteCallback(const DtUUID& uuid,
1911  DtPlanCompleteCallbackFcn callback, void* usrData);
1912 
1915  virtual void removeAllPlanCompleteCallbacks();
1916 
1919  virtual void abandonPlan(const DtUUID& uuid,
1920  const DtSimulationAddress& addr = DtSimSendToAll) const;
1921 
1923 
1927 
1929  virtual void requestGlobalPlansList(const DtSimulationAddress& addr);
1930 
1938  virtual void assignGlobalPlan(
1939  const DtString& name, const DtPlan& plan,
1940  const DtSimulationAddress& addr = DtSimSendToAll,
1941  int *retiStatus = NULL, DtString* retsStmt = NULL) const;
1942 
1944  virtual void deleteGlobalPlan(const DtUUID& name,
1945  const DtSimulationAddress& addr = DtSimSendToAll) const;
1946 
1948  virtual void launchGlobalPlan(const DtUUID&, const DtSimulationAddress& addr) const;
1949 
1951 
1952  //---------------------------------------------------------------
1953 
1956 
1961  virtual DtVrfObjectMessageExecutive* objectMessageExecutive();
1962 
1968  virtual void sendMessageToObject(DtVrfObjectMessage* objectMessage,
1969  const DtSimulationAddress& addr = DtSimSendToAll) const;
1970 
1976  virtual DtRadioMessageListener* radioMessageListener();
1977 
1979 
1980  //--------------------------------------------------------------
1981 
1986 
1993  virtual void embarkObject(const DtSimulationAddress& addr, const DtUUID& entity, const DtUUID& ontoEntity,
1994  bool loadOverride = false, const DtVector& loadOverridePosition = DtVector::zero());
1995 
1996  virtual void disembarkObject(const DtSimulationAddress& addr, const DtUUID& entity);
1997  virtual void disembarkAllObjects(const DtSimulationAddress& addr, const DtUUID& entity);
1998 
2001  virtual void requestTasksAndSetsFor(const DtSimulationAddress& addr,
2002  const DtUUID& entityName);
2003 
2005  virtual void requestTasksAndSetsFor(const std::vector<DtUUID>& names);
2006 
2009  virtual void requestDIGuyAppearancesAndAnimations(const DtSimulationAddress& addr,
2010  const DtUUID& entityName);
2011 
2013  virtual void requestDIGuyAppearancesAndAnimations(const std::vector<DtUUID>& names);
2014 
2016  virtual void requestIndirectArtilleryInformation(const DtUUID&);
2017 
2022  virtual void requestResourceNames(const std::vector<DtUUID>& list,
2023  DtServerRequestResponseCallbackFcn fcn = 0, void* usr = 0);
2024 
2032  virtual void requestResources(const DtUUID& uuid = DtUUID::nullUUID(),
2033  const std::list<DtString>* list = 0,
2034  DtServerRequestResponseCallbackFcn fcn = 0, void* usr = 0);
2035 
2039  virtual void processResourcesProcessedCb(const DtIfServerRequestResponse& rsp);
2040 
2041 
2043 
2044  //---------------------------------------------------------------
2045 
2049 
2052  virtual void addObjectConsoleMessageCallback(
2053  DtObjectConsoleMessageCallbackFcn fcn, void* usr = 0);
2054  virtual void removeObjectConsoleMessageCallback(
2055  DtObjectConsoleMessageCallbackFcn fcn, void* usr = 0);
2056 
2059  virtual void setObjectNotifyLevel(const DtUUID& objectName,
2060  DtNotifyLevelType notifyLevel, const DtSimulationAddress& addr = DtSimSendToAll);
2061 
2065  virtual void logObjectConsoleToFile(const DtUUID& objectName,
2066  const DtFilename filename);
2067 
2070  virtual void stopLoggingObjectConsoleToFile(const DtUUID& objectName);
2071 
2074  virtual void addBackendConsoleMessageCallback(
2075  DtBackendConsoleMessageCallbackFcn fcn, void* usr = 0);
2076  virtual void removeBackendConsoleMessageCallback(
2077  DtBackendConsoleMessageCallbackFcn fcn, void* usr = 0);
2078 
2081  virtual void processCommentInteraction(DtCommentInteraction* inter);
2082 
2084 
2085 //-----------------------------------------------------------
2089 
2092  virtual void requestJoystickInformation(const DtUUID&, DtJoystickControlResponseFcn, void*,
2093  const DtSimulationAddress& addr = DtSimSendToAll);
2094 
2097  virtual void takeControlOf(const DtUUID&, const std::set<DtString>& functionGroups,
2098  const DtSimulationAddress& addr = DtSimSendToAll);
2099 
2102  virtual void releaseControlOf(const DtUUID&, const std::set<DtString>& functionGroups =
2103  std::set<DtString>(), const DtSimulationAddress& addr = DtSimSendToAll);
2104 
2107  virtual void sendJoystickControl(const DtUUID&, const DtString& functionGroup,
2108  const DtString& function, double value, bool repeat = false, const DtSimulationAddress& addr = DtSimSendToAll);
2109 
2111 
2112  //-----------------------------------------------------------
2118  virtual DtSimulationStatus simulationStatus() const;
2119 
2121  virtual void addSimulationStatusChangedCallback(DtSimulationStatusChangedCallbackFcn, void*);
2122  virtual void removeSimulationStatusChangedCallback(DtSimulationStatusChangedCallbackFcn, void*);
2123 
2125 
2126  //-----------------------------------------------------------
2127 
2132  virtual DtDefaultVrfObjectMessageFactory* vrfObjectMsgFactory();
2133  virtual DtDefaultCondExprFactory* condExprFactory();
2134  virtual DtDefaultStatementFactory* stmtFactory();
2135  virtual DtDefaultSimReportFactory* reportFactory();
2136  virtual DtDefaultSimTaskFactory* taskFactory();
2137  virtual DtDefaultSetDataRequestFactory* setDataFactory();
2138  virtual DtDefaultSimCommandFactory* simCommandFactory();
2139  virtual DtDefaultAdminContentFactory* adminContentFactory();
2141 
2142 public:
2143 
2146 
2149  static void doPendingSaveWorkCb(void* usr);
2150 
2153  static void doPendingExportWorkCb(void* usr);
2154 
2157  static void doPendingLoadWorkCb(void* usr);
2158 
2161  static void savedScenarioCb(DtSimMessage* msg, void* usr);
2162 
2165  static void exportScenarioCb(DtSimMessage* msg, void* usr);
2166 
2169  static void loadedScenarioCb(DtSimMessage* msg, void* usr);
2170 
2173  static void receiveFileCb(const DtFilename& filename, void* usr);
2174 
2176  static void receivedMultiPlanCb(DtSimMessage* msg, void* usr);
2177 
2179  static void objectCreatedCb(DtSimMessage* msg, void* usr);
2180 
2182  static void receivedPlanCb(DtSimMessage* msg, void* usr);
2183 
2185  static void receivedPlanStmtCb(DtSimMessage* msg, void* usr);
2186 
2189  static void overlayObjectCreatedCallback(const DtString& name, const DtEntityIdentifier& id,
2190  const DtUUID& uuid, void* usr);
2191 
2194  static void indirectArtilleryObjectCreatedCallback(const DtString& name, const DtEntityIdentifier& id,
2195  const DtUUID& uuid, void* usr);
2196 
2198  static void resourcesProcessedCb(DtSimMessage* msg, void* usr);
2199 
2202  static void spatialSubdivisionConfigurationCb(DtSimMessage* msg, void* usr);
2203 
2206  virtual void commentInteractionCallback(const DtEvent&);
2207 
2209 
2210 
2211 protected:
2212  virtual void registerEventManagerCallbacks();
2213  virtual void unregisterEventManagerCallbacks();
2214 
2216  static void joystickControlResponse(DtSimMessage* msg, void* usr);
2217  virtual void processJoystickControlResponse(DtSimMessage* msg);
2218 
2221  static void globalEnvironmentCreatedCallback(const DtEnvironmentProcessRepository*, void*);
2222  virtual void processGlobalEnvironmentCreated(const DtEnvironmentProcessRepository*);
2223 
2227  virtual void onInit();
2228  virtual void resetStateData();
2229  virtual void emptyLists();
2230 
2232  virtual void sendAggregateAsMsg(
2233  const DtSimulationAddress& addr,
2234  unsigned int requestId,
2235  const DtObjectType& objectType,
2236  DtForceType force,
2237  const DtVector& position,
2238  DtReal heading,
2239  DtList* entityNames,
2240  DtAggregateState initialAggregateState,
2241  const DtUUID& startingUUID = DtUUID::nullUUID()) const;
2242 
2244  virtual DtVrfConfigurationFileComposer* createComposer();
2245 
2247  virtual DtUUIDNetworkManager* createUUIDNetworkManager() const;
2248 
2251  virtual void sendQuerySpatialSubdivisionConfigurationRequest(
2252  const DtSimulationAddress& backendAddress,
2253  DtSpatialSubdivisionType spatialSubdivisionType ,
2254  DtServerRequestResponseCallbackFcn fcn, void* usr);
2255 
2262  virtual bool arbitrarySimAddress(DtSimulationAddress& address) const;
2263 
2271  virtual bool addStatementsAndSendPlan(const DtPlan& plan, DtIfPlan& planMsg,
2272  const DtSimulationAddress& addr = DtSimSendToAll,
2273  int *retiStatus = 0, DtString* retsStmt = 0) const;
2274 
2277  static void deliverRadioMessageCallback(DtSimMessage* msg, void* usr);
2278  static void vrfObjectMessageCallback(const DtVrfObjectMessage* objMsg, void* usr);
2281  virtual void processVrfObjectMessage(const DtVrfObjectMessage* objectMsg);
2282 
2285  static void globalEnvironmentCreatedCb(const DtString& name, const DtEntityIdentifier& id, const DtUUID& uuid, void* usr);
2286  virtual void processGlobalEnvironmentCreated(const DtString& name, const DtEntityIdentifier& id, const DtUUID& uuid);
2287 
2289  static void backendStatusUpdate(const DtSimulationAddress&, void*);
2290  virtual void processBackendStatusUpdate(const DtSimulationAddress&);
2291 
2292 protected:
2293  DtExerciseConn* myExerciseConnection;
2306  DtList myBeList;
2307 
2316 
2317  typedef std::list<PlanCbInfo> DtPlanCallbackListType;
2319  typedef std::list<StmtCbInfo> DtStatementCallbackListType;
2321  typedef std::list<PlanCompleteCbInfo> DtPlanCompleteCallbaclListType;
2323 
2324  DtHashlist myObjectCbs;
2325 
2326  typedef std::list<std::pair<DtObjectConsoleMessageCallbackFcn, void*> >
2329 
2330  typedef std::list<std::pair<DtBackendConsoleMessageCallbackFcn, void*> >
2333 
2336  DtFilename mySaveName;
2338  DtFilename myOverlayFilename;
2342  DtFilename myOpdName;
2355 
2358 
2361 
2364 
2374 
2379 
2382 
2385  DtFilename myTempDirectory;
2386 
2390  DtInetAddr myInetAddr;
2391 
2396  mutable unsigned int myRequestIdCounter;
2397 
2400 
2403 
2406 
2409 
2412 
2414  DtFilename myExportFile;
2415 
2418 
2422 
2425 
2429 
2431  typedef std::map<DtString, std::pair<DtJoystickControlResponseFcn, void*> > JoystickResponseCallbackInfo;
2433 
2436 
2440  std::set<DtSimulationAddress> myBackendsWithObjects;
2441 
2443  std::set<DtSimulationAddress> myBackendsLoaded;
2444  std::vector<DtString> myLoadingSimulationModelSets;
2446 
2449 };
2450 
2459 {
2460 public:
2461  DtVrfOverlayObjectModify(int color, const DtUUID& attachTo,
2462  char* userData,
2463  int iUserDataSize, DtOverlayCreatedCallbackFcn fcn,
2464  DtVrfRemoteController* control);
2465 
2466  virtual ~DtVrfOverlayObjectModify();
2467 
2468  virtual int color() const;
2469  virtual const DtUUID& attachTo() const;
2470  virtual void userData(char** data, int* userDataSize);
2471  virtual DtVrfRemoteController* remoteController();
2472  virtual DtOverlayCreatedCallbackFcn userCallback();
2473 
2474 protected:
2475  int myColor;
2478  char* myUserData;
2481 };
2482 
2486 {
2487 public:
2490 
2492  virtual DtVrfRemoteController* remoteController() const;
2493  virtual void setRemoteController(DtVrfRemoteController*);
2494 
2496  virtual const DtIfIndirectArtilleryData & data() const;
2497  virtual DtIfIndirectArtilleryData & data();
2498  virtual void setData(const DtIfIndirectArtilleryData & data);
2499 
2500 protected:
2503 };
DtExerciseConn * myExerciseConnection
Definition: vrfRemoteController.h:2293
class DtIfPlan:
Definition: ifPlan.h:61
DtList myBeSavedCbs
list of any preferred new-style save callbacks that have been registered
Definition: vrfRemoteController.h:2315
UUID is a unique ID wrapper class.
Definition: rwUUID.h:222
bool(* DtLoadBalancingFcn)(DtAddressMap *map, const DtList *backends, bool &remapped, void *usr)
Return true from this function to signal success of load balancing, however, set remapped to true if ...
Definition: scenario.h:580
DtDefaultAdminContentFactory myAdminContentFact
Definition: vrfRemoteController.h:2373
bool operator==(const StmtCbInfo &orig) const
Definition: vrfRemoteController.h:152
Version of DtVrfObjectMessageFactory that registers all the default VR-Forces VrfObject types...
Definition: defaultVrfObjectMessageFactory.h:18
Instances of this class split up config files.
Definition: vrfConfigurationFileComposer.h:24
bool myReceivedExportFile
Set to true once export file has been received.
Definition: vrfRemoteController.h:2417
bool myCreatedMsgIf
Definition: vrfRemoteController.h:2334
bool myNeedsGlobalEnvironment
Set to true if needs to create global environment on first load of simulation.
Definition: vrfRemoteController.h:2357
bool myDidRemap
true if at some point during the save of this scenario the user decided to remap the objects to the n...
Definition: vrfRemoteController.h:2354
Class which holds a list of string key and string value pairs.
Definition: rwKeyValueList.h:21
DtDefaultStatementFactory myStmtFact
Definition: vrfRemoteController.h:2368
unsigned int myRequestIdCounter
Incremented by generateRequestId() to assign new request id&#39;s.
Definition: vrfRemoteController.h:2396
bool myPreserveMappings
false if a DtPreserveMappingsFcn returned false when saving a scenario
Definition: vrfRemoteController.h:2350
DtIfLoadScenario is a composite message containing all the elements needed to begin a simulation...
Definition: ifLoadScenario.h:21
The DtVrfTDLMessageInterface is a transporter for sending TDL messages as data interactions using a V...
Definition: vrfTDLMessageInterface.h:25
DtSimulationStatus
Definition: backend.h:26
Sent when the export of the scenario file is complete.
Definition: ifExportComplete.h:21
#define DT_DLL_vrfcontrol
This file is used to determine how to build.
Definition: vrfcontrolDefines.h:28
std::map< DtString, std::pair< DtJoystickControlResponseFcn, void * > > JoystickResponseCallbackInfo
Joystick callback information.
Definition: vrfRemoteController.h:2431
DtHashlist myObjectCbs
Definition: vrfRemoteController.h:2324
DtFilename myTempDirectory
Location for temporary files generated by the configuration composer and file transporter.
Definition: vrfRemoteController.h:2385
Definition: scenario.h:52
DtList myReceivedFiles
Definition: vrfRemoteController.h:2300
DtFilename myCreateMenuFilename
Definition: vrfRemoteController.h:2341
int myColor
Definition: vrfRemoteController.h:2475
void(* DtIndirectArtilleryCreatedCallbackFcn)(const DtString &name, const DtEntityIdentifier &id, const DtUUID &uuid, void *usr)
Definition: vrfRemoteController.h:108
DtUUID planName
Definition: vrfRemoteController.h:159
~StmtCbInfo()
Definition: vrfRemoteController.h:151
void(* DtObjectConsoleMessageCallbackFcn)(const DtEntityIdentifier &id, int notifyLevel, const DtString &message, void *usr)
Definition: vrfRemoteController.h:112
DtList myScenExportedCbs
list of any preferred new-style save callbacks that have been registered
Definition: vrfRemoteController.h:2313
DtEventManager * myEventManager
Definition: vrfRemoteController.h:2448
DtCompressedFileTransporter * myTransporter
Definition: vrfRemoteController.h:2299
int myStartTimeOfDay
Only set for a new scenario.
Definition: vrfRemoteController.h:2408
char * myUserData
Definition: vrfRemoteController.h:2478
void(* DtScenarioCallbackFcn)(void *usr)
Definition: remoteBatchManager.h:29
DtRwKeyValueList myScenarioData
Extra data used to be saved with the scenario.
Definition: vrfRemoteController.h:2381
voidpf void uLong size
Definition: ioapi.h:39
bool myAwaitingExportComplete
Set to know we&#39;ve received the export complete message but not the file yet.
Definition: vrfRemoteController.h:2421
DtUUID planName
Definition: vrfRemoteController.h:138
Definition: defaultStatementFactory.h:18
DtDefaultSimReportFactory myReportFact
Definition: vrfRemoteController.h:2369
A container for information provided to a plan-complete callback.
Definition: vrfRemoteController.h:165
std::list< std::pair< DtObjectConsoleMessageCallbackFcn, void * > > DtObjectConsoleMessageCallbackListType
hashed by request id
Definition: vrfRemoteController.h:2327
bool operator==(const PlanCompleteCbInfo &orig) const
Definition: vrfRemoteController.h:172
std::list< PlanCbInfo > DtPlanCallbackListType
Definition: vrfRemoteController.h:2317
*virtual const DtObjectType & objectType() const
DtPlanCallbackFcn fcn
Definition: vrfRemoteController.h:140
A container for information provided to a plan statement callback.
Definition: vrfRemoteController.h:145
Interface content for containing the responses to a joystick control request.
Definition: ifJoystickControlsResponse.h:20
void(* DtBackendCallbackFcn)(const DtSimulationAddress &addr, void *usr)
Definition: vrfBackendListener.h:32
bool myCreatedReflectedEnvironmentProcessList
Definition: vrfRemoteController.h:2295
JoystickResponseCallbackInfo myJoystickResponseCallbackInfo
Definition: vrfRemoteController.h:2432
DtTime myMaxWaitLoadTime
Definition: vrfRemoteController.h:2304
bool myOwnsEventManager
Definition: vrfRemoteController.h:2447
int myUserDataSize
Definition: vrfRemoteController.h:2479
DtFilename myExportFile
When received, the file to save the export file to.
Definition: vrfRemoteController.h:2414
DtDefaultSimTaskFactory myTaskFact
Definition: vrfRemoteController.h:2370
Instances of DtVrfBackendListener are used to track the status of VRF applications.
Definition: vrfBackendListener.h:78
File: ifResMonResponse.h.
Definition: ifServerRequestResponse.h:36
DtList myScenSavedCheckpointCbs
list of any preferred new-style save callbacks that have been registered
Definition: vrfRemoteController.h:2314
Definition: settingsObject.h:27
This class will hold information that can be used to modify a overlay object after it has been create...
Definition: vrfRemoteController.h:2458
Registers default admin content creators supplied with VR-Forces.
Definition: defaultAdminContentFactory.h:17
DtEventManager * eventManager() const
Definition: vrfRemoteController.h:924
void(* DtBackendSaveCallbackFcn)(const DtSimulationAddress &addr, DtSaveResult result, void *usr)
Definition: vrfRemoteController.h:93
void * data
Definition: vrfRemoteController.h:161
Callback manager for DtVrfObjectMessage receipt.
Definition: vrfObjectMessageExecutive.h:26
class DtBackendMap:
Definition: backendMap.h:19
Definition: radarCoverageAltitudeSettings.h:35
std::list< StmtCbInfo > DtStatementCallbackListType
Definition: vrfRemoteController.h:2319
Definition: UUIDNetworkManager.h:69
Definition: objectType.h:27
Definition: events.h:47
class DtAddressMap:
Definition: addressMap.h:22
DtVrfTDLMessageInterface * myVrfTDLMsgIf
Definition: vrfRemoteController.h:2297
DtVrfMessageInterface * myMsgIf
Definition: vrfRemoteController.h:2296
DtList myScenSavedOldCbs
Definition: vrfRemoteController.h:2310
DtSetDataRequest is an abstract base class from which real setDataRequests can derive.
Definition: setDataRequest.h:40
DtList myBeList
Definition: vrfRemoteController.h:2306
The main class for the remote control interface to VR-Forces.
Definition: vrfRemoteController.h:203
static const DtUUID & nullUUID()
DtSaveResult
Definition: ifSaveComplete.h:18
DtInetAddr myInetAddr
This is the Internet address to send saved files back to from the server.
Definition: vrfRemoteController.h:2390
DtTime myLastCommandTime
Definition: vrfRemoteController.h:2303
DtDefaultVrfObjectMessageFactory myVrfObjectMsgFact
These are needed for message callbacks to work.
Definition: vrfRemoteController.h:2366
Definition: eventManager.h:23
DtList myBeLoadedCbs
Definition: vrfRemoteController.h:2309
DtList myScenSavedCbs
list of any deprecated old-style save callbacks that have been registered
Definition: vrfRemoteController.h:2311
DtSpatialSubdivisionType
Types of spatial subdivisions used in VR-Forces.
Definition: spatialSubdivisionTypes.h:17
DtIfIndirectArtilleryData myData
Definition: vrfRemoteController.h:2502
~PlanCbInfo()
Definition: vrfRemoteController.h:131
Factory which registers all default VR-Forces Sim Commands.
Definition: defaultSimCommandFactory.h:15
Definition: vrfRemoteController.h:208
DtString myGuiTerrainDatabaseFilename
This member variable will contain the front end database (if different from back end).
Definition: vrfRemoteController.h:2378
File: simMsg.h.
Definition: simMessage.h:35
PlanCbInfo(const DtUUID &n, bool global, DtPlanCallbackFcn f, void *usr)
Definition: vrfRemoteController.h:129
Object which registers callbacks with a DtEventManager to monitor for VR-Forces radio messages...
Definition: radioMessageListener.h:29
void(* DtScenarioAboutToBeSavedCallbackFcn)(DtScenario &, void *usr)
Definition: vrfRemoteController.h:81
DtFilename mySymbolMapFilename
Definition: vrfRemoteController.h:2340
void(* DtPlanCallbackFcn)(const DtUUID &name, const std::vector< DtSimStatement * > &statements, bool append, void *usr)
Definition: plan.h:70
bool isGlobal
Definition: vrfRemoteController.h:160
DtList myScenLoadedCbs
Definition: vrfRemoteController.h:2308
void(* DtCheckpointSavedCallbackFcn)(DtSaveResult result, double, void *usr)
Definition: vrfRemoteController.h:99
DtFilename myOpdName
Definition: vrfRemoteController.h:2342
DtStatementCallbackListType myStmtCbs
Definition: vrfRemoteController.h:2320
Definition: compressedFileTransporter.h:24
DtPlanCompleteCallbaclListType myPlanCompleteCbs
Definition: vrfRemoteController.h:2322
std::set< DtSimulationAddress > myBackendsLoaded
Used for loading a scenario if there are any backends opened.
Definition: vrfRemoteController.h:2443
std::set< DtSimulationAddress > myBackendsWithObjects
Definition: vrfRemoteController.h:2440
DtU32 myCurrentRequestId
Definition: vrfRemoteController.h:2302
std::list< std::pair< DtBackendConsoleMessageCallbackFcn, void * > > DtBackendConsoleMessageCallbackListType
Definition: vrfRemoteController.h:2331
DtDefaultSimulationModelSetValidatorManager mySimulationModelSetValidator
Definition: vrfRemoteController.h:2424
bool mySaveToZipFile
Whether or not the pending save is saved to a zip file.
Definition: vrfRemoteController.h:2435
bool myUseDayNightModel
Definition: vrfRemoteController.h:2423
DtFilename mySelectionGroupsFilename
Definition: vrfRemoteController.h:2339
DtCallbackList< DtSimulationStatus >::DtCallbackFunctionType DtSimulationStatusChangedCallbackFcn
Callback functions for simulation status changed callbacks.
Definition: vrfBackendListener.h:49
DtTime myMaxWaitSaveTime
Definition: vrfRemoteController.h:2305
~PlanCompleteCbInfo()
Definition: vrfRemoteController.h:171
A container for information provided to a plan callback.
Definition: vrfRemoteController.h:126
DtVrfRemoteController * myController
Definition: vrfRemoteController.h:2477
bool myInRollback
Definition: vrfRemoteController.h:2439
A DtSimCommand subclass which specifies a change to the weather settings for the specified weather ar...
Definition: changeWeatherCommand.h:28
The base class for all messages to/from a specific DtVrfObject.
Definition: vrfObjectMessage.h:30
bool(* DtBackendRemappingFcn)(DtBackendMap *map, const std::set< DtSimulationAddress > &expectedBackends, void *usr)
Used by loadScenario to get replacements for missing backends.
Definition: vrfRemoteController.h:85
std::list< PlanCompleteCbInfo > DtPlanCompleteCallbaclListType
Definition: vrfRemoteController.h:2321
bool myCreatedVrfTDLMsgIf
Definition: vrfRemoteController.h:2335
DtVrfConfigurationFileComposer * myComposer
Definition: vrfRemoteController.h:2346
void(* DtMultiplePlanRequestCallbackFcn)(DtIfMultiplePlanResponse *, void *usr)
Definition: plan.h:80
Definition: asyncJobServer.h:39
DtPlanStatementCallbackFcn fcn
Definition: vrfRemoteController.h:158
class DtPlan:
Definition: plan.h:90
bool myRemapped
true if a DtBackendRemappingFcn was called on the current scenario
Definition: vrfRemoteController.h:2348
void(* DtPlanStatementCallbackFcn)(const DtUUID &name, DtPlanStatus planStatus, void *usr)
Definition: plan.h:74
void(* DtBackEndSettingRequestCompleteCallbackFcn)(void *usr)
Definition: vrfBackendListener.h:34
DtDefaultSimCommandFactory mySimCommandFact
Definition: vrfRemoteController.h:2372
Small container class that holds the status of a running DtPlan.
Definition: plan.h:50
class DtIfMultiplePlanResponse:
Definition: ifMultiplePlanResponse.h:32
DtOverlayCreatedCallbackFcn myUserCallback
Definition: vrfRemoteController.h:2480
DtDefaultCondExprFactory myCondExprFact
Definition: vrfRemoteController.h:2367
Definition: defaultSimReportFactory.h:17
ComponentAttachmentRule
Definition: vrfRemoteController.h:206
Data container for Indirect Artillery.
Definition: ifModifyIndirectArtilleryObject.h:28
void * data
Definition: vrfRemoteController.h:141
DtAdminContent.
Definition: adminContent.h:24
bool isGlobal
Definition: vrfRemoteController.h:139
bool(* DtPreserveMappingsFcn)(void *usr)
Used by saveScenario to determine if original (true) or new mappings should be saved.
Definition: vrfRemoteController.h:88
DtScenarioLoadInformation * myScenarioLoadInformation
Definition: vrfRemoteController.h:2445
DtList myReceivedSaves
Definition: vrfRemoteController.h:2301
bool myNeedsGlobalDynamicTerrain
Set to true if needs to create the object to manage global dynamic terrain.
Definition: vrfRemoteController.h:2363
DtReflectedEnvironmentProcessList * myReflectedEnvironmentProcessList
Definition: vrfRemoteController.h:2294
Definition: defaultCondExprFactory.h:18
DtDefaultSetDataRequestFactory mySetDataFact
Definition: vrfRemoteController.h:2371
DtSimTask is an abstract base class from which real tasks can derive.
Definition: simTask.h:33
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
DtUUIDNetworkManager * myUUIDNetworkManager
Class that will manage and work with VR-Forces UUIDs and make sure the mapping is kept up to date...
Definition: vrfRemoteController.h:2428
void(* DtVrfObjectCreatedCallbackFcn)(const DtString &name, const DtEntityIdentifier &id, const DtUUID &uuid, void *usr)
Definition: vrfRemoteController.h:102
DtFilename mySaveName
Definition: vrfRemoteController.h:2336
void(* DtOverlayCreatedCallbackFcn)(const DtString &name, const DtEntityIdentifier &id, const DtUUID &uuid, DtVrfOverlayObjectModify *usr)
Definition: vrfRemoteController.h:105
DtPlanCallbackListType myPlanCbs
Definition: vrfRemoteController.h:2318
DtVrfObjectMessageExecutive myObjectMessageExecutive
Used to processes VrfObjectMessages addressed to the Front End.
Definition: vrfRemoteController.h:2399
std::vector< DtString > myLoadingSimulationModelSets
Definition: vrfRemoteController.h:2444
DtFilename myOverlayFilename
Definition: vrfRemoteController.h:2338
DtChangeWeatherCommand * myInitialEnvironment
Set to non-null if needing to also set the global environment.
Definition: vrfRemoteController.h:2360
DtRemoteEnvironmentController * myRemoteEnvironmentController
Used to monitor and change the weather state.
Definition: vrfRemoteController.h:2405
double mySimTimeForCheckpointSave
Definition: vrfRemoteController.h:2337
void(* DtServerRequestResponseCallbackFcn)(const DtIfServerRequestResponse &response, void *usr)
This function ties a request id to a particular server response.
Definition: vrfRemoteController.h:123
DtIfSaveComplete is sent from the backend whenever it completes a save.
Definition: ifSaveComplete.h:22
Definition: remoteEnvironmentController.h:48
double myRollbackToSimulationTime
If rolling back, the rollback time.
Definition: vrfRemoteController.h:2438
DtObjectConsoleMessageCallbackListType myObjectConsoleMessageCallbackList
Definition: vrfRemoteController.h:2328
void(* DtScenarioSavedCallbackFcn)(DtSaveResult result, const DtString &sError, void *usr)
Definition: vrfRemoteController.h:96
DtUUID planName
Definition: vrfRemoteController.h:178
voidpf uLong offset
Definition: ioapi.h:42
void(* DtPlanCompleteCallbackFcn)(const DtUUID &name, void *usr)
Definition: plan.h:77
Definition: scenario.h:614
Definition: defaultSimTaskFactory.h:15
DtList myScenAboutToBeSavedCbs
list of any preferred new-style save callbacks that have been registered
Definition: vrfRemoteController.h:2312
void * data
Definition: vrfRemoteController.h:180
PlanCompleteCbInfo(const DtUUID &n, bool global, DtPlanCompleteCallbackFcn f, void *usr)
Definition: vrfRemoteController.h:168
StmtCbInfo(const DtUUID &n, bool global, DtPlanStatementCallbackFcn f, void *usr)
Definition: vrfRemoteController.h:148
Definition: vrfRemoteController.h:207
bool isGlobal
Definition: vrfRemoteController.h:179
DtScenario * mySaveScen
Definition: vrfRemoteController.h:2344
void(* DtJoystickControlResponseFcn)(DtIfJoystickControlsResponse *map, void *usr)
Definition: vrfRemoteController.h:90
DtVrfRemoteController * myController
Definition: vrfRemoteController.h:2501
DtUUID myAttachTo
Definition: vrfRemoteController.h:2476
DtBackendConsoleMessageCallbackListType myBackendConsoleMessageCallbackList
Definition: vrfRemoteController.h:2332
DtRadioMessageListener * myRadioMessageListener
Used to spy on radio messages sent between VRF Entities.
Definition: vrfRemoteController.h:2402
int myScenarioExportRequestId
Pending export request id.
Definition: vrfRemoteController.h:2411
DtFilename myScenarioExtrasFilename
Definition: vrfRemoteController.h:2343
bool operator==(const PlanCbInfo &orig) const
Definition: vrfRemoteController.h:132
Definition: vrfMessageInterface.h:46
DtVrfBackendListener * myListener
Definition: vrfRemoteController.h:2298
DtPlanCompleteCallbackFcn fcn
Definition: vrfRemoteController.h:177
Definition: defaultSetDataRequestFactory.h:17
Default implementation that will add protocol and state data validators (contained in this header fil...
Definition: defaultSimulationModelSetValidatorManager.h:17
This class holds the data necessary to define an indirect artiller object It extends the DtVrfOverlay...
Definition: vrfRemoteController.h:2485
DtScenario * myLoadScen
Definition: vrfRemoteController.h:2345
void(* DtBackendConsoleMessageCallbackFcn)(const DtSimulationAddress &id, int notifyLevel, const DtString &message, void *usr)
Definition: vrfRemoteController.h:116

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)