VR-Forces 4.3.1 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
guiThreadVrfRemoteController.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 
12 #pragma once
13 
14 #include <vrfGuiCore/vrfGuiCore.h>
23 
26 #include <vrvCore/DtEntityState.h>
27 #include <vrvUtil/signalslib.h>
28 #include <vrvCore/DtDe.h>
29 
30 #include <vlpi/entityType.h>
31 #include <matrix/vlVector.h>
32 
35 #include <vrfplan/plan.h>
36 #include <vrfutil/scenario.h>
37 
38 #include <boost/function.hpp>
39 
41 class DtSetDataRequest;
43 class DtSimTask;
44 class DtAdminMessage;
47 class DtIfPlan;
51 class DtObjectType;
52 
53 typedef boost::function<void (DtString, const DtEntityIdentifier&, const DtObjectType&)> DtVrfObjectCreatedCallbackFunction;
54 typedef boost::function<void (bool, DtString, const DtEntityIdentifier&)> DtComputedRouteResponseCallbackFunction;
55 
56 namespace makVrf
57 {
58  class DtGuiThreadNetworkCallbackManager;
59 
86  {
87  public:
88 
91 
93  static DtGuiThreadVrfRemoteController& instance(makVrv::DtDe& de);
94 
95  public:
98  DtVrfBackendSettingsManager& backendSettingsManager();
99 
102  DtVrfSimBackendManager& backendManager();
103 
105  DtVrfSpotReportManager& spotReportManager();
106 
108  DtVrfResourceManager& resourceManager();
109 
111  DtGuiThreadNetworkCallbackManager& messageHandler();
112 
113  public:
116 
122  virtual void newScenario(const DtScenario*, time_t startTimeOfDay = 12 * 3600);
124  virtual void newScenario(const DtFilename& terrainDatabase, time_t startTimeOfDay = 12 * 3600);
125 
130  virtual void importScenarioDescriptionFile(const std::string& file, DtSimulationAddress, const std::string& description ,
131  const std::map<std::string, std::string>& importData);
132 
135  virtual void exportScenarioDescriptionFile(const std::string& file, DtSimulationAddress, const std::string& description,
136  const std::map<std::string, std::string>& importData);
137 
153  virtual void loadScenario(const DtScenarioLoadInformation&);
155  virtual bool loadScenario(const DtFilename&);
156 
169  virtual void saveScenario(const DtScenario*, DtPreserveMappingsFcn fcn = 0, void* userData = 0);
170 
173  virtual void closeScenario(const DtFilename& databaseToOpen = "");
175 
178 
181  virtual void setScenarioRunDuration(double time, bool duration = false);
182 
187  virtual void runScenario(bool useStartStopInteraction = false, DtSimulationAddress addr = DtSimSendToAll);
189  virtual void pauseScenario(bool useStartStopInteraction = false, DtSimulationAddress addr = DtSimSendToAll);
191  virtual void rewindScenario(DtSimulationAddress addr = DtSimSendToAll);
193  virtual void exitServer(DtSimulationAddress addr = DtSimSendToAll);
195  virtual void stepScenario(DtSimulationAddress addr = DtSimSendToAll);
197 
201  virtual void deleteObject(std::string name, DtSimulationAddress addr = DtSimSendToAll);
202 
205 
209  virtual void removeObjectCreatedCallback(unsigned int);
210 
215  virtual void createWaypoint(
216  const DtSimulationAddress& addr,
217  const DtVector& geocentricPosition,
218  const std::string& uniqueName = "",
219  const std::string& label = "",
220  unsigned int requestId = 0);
221 
225  virtual unsigned int createWaypoint(
227  const DtSimulationAddress& addr,
228  const DtVector& geocentricPosition,
229  const std::string& uniqueName = "",
230  const std::string& label = "");
231 
233  virtual void modifyWaypoint(
234  const std::string& uniqueId,
235  std::string* uniqueName = 0,
236  std::string* label = 0,
237  DtVector* geocentricPosition = 0,
238  const DtSimulationAddress& addr = DtSimSendToAll);
239 
244  virtual void createRoute(
245  const DtSimulationAddress& addr,
246  const std::vector<DtVector>& vertices,
247  const std::string& uniqueName = "",
248  const std::string& label = "",
249  unsigned int rId = 0);
250 
254  virtual unsigned int createRoute(
256  const DtSimulationAddress& addr,
257  const std::vector<DtVector>& vertices,
258  const std::string& uniqueName = "",
259  const std::string& label = "");
260 
262  virtual void modifyRoute(
263  const std::string& uniqueId,
264  std::string* uniqueName = 0,
265  std::string* label = 0,
266  std::vector<DtVector>* vertices = 0,
267  const DtSimulationAddress& addr = DtSimSendToAll);
268 
273  virtual void createPhaseLine(
274  const DtSimulationAddress& addr,
275  const DtVector& dbPoint1,
276  const DtVector& dbPoint2,
277  const std::string& uniqueName = "",
278  const std::string& label = "",
279  unsigned int rId = 0);
280 
284  virtual unsigned int createPhaseLine(
286  const DtSimulationAddress& addr,
287  const DtVector& dbPoint1,
288  const DtVector& dbPoint2,
289  const std::string& uniqueName = "",
290  const std::string& label = "");
291 
293  virtual void modifyPhaseLine(
294  const std::string& uniqueId,
295  std::string* uniqueName = 0,
296  std::string* label = 0,
297  DtVector* newDbPoint1 = 0,
298  DtVector* newDbPoint2 = 0,
299  const DtSimulationAddress& addr = DtSimSendToAll);
300 
306  virtual void createControlArea(
307  const DtSimulationAddress& addr,
308  const std::vector<DtVector>& vertices,
309  const std::string& uniqueName = "",
310  const std::string& label = "",
311  unsigned int rId = 0);
312 
316  virtual unsigned int createControlArea(
318  const DtSimulationAddress& addr,
319  const std::vector<DtVector>& vertices,
320  const std::string& uniqueName = "",
321  const std::string& label = "");
322 
324  virtual void modifyControlArea(
325  const std::string& uniqueId,
326  std::string* uniqueName = 0,
327  std::string* label = 0,
328  std::vector<DtVector>* newVertices = 0,
329  const DtSimulationAddress& addr = DtSimSendToAll);
330 
336  virtual void createObstacle(
337  const DtSimulationAddress& addr,
338  const std::vector<DtVector>& vertices,
339  const std::string& uniqueName = "",
340  const std::string& label = "",
341  unsigned int rId = 0);
342 
346  virtual unsigned int createObstacle(
348  const DtSimulationAddress& addr,
349  const std::vector<DtVector>& vertices,
350  const std::string& uniqueName = "",
351  const std::string& label = "") ;
352 
354  virtual void modifyObstacle(
355  const std::string& uniqueId,
356  std::string* uniqueName = 0,
357  std::string* label = 0,
358  std::vector<DtVector>* newVertices = 0,
359  const DtSimulationAddress& addr = DtSimSendToAll);
360 
367  virtual void createDisaggregationArea(
368  const DtSimulationAddress& addr,
369  const std::vector<DtVector>& vertices,
370  const std::string& uniqueName = "",
371  const std::string& label = "",
372  unsigned int rId = 0);
373 
378  virtual unsigned int createDisaggregationArea(
380  const DtSimulationAddress& addr,
381  const std::vector<DtVector>& vertices,
382  const std::string& uniqueName = "",
383  const std::string& label = "") ;
384 
386  virtual void modifyDisaggregationArea(
387  const std::string& uniqueId,
388  std::string* uniqueName = 0,
389  std::string* label = 0,
390  std::vector<DtVector>* newVertices = 0,
391  const DtSimulationAddress& addr = DtSimSendToAll);
392 
403  virtual unsigned int createOverlayObject(
404  const DtSimulationAddress& addr,
405  const DtEntityType& type,
406  const std::vector<DtVector>& vertices,
407  const DtForceType& force,
408  const std::string& name,
409  const std::string& label,
410  int color,
411  const std::string& parentName,
412  bool projection,
413  bool closedFigure,
414  const DtAppearance& appearance = DtAppearance::nullAppearance(),
415  const std::string& attachTo = "",
416  char* userData = 0,
417  int dataSize = 0,
418  const std::map<std::string, std::string>& extendedData = std::map<std::string, std::string>(),
419  const std::map<int, DtString>& extendedLabels = std::map<int, DtString>(),
421 
424  virtual void createIndirectArtillery(
425  const DtIfIndirectArtilleryData& params,
426  const std::string& overlayParent,
427  const DtSimulationAddress& addr);
428 
433  virtual void createComputedRoute(
434  const DtSimulationAddress& addr,
435  const DtVector& sourcePoint,
436  const DtVector& destPoint,
437  const std::list<std::string>& obstacleTypes,
438  const std::list<std::string>& pathTypes,
439  const std::string& uniqueName = "",
440  const std::string& label = "",
441  const std::string& overlay = "",
442  const int forceId = DtForceOther,
443  const std::map<int, DtString>& extendedLabels = std::map<int, DtString>(),
444  unsigned int requestId = 0);
445 
447  virtual void cancelCreateComputedRoute(
448  const DtSimulationAddress& addr,
449  unsigned int requestId);
450 
454  virtual void createComputedRoute(
456  const DtSimulationAddress& addr,
457  const DtVector& sourcePoint,
458  const DtVector& destPoint,
459  const std::list<std::string>& obstacleTypes,
460  const std::list<std::string>& pathTypes,
461  const std::string& uniqueName = "",
462  const std::string& label = "",
463  const std::string& overlay = "",
464  const int forceId = DtForceOther,
465  const std::map<int, DtString>& extendedLabels = std::map<int, DtString>());
467 
470 
473  virtual unsigned int createEntity(DtVrfObjectCreatedCallbackFunction fcn, DtSimulationAddress addr, DtEntityCreationData,
474  const std::list<DtAdminContent*>& content = std::list<DtAdminContent*>(),
475  const std::list<DtSimInterfaceContent*>& ifaceContent = std::list<DtSimInterfaceContent*>());
476 
477  virtual void createEntity(DtSimulationAddress addr, DtEntityCreationData,
478  const std::list<DtAdminContent*>& content = std::list<DtAdminContent*>(),
479  const std::list<DtSimInterfaceContent*>& ifaceContent = std::list<DtSimInterfaceContent*>());
480 
482  virtual void createEntity(
483  const DtSimulationAddress& addr,
484  const DtEntityType& type,
485  const DtVector& geocentricPosition,
486  DtForceType force,
487  DtReal heading,
488  const std::string& uniqueName = "",
489  const std::string& label = "",
490  bool groundClamp = true, const std::list<DtAdminContent*>& content = std::list<DtAdminContent*>(),
491  const std::list<DtSimInterfaceContent*>& ifaceContent = std::list<DtSimInterfaceContent*>(),
492  const std::map<std::string, std::string>& extendedData = std::map<std::string, std::string>(),
493  const std::map<int, DtString>& extendedLabels = std::map<int, DtString>());
494 
498  virtual unsigned int createEntity(
500  const DtSimulationAddress& addr,
501  const DtEntityType& type,
502  const DtVector& geocentricPosition,
503  DtForceType force,
504  DtReal heading,
505  const std::string& uniqueName = "",
506  const std::string& label = "",
507  bool groundClamp = true, const std::list<DtAdminContent*>& content = std::list<DtAdminContent*>(),
508  const std::list<DtSimInterfaceContent*>& ifaceContent = std::list<DtSimInterfaceContent*>(),
509  const std::map<std::string, std::string>& extendedData = std::map<std::string, std::string>(),
510  const std::map<int, DtString>& extendedLabels = std::map<int, DtString>());
511 
513  virtual unsigned int createAggregate(
515  const DtSimulationAddress& addr,
516  const DtEntityType& type,
517  const DtVector& geocentricPosition,
518  DtForceType force,
519  DtReal heading,
520  const std::string& uniqueName,
521  const std::string& label = "",
522  DtAggregateState initialAggregateState = DtDisaggregated,
523  const std::list<DtAdminContent*>& content = std::list<DtAdminContent*>(),
524  const std::list<DtSimInterfaceContent*>& ifaceContent = std::list<DtSimInterfaceContent*>(),
525  const std::map<std::string, std::string>& extendedData = std::map<std::string, std::string>(),
526  const std::map<int, DtString>& extendedLabels = std::map<int, DtString>());
527 
529  virtual void aggregateAs(const std::vector<makVrv::DtVrlinkSimulatedEntityState>& names, const DtEntityType& type,
530  int force, DtAggregateState initialAggregateState, DtSimulationAddress addr, unsigned int requestId = 0);
531 
535  virtual unsigned int aggregateAs(DtVrfObjectCreatedCallbackFunction fcn,
536  const std::vector<makVrv::DtVrlinkSimulatedEntityState>& names, const DtEntityType& type,
537  int force, DtAggregateState initialAggregateState, DtSimulationAddress addr);
538 
541  virtual void addToOrganization(const std::string& childId, const std::string& superiorId,
542  DtSimulationAddress addr = DtSimSendToAll);
543 
547  virtual void addToForceLevelOrganization(const std::string& entityId, DtSimulationAddress addr = DtSimSendToAll);
548 
551  virtual void removeFromOrganization(
552  const std::string& objectId,
553  const DtSimulationAddress& addr = DtSimSendToAll);
555 
561 
563  virtual void createEnvironmentalObject(DtSimulationAddress addr, DtEntityType, int force, const std::vector<DtVector>&,
565  const std::list<DtAdminContent*>& content = std::list<DtAdminContent*>(),
566  const std::list<DtSimInterfaceContent*>& ifaceContent = std::list<DtSimInterfaceContent*>());
567 
577  virtual void sendVrfObjectModifyMsg(
578  const DtSimulationAddress& addr,
579  const std::string& entityId,
580  const std::string* name = 0,
581  const std::vector<DtVector>& = std::vector<DtVector>(),
582  int* force = 0,
583  double* heading = 0,
584  const std::string* label = 0,
585  DtAppearance* appearance = 0,
586  const std::string* overlayParent = 0,
587  const std::string* userData = 0,
588  const std::map<std::string, std::string>* extendedData = 0,
589  const std::map<int, DtString>* extendedLabels = 0);
590 
594  virtual void sendVrfObjectCreateMsg(
595  const DtSimulationAddress& addr,
596  unsigned int requestId,
597  const std::string& name,
598  const DtObjectType& type,
599  const std::vector<DtVector>& vertices,
600  const std::string& label,
601  const DtAppearance& appearance,
602  DtForceType force,
603  bool projection,
604  bool closedFigure,
605  DtReal heading,
606  bool createSubObjects,
607  const std::string& overlayParent = "",
608  bool clampToGroundFlag = true,
609  const std::string& initialFormation = "",
610  DtAggregateState initialAggregateState = DtDisaggregated,
611  const std::string& userData = "", const std::list<DtAdminContent*>& content = std::list<DtAdminContent*>(),
612  const std::list<DtSimInterfaceContent*>& ifaceContent = std::list<DtSimInterfaceContent*>(),
613  const std::map<std::string, std::string>& extendedData = std::map<std::string, std::string>(),
614  const std::map<int, DtString>& extendedLabels = std::map<int, DtString>());
615 
618  virtual unsigned int addCreateCallbackFunction(DtVrfObjectCreatedCallbackFunction);
619 
622  virtual unsigned int addCreateComputedRouteCallbackFunction(DtComputedRouteResponseCallbackFunction);
623 
625  virtual void removeCreateComputedRouteCallbackFunction(int rId);
626 
633  virtual void sendVrfOverlayObjectModifyMsg(
634  const DtSimulationAddress& addr,
635  const std::string& id,
636  int* color = 0,
637  const std::string* parentName = 0,
638  const std::string* attachTo = 0,
639  const std::string* userData = 0,
640  const std::map<std::string, std::string>* extendedData = 0);
641 
643  virtual void sendVrfIndirectArtilleryObjectModifyMsg(
644  const DtSimulationAddress& addr,
645  const DtEntityIdentifier& id,
646  const DtIfIndirectArtilleryData& mod);
648 
654 
656  virtual void setLabel(
657  const std::string& id, const std::string& label,
658  const DtSimulationAddress& addr = DtSimSendToAll);
659 
661  virtual void setExtendedLabels(
662  const std::string& id, const std::map<int, DtString>& extendedLabels,
663  const DtSimulationAddress& addr = DtSimSendToAll);
664 
666  virtual void setOverlayParent(
667  const std::string& id, const std::string& label,
668  const DtSimulationAddress& addr = DtSimSendToAll);
669 
671  virtual void setAltitude(
672  const std::string& name, double altitude, bool aboveGroundLevel = false,
673  const DtSimulationAddress& addr = DtSimSendToAll);
674 
676  virtual void setLocation(
677  const std::string& name, DtVector coord,
678  const DtSimulationAddress& addr = DtSimSendToAll);
679 
683  virtual void setAppearance(
684  const std::string& name, int appearance,
685  const DtSimulationAddress& addr = DtSimSendToAll);
686 
690  virtual void setCapabilities(
691  const std::string& name, int capabilities,
692  const DtSimulationAddress& addr = DtSimSendToAll);
693 
695  virtual void setHeading(
696  const std::string& name, double degrees,
697  const DtSimulationAddress& addr = DtSimSendToAll);
698 
700  virtual void setForce(
701  const std::string& name, DtForceType force,
702  const DtSimulationAddress& addr = DtSimSendToAll);
703 
705  virtual void setResource(const std::string& name,
706  const char* resourceType, double value,
707  const DtSimulationAddress& addr = DtSimSendToAll);
708 
712  virtual void setRulesOfEngagement(
713  const std::string& name, const char* rulesType,
714  const DtSimulationAddress& addr = DtSimSendToAll);
715 
717  virtual void setSectorOfResponsibility(
718  const std::string& name, double center, double size,
719  const DtSimulationAddress& addr = DtSimSendToAll);
720 
724  virtual void setSpeed(
725  const std::string& name, double speed,
726  const DtSimulationAddress& addr = DtSimSendToAll);
727 
730  virtual void setCurrentSpeed(
731  const std::string& name, double speed,
732  const DtSimulationAddress& addr = DtSimSendToAll);
733 
735  virtual void setTarget(
736  const std::string& name, const std::string& target,
737  const DtSimulationAddress& addr = DtSimSendToAll);
738 
741  virtual void setSuperior(
742  const std::string& name, const std::string& superior,
743  const DtSimulationAddress& addr = DtSimSendToAll);
744 
748  virtual void setTaskedBySuperior(const std::string& name,
749  const DtSimulationAddress& addr = DtSimSendToAll);
750 
752  virtual void setConcealed(const std::string& name,
753  bool yes, const DtSimulationAddress& addr = DtSimSendToAll);
754 
756  virtual void setEmitter(const std::string& name,
757  int emitterId, bool on,
758  const DtSimulationAddress& addr = DtSimSendToAll);
759 
761  virtual void setIff(const std::string& name,
762  bool mode1on, int mode1code,
763  bool mode2on, int mode2code,
764  bool mode3on, int mode3code,
765  bool mode4on, int mode4code,
766  DtIffAtcNavaidsAltParm4 altParm4,
767  bool modeCon, bool useAltModeC,
768  bool modeSon, bool emergency,
769  bool flash, bool sti, bool modeSTcasI,
770  int pin, bool mode5LevelSelection,
771  unsigned int messageFormatsPresent, unsigned int nationalOrigin,
772  unsigned int navigationSource, unsigned int figureOfMerit,
773  const DtSimulationAddress& addr = DtSimSendToAll);
774 
778  virtual void restore(const std::string& name,
779  const DtSimulationAddress& addr = DtSimSendToAll);
780 
783  virtual void setDestroyed(const std::string& name,
784  const DtSimulationAddress& addr = DtSimSendToAll);
785 
787  virtual void setLifeformWeaponState(
788  const std::string& name, DtWeaponState weapon,
789  const DtSimulationAddress& addr = DtSimSendToAll);
790 
792  virtual void setLifeformPosture(
793  const std::string& name, DtLifeformState posture,
794  const DtSimulationAddress& addr = DtSimSendToAll);
795 
797  virtual void setAggregateFormation(
798  const std::string& leader, const std::string& formationName,
799  const DtSimulationAddress& addr = DtSimSendToAll);
800 
804  virtual void reorganizeAggregate(const std::string& leader,
805  const DtSimulationAddress& addr = DtSimSendToAll);
806 
810  virtual void disaggregate(std::string name, DtSimulationAddress addr = DtSimSendToAll);
811 
815  virtual void aggregate(std::string name, DtSimulationAddress addr = DtSimSendToAll);
816 
818  virtual void setJoystickEnabled(std::string name, DtSimulationAddress addr = DtSimSendToAll);
819 
821  virtual void setJoystickDisabled(std::string name, DtSimulationAddress addr = DtSimSendToAll);
822 
825  virtual void sendSetDataMsg(
826  const std::string& recipient, DtSetDataRequest* msg,
827  const DtSimulationAddress& addr = DtSimSendToAll,
828  bool updateScenario = true);
829 
832  virtual void sendSetRequest(const DtSetDataRequest& s, const std::string& name,
833  const DtSimulationAddress& addr = DtSimSendToAll, bool updateScenario = true);
834 
836  virtual void sendSetRequest(const DtSetDataRequest& s, const std::vector<std::string>& names,
837  const DtSimulationAddress& addr = DtSimSendToAll, bool updateScenario = true);
838 
844  virtual void requestIndirectArtilleryInformation(const DtString&);
846 
850 
853  virtual void moveAlongRoute(
854  const std::string& entityName, const std::string& routeName,
855  const DtSimulationAddress& addr = DtSimSendToAll);
856 
859  virtual void moveToWaypoint(
860  const std::string& entityName, const std::string& waypoint,
861  const DtSimulationAddress& addr = DtSimSendToAll);
862 
866  virtual void moveToLocation(
867  const std::string& entityName, const DtVector& destinationLocation,
868  const DtSimulationAddress& addr = DtSimSendToAll);
869 
872  virtual void patrolBetweenWaypoints(
873  const std::string& name,
874  const std::string& waypoint1, const std::string& waypoint2,
875  const DtSimulationAddress& addr = DtSimSendToAll);
876 
879  virtual void patrolAlongRoute(
880  const std::string& name, const std::string& route,
881  const DtSimulationAddress& addr = DtSimSendToAll);
882 
888  virtual void followEntity(
889  const std::string& name,
890  const std::string& leader, const DtVector& offset,
891  const DtSimulationAddress& addr = DtSimSendToAll);
892 
895  virtual void wait(
896  const std::string& name,
897  const DtSimulationAddress& addr = DtSimSendToAll);
898 
901  virtual void waitDuration(
902  const std::string& name, DtTime duration,
903  const DtSimulationAddress& addr = DtSimSendToAll);
904 
908  virtual void waitElapsed(
909  const std::string& name, DtTime elapsed,
910  const DtSimulationAddress& addr = DtSimSendToAll);
911 
916  virtual void requestCurrentTasks(const std::string& entityName);
917 
921  virtual void subscribeForTaskInformation(const std::string& entityName);
922 
925  virtual void unsubscribeForTaskInformation(const std::string& entityName);
926 
930  virtual void sendTaskMsg(
931  const std::string& recipient, DtSimTask* task,
932  const DtSimulationAddress& addr = DtSimSendToAll);
933 
935  virtual void sendTaskRequest(const DtSimTask& s, const std::vector<std::string>& names, const DtSimulationAddress& addr = DtSimSendToAll);
937  virtual void sendTaskRequest(const DtSimTask& s, const std::string& name, const DtSimulationAddress& addr = DtSimSendToAll);
938 
943  virtual void requestTasksAndSetsFor(std::vector<DtString> name);
945 
952 
955  virtual void abandonPlan(std::string name, DtSimulationAddress addr = DtSimSendToAll);
956 
959  virtual void skipTask(std::string name, DtSimulationAddress addr = DtSimSendToAll);
960 
962  virtual void cancelReactiveTask(std::string name, std::string scriptId, DtSimulationAddress addr = DtSimSendToAll);
963 
966  virtual void restartPlan(std::string name, DtSimulationAddress addr = DtSimSendToAll);
967 
969  virtual void assignPlanByName(std::string name, const DtPlan*, DtSimulationAddress addr = DtSimSendToAll);
970 
972  virtual void assignMultiplePlanByName(std::vector<std::string> names, const DtPlan*, DtSimulationAddress addr = DtSimSendToAll);
973 
979  virtual void requestPlan(std::string name, DtSimulationAddress addr = DtSimSendToAll);
980 
986  virtual void subscribePlan(std::string name, DtSimulationAddress addr = DtSimSendToAll);
987 
994  virtual void requestMultiplePlans(std::vector<std::string> names, DtSimulationAddress addr = DtSimSendToAll);
995 
1000  virtual void requestGlobalPlans(DtSimulationAddress addr = DtSimSendToAll);
1001 
1006  virtual void requestGlobalPlan(std::string name, DtSimulationAddress addr = DtSimSendToAll);
1007 
1010  virtual void assignGlobalPlanByName(std::string name, const DtPlan*, DtSimulationAddress addr = DtSimSendToAll);
1011 
1013  virtual void deleteGlobalPlan(std::string, DtSimulationAddress addr = DtSimSendToAll);
1015 
1017  virtual void setTimeoutInterval(int);
1018 
1024  virtual void requestDIGuyAppearancesAndAnimations(std::vector<DtString> name);
1025 
1032  virtual void requestResourcesFor(std::vector<std::string> names, DtSimulationAddress addr = DtSimSendToAll);
1033 
1035  virtual void sendMessageToObject(const DtVrfObjectMessage&, DtSimulationAddress addr = DtSimSendToAll);
1036 
1038  virtual void sendObjectMessageAndDeleteContent(DtVrfObjectMessage* message, DtSimulationAddress addr = DtSimSendToAll);
1039 
1041  virtual void requestForces(DtSimulationAddress addr);
1042 
1045  virtual void requestDoctrines();
1046 
1049  virtual void requestAssignedDoctrines();
1050 
1052  virtual unsigned long generateRequestId();
1053 
1054  public:
1055 
1057  virtual void addSetCreatorFcn(const DtSetMessageType&, DtSetDataRequestCreatorFcn);
1058 
1060  virtual void addTaskCreatorFcn(const DtSimTaskMessageType&, DtSimTaskCreatorFcn);
1061 
1063  virtual void addInterfaceContentCreatorFcn(int t, DtInterfaceContentCreatorFcn);
1064 
1066  virtual void addAdminContentCreatorFcn(const DtAdminContentMessageType&, DtAdminContentCreatorFcn);
1067 
1069  virtual void addConditionCreatorFcn(std::string, int, DtCondExprCreatorFcn);
1070 
1072  virtual void addReportCreatorFcn(const DtSimReportMessageType&, DtSimReportCreatorFcn);
1073 
1075  virtual void addObjectMessageCreatorFcn(int, DtVrfObjectMessageCreatorFcn);
1076 
1078  virtual void addSimulationCommandCreatorFcn(const DtSimCommandMessageType&, DtSimCommandCreatorFcn);
1079 
1082  virtual void sendMessage(const DtSimInterfaceContent& message, DtSimulationAddress addr = DtSimSendToAll);
1083  virtual void sendMessageAndDeleteContent(DtSimInterfaceContent* message, DtSimulationAddress addr = DtSimSendToAll);
1084 
1091  virtual void embarkOn(const std::vector<std::string>& children, const std::string& parentName,
1092  bool useSlot = true, const DtVector& overridePosition = DtVector::zero(), DtSimulationAddress addr = DtSimSendToAll);
1093 
1095  virtual void disembark(const std::vector<std::string>& children, DtSimulationAddress addr = DtSimSendToAll);
1096 
1098  virtual void disembarkAll(const std::vector<std::string>& parents, DtSimulationAddress addr = DtSimSendToAll);
1099 
1101  virtual void attachTo(const std::vector<std::string>& ids, const std::string& parentName);
1102 
1104  virtual void detachAll(const std::vector<std::string>& ids);
1105 
1108  virtual void logObjectConsoleToFile(const std::string& name, const std::string& filename);
1109 
1112  virtual void stopLoggingObjectConsoleToFile(const std::string& objectName);
1113 
1115  virtual void setObjectNotifyLevel(const std::string& name, int);
1116 
1118  virtual void setTimeOfDay(time_t seconds);
1119  virtual void setTimeOfDay(int hours, int minutes, int seconds);
1120 
1122  virtual void setDateAndTimeOfDay(time_t seconds);
1123  virtual void setDateAndTimeOfDay(int year, int month, int day, int hours, int minutes, int seconds);
1124 
1126  virtual void setUseDayNightIlluminationModel(bool);
1127 
1129  virtual void setAggregateOnCreate(bool);
1130  bool aggregateOnCreate() const;
1131 
1134  virtual void requestScenarioDescription(DtSimulationAddress);
1135 
1137  virtual void setScenarioDescription(const DtString&, DtSimulationAddress addr = DtSimSendToAll);
1138 
1139  public:
1141  virtual void sendLoggerSetFilename(std::string filename);
1142 
1143  virtual void sendLoggerRecordMessage();
1144 
1145  virtual void sendLoggerStopMessage();
1146 
1147  protected:
1149  virtual void processObjectCreated(DtSimMessage*);
1150 
1152  virtual void processComputedRouteCreated(DtSimMessage*);
1153 
1155  virtual void setActivated(bool);
1156 
1164  virtual bool addStatementsAndSendPlan(const DtPlan& plan, DtIfPlan& planMsg,
1165  const DtSimulationAddress& addr = DtSimSendToAll,
1166  int *retiStatus = 0, DtString* retsStmt = 0);
1167 
1169  virtual void indirectArtilleryCreated(DtString, const DtEntityIdentifier&, DtIfIndirectArtilleryData);
1170 
1171  public:
1175 
1177  boost::signal<void (const DtScenario*)> signal_loadedScenario;
1178 
1180  boost::signal<void ()> signal_scenarioModified;
1181 
1183  boost::signal<void (const DtScenarioLoadInformation&)> signal_loadScenario;
1184 
1186  boost::signal<void (const DtScenario*, DtPreserveMappingsFcn fcn, void* userData)> signal_saveScenario;
1187 
1190  boost::signal<void (std::string, bool& shouldDelete)> signal_shouldDeleteObject;
1191 
1193  boost::signal<void ()> signal_closeScenario;
1194 
1197  boost::signal<void (DtIfCreateVrfObject&)> signal_aboutToSendCreateMessage;
1198 
1200  boost::signal<void (DtIfModifyVrfObject&)> signal_aboutToSendModifyMessage;
1201 
1203 
1204  protected:
1206  virtual void slot_preTick(makVrv::DtDe* de);
1207 
1208  protected:
1210 
1211  typedef std::map<unsigned int, DtVrfObjectCreatedCallbackFunction> CreateCallbacks;
1212 
1214 
1215  typedef std::map<unsigned int, DtComputedRouteResponseCallbackFunction> ComputedRouteCallbacks;
1216 
1218  };
1219 }

Document ID: Generated on Wed Jul 29 00:55:00 EDT 2015 from SVN revision 155257
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)