VR-Forces Development_Version 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 #include <vrfutil/rwUUID.h>
38 
39 #include <boost/function.hpp>
40 
42 class DtSetDataRequest;
44 class DtSimTask;
45 class DtAdminMessage;
48 class DtIfPlan;
53 
54 typedef boost::function<void (DtString, const DtUUID&, const DtEntityIdentifier&, const DtObjectType&)> DtVrfObjectCreatedCallbackFunction;
55 typedef boost::function<void (bool, DtString, const DtUUID&, const DtEntityIdentifier&)> DtComputedRouteResponseCallbackFunction;
56 
57 namespace makVrf
58 {
59  class DtGuiThreadNetworkCallbackManager;
60 
87  {
88  public:
89 
92 
94  static DtGuiThreadVrfRemoteController& instance(makVrv::DtDe& de);
95 
96  public:
99  DtVrfBackendSettingsManager& backendSettingsManager();
100 
103  DtVrfSimBackendManager& backendManager();
104 
106  DtVrfSpotReportManager& spotReportManager();
107 
109  DtVrfResourceManager& resourceManager();
110 
112  DtGuiThreadNetworkCallbackManager& messageHandler();
113 
114  public:
117 
119  virtual void rollbackToSnapshot(double simTime);
120 
126  virtual void newScenario(const DtScenario*, time_t startTimeOfDay = 12 * 3600);
128  virtual void newScenario(const DtFilename& terrainDatabase, time_t startTimeOfDay = 12 * 3600);
129 
134  virtual void importScenarioDescriptionFile(const std::string& file, DtSimulationAddress, const std::string& description ,
135  const std::map<std::string, std::string>& importData);
136 
141  virtual void createSimulationObjectGroup(const DtSimulationAddress&, const DtString& simulationObjectGroup,
142  const DtVector& createPosition, double offsetRotation, int createFlags, int force);
143 
146  virtual bool saveSimulationObjectGroup(const DtFilename& smsDirectory, const std::string& groupName,
147  const std::string& groupDescription, int creationFlags, const DtSimulationAddress& addr,
148  const std::map<DtString, DtString>& additionalInformation = std::map<DtString, DtString>());
149 
152  virtual void exportScenarioDescriptionFile(const std::string& file, DtSimulationAddress, const std::string& description,
153  const std::map<std::string, std::string>& importData);
154 
170  virtual void loadScenario(const DtScenarioLoadInformation&);
172  virtual bool loadScenario(const DtFilename&);
173  virtual bool importScenario(const DtFilename&);
174 
189  virtual void saveScenario(const DtScenario*, DtPreserveMappingsFcn fcn = 0, void* userData = 0,
190  bool queueSave = false, int putIntoPlayMode = 0);
191 
195  virtual void saveCheckpoints(const std::vector<DtScenario*>&, const DtFilename& scenarioName);
196 
198  virtual void clearSavingCheckpoints();
199 
202  virtual void takeSnapshot(DtSimulationAddress addr = DtSimSendToAll);
203 
206  virtual void takeBaseSnapshot();
207 
213  virtual void closeScenario(const DtFilename& databaseToOpen = "", bool forceCloseScenario = false);
215 
218 
221  virtual void setScenarioRunDuration(double time, bool duration = false);
222 
227  virtual void runScenario(bool useStartStopInteraction = false, DtSimulationAddress addr = DtSimSendToAll);
229  virtual void pauseScenario(bool useStartStopInteraction = false, DtSimulationAddress addr = DtSimSendToAll);
231  virtual void rewindScenario(DtSimulationAddress addr = DtSimSendToAll);
233  virtual void exitServer(DtSimulationAddress addr = DtSimSendToAll);
235  virtual void stepScenario(DtSimulationAddress addr = DtSimSendToAll);
237 
241  virtual void deleteObject(const DtUUID&, DtSimulationAddress addr = DtSimSendToAll);
242 
245 
249  virtual void removeObjectCreatedCallback(unsigned int);
250 
255  virtual void createWaypoint(
256  const DtSimulationAddress& addr,
257  const DtVector& geocentricPosition,
258  const std::string& uniqueName = "",
259  const std::string& label = "",
260  unsigned int requestId = 0);
261 
265  virtual unsigned int createWaypoint(
267  const DtSimulationAddress& addr,
268  const DtVector& geocentricPosition,
269  const std::string& uniqueName = "",
270  const std::string& label = "");
271 
273  virtual void modifyWaypoint(
274  const DtUUID& uuid,
275  std::string* uniqueName = 0,
276  std::string* label = 0,
277  DtVector* geocentricPosition = 0,
278  const DtSimulationAddress& addr = DtSimSendToAll);
279 
284  virtual void createRoute(
285  const DtSimulationAddress& addr,
286  const std::vector<DtVector>& vertices,
287  const std::string& uniqueName = "",
288  const std::string& label = "",
289  unsigned int rId = 0);
290 
294  virtual unsigned int createRoute(
296  const DtSimulationAddress& addr,
297  const std::vector<DtVector>& vertices,
298  const std::string& uniqueName = "",
299  const std::string& label = "");
300 
302  virtual void modifyRoute(
303  const DtUUID& uuid,
304  std::string* uniqueName = 0,
305  std::string* label = 0,
306  std::vector<DtVector>* vertices = 0,
307  const DtSimulationAddress& addr = DtSimSendToAll);
308 
313  virtual void createPhaseLine(
314  const DtSimulationAddress& addr,
315  const DtVector& dbPoint1,
316  const DtVector& dbPoint2,
317  const std::string& uniqueName = "",
318  const std::string& label = "",
319  unsigned int rId = 0);
320 
324  virtual unsigned int createPhaseLine(
326  const DtSimulationAddress& addr,
327  const DtVector& dbPoint1,
328  const DtVector& dbPoint2,
329  const std::string& uniqueName = "",
330  const std::string& label = "");
331 
333  virtual void modifyPhaseLine(
334  const DtUUID& uuid,
335  std::string* uniqueName = 0,
336  std::string* label = 0,
337  DtVector* newDbPoint1 = 0,
338  DtVector* newDbPoint2 = 0,
339  const DtSimulationAddress& addr = DtSimSendToAll);
340 
346  virtual void createControlArea(
347  const DtSimulationAddress& addr,
348  const std::vector<DtVector>& vertices,
349  const std::string& uniqueName = "",
350  const std::string& label = "",
351  unsigned int rId = 0);
352 
356  virtual unsigned int createControlArea(
358  const DtSimulationAddress& addr,
359  const std::vector<DtVector>& vertices,
360  const std::string& uniqueName = "",
361  const std::string& label = "");
362 
364  virtual void modifyControlArea(
365  const DtUUID& uuid,
366  std::string* uniqueName = 0,
367  std::string* label = 0,
368  std::vector<DtVector>* newVertices = 0,
369  const DtSimulationAddress& addr = DtSimSendToAll);
370 
376  virtual void createObstacle(
377  const DtSimulationAddress& addr,
378  const std::vector<DtVector>& vertices,
379  const std::string& uniqueName = "",
380  const std::string& label = "",
381  unsigned int rId = 0);
382 
386  virtual unsigned int createObstacle(
388  const DtSimulationAddress& addr,
389  const std::vector<DtVector>& vertices,
390  const std::string& uniqueName = "",
391  const std::string& label = "") ;
392 
394  virtual void modifyObstacle(
395  const DtUUID& uuid,
396  std::string* uniqueName = 0,
397  std::string* label = 0,
398  std::vector<DtVector>* newVertices = 0,
399  const DtSimulationAddress& addr = DtSimSendToAll);
400 
407  virtual void createDisaggregationArea(
408  const DtSimulationAddress& addr,
409  const std::vector<DtVector>& vertices,
410  const std::string& uniqueName = "",
411  const std::string& label = "",
412  unsigned int rId = 0);
413 
418  virtual unsigned int createDisaggregationArea(
420  const DtSimulationAddress& addr,
421  const std::vector<DtVector>& vertices,
422  const std::string& uniqueName = "",
423  const std::string& label = "") ;
424 
426  virtual void modifyDisaggregationArea(
427  const DtUUID& uuid,
428  std::string* uniqueName = 0,
429  std::string* label = 0,
430  std::vector<DtVector>* newVertices = 0,
431  const DtSimulationAddress& addr = DtSimSendToAll);
432 
443  virtual unsigned int createOverlayObject(
444  const DtSimulationAddress& addr,
445  const DtEntityType& type,
446  const std::vector<DtVector>& vertices,
447  const DtForceType& force,
448  const std::string& name,
449  const std::string& label,
450  int color,
451  const std::string& parentName,
452  bool projection,
453  bool closedFigure,
454  const DtAppearance& appearance = DtAppearance::nullAppearance(),
455  const std::string& attachTo = "",
456  char* userData = 0,
457  int dataSize = 0,
458  const std::map<std::string, std::string>& extendedData = std::map<std::string, std::string>(),
459  const std::map<int, DtString>& extendedLabels = std::map<int, DtString>(),
461 
463  virtual void setPhysicalLineWidth(const DtSimulationAddress& addr,
464  const DtUUID& entityId, double w);
465 
467  virtual void setPhysicalLineHeight(const DtSimulationAddress& addr,
468  const DtUUID& entityId, double h);
469 
471  virtual void setCeiling(const DtSimulationAddress& addr,
472  const DtUUID& entityId, double c);
473 
476  virtual void createIndirectArtillery(
477  const DtIfIndirectArtilleryData& params,
478  const std::string& overlayParent,
479  const DtSimulationAddress& addr);
480 
485  virtual void createComputedRoute(
486  const DtSimulationAddress& addr,
487  const DtVector& sourcePoint,
488  const DtVector& destPoint,
489  const std::list<std::string>& obstacleTypes,
490  const std::list<std::string>& pathTypes,
491  const std::string& uniqueName = "",
492  const std::string& label = "",
493  const std::string& overlay = "",
494  const int forceId = DtForceOther,
495  const std::map<int, DtString>& extendedLabels = std::map<int, DtString>(),
496  unsigned int requestId = 0);
497 
499  virtual void cancelCreateComputedRoute(
500  const DtSimulationAddress& addr,
501  unsigned int requestId);
502 
506  virtual void createComputedRoute(
508  const DtSimulationAddress& addr,
509  const DtVector& sourcePoint,
510  const DtVector& destPoint,
511  const std::list<std::string>& obstacleTypes,
512  const std::list<std::string>& pathTypes,
513  const std::string& uniqueName = "",
514  const std::string& label = "",
515  const std::string& overlay = "",
516  const int forceId = DtForceOther,
517  const std::map<int, DtString>& extendedLabels = std::map<int, DtString>());
519 
522 
525  virtual unsigned int createEntity(DtVrfObjectCreatedCallbackFunction fcn, DtSimulationAddress addr, DtEntityCreationData,
526  const std::list<DtAdminContent*>& content = std::list<DtAdminContent*>(),
527  const std::list<DtSimInterfaceContent*>& ifaceContent = std::list<DtSimInterfaceContent*>());
528 
529  virtual void createEntity(DtSimulationAddress addr, DtEntityCreationData,
530  const std::list<DtAdminContent*>& content = std::list<DtAdminContent*>(),
531  const std::list<DtSimInterfaceContent*>& ifaceContent = std::list<DtSimInterfaceContent*>());
532 
534  virtual void createEntity(
535  const DtSimulationAddress& addr,
536  const DtEntityType& type,
537  const DtVector& geocentricPosition,
538  DtForceType force,
539  DtReal heading,
540  const std::string& uniqueName = "",
541  const std::string& label = "",
542  bool groundClamp = true, const std::list<DtAdminContent*>& content = std::list<DtAdminContent*>(),
543  const std::list<DtSimInterfaceContent*>& ifaceContent = std::list<DtSimInterfaceContent*>(),
544  const std::map<std::string, std::string>& extendedData = std::map<std::string, std::string>(),
545  const std::map<int, DtString>& extendedLabels = std::map<int, DtString>());
546 
550  virtual unsigned int createEntity(
552  const DtSimulationAddress& addr,
553  const DtEntityType& type,
554  const DtVector& geocentricPosition,
555  DtForceType force,
556  DtReal heading,
557  const std::string& uniqueName = "",
558  const std::string& label = "",
559  bool groundClamp = true, const std::list<DtAdminContent*>& content = std::list<DtAdminContent*>(),
560  const std::list<DtSimInterfaceContent*>& ifaceContent = std::list<DtSimInterfaceContent*>(),
561  const std::map<std::string, std::string>& extendedData = std::map<std::string, std::string>(),
562  const std::map<int, DtString>& extendedLabels = std::map<int, DtString>());
563 
565  virtual unsigned int createAggregate(
567  const DtSimulationAddress& addr,
568  const DtEntityType& type,
569  const DtVector& geocentricPosition,
570  DtForceType force,
571  DtReal heading,
572  const std::string& uniqueName,
573  const std::string& label = "",
574  DtAggregateState initialAggregateState = DtDisaggregated,
575  const std::list<DtAdminContent*>& content = std::list<DtAdminContent*>(),
576  const std::list<DtSimInterfaceContent*>& ifaceContent = std::list<DtSimInterfaceContent*>(),
577  const std::map<std::string, std::string>& extendedData = std::map<std::string, std::string>(),
578  const std::map<int, DtString>& extendedLabels = std::map<int, DtString>());
579 
581  virtual void aggregateAs(const std::vector<DtUUID>& uuids, const DtEntityType& type,
582  int force, DtAggregateState initialAggregateState, DtSimulationAddress addr, unsigned int requestId = 0);
583 
587  virtual unsigned int aggregateAs(DtVrfObjectCreatedCallbackFunction fcn,
588  const std::vector<DtUUID>& uuids, const DtEntityType& type,
589  int force, DtAggregateState initialAggregateState, DtSimulationAddress addr);
590 
593  virtual void addToOrganization(const DtUUID& child, const DtUUID& superior,
594  DtSimulationAddress addr = DtSimSendToAll);
595 
599  virtual void addToForceLevelOrganization(const DtUUID& uuid, DtSimulationAddress addr = DtSimSendToAll);
600 
603  virtual void removeFromOrganization(
604  const DtUUID& uuid,
605  const DtSimulationAddress& addr = DtSimSendToAll);
607 
613 
615  virtual void createEnvironmentalObject(DtSimulationAddress addr, DtEntityType, int force, const std::vector<DtVector>&,
617  const std::list<DtAdminContent*>& content = std::list<DtAdminContent*>(),
618  const std::list<DtSimInterfaceContent*>& ifaceContent = std::list<DtSimInterfaceContent*>());
619 
629  virtual void sendVrfObjectModifyMsg(
630  const DtSimulationAddress& addr,
631  const DtUUID& uuid,
632  const std::string* name = 0,
633  const std::vector<DtVector>& = std::vector<DtVector>(),
634  int* force = 0,
635  double* heading = 0,
636  const std::string* label = 0,
637  DtAppearance* appearance = 0,
638  const std::string* overlayParent = 0,
639  const std::string* userData = 0,
640  const std::map<std::string, std::string>* extendedData = 0,
641  const std::map<int, DtString>* extendedLabels = 0,
642  bool mergeExtendedData = true);
643 
647  virtual void sendVrfObjectCreateMsg(
648  const DtSimulationAddress& addr,
649  unsigned int requestId,
650  const std::string& name,
651  const DtObjectType& type,
652  const std::vector<DtVector>& vertices,
653  const std::string& label,
654  const DtAppearance& appearance,
655  DtForceType force,
656  bool projection,
657  bool closedFigure,
658  DtReal heading,
659  bool createSubObjects,
660  const std::string& overlayParent = "",
661  bool clampToGroundFlag = true,
662  const std::string& initialFormation = "",
663  DtAggregateState initialAggregateState = DtDisaggregated,
664  const std::string& userData = "", const std::list<DtAdminContent*>& content = std::list<DtAdminContent*>(),
665  const std::list<DtSimInterfaceContent*>& ifaceContent = std::list<DtSimInterfaceContent*>(),
666  const std::map<std::string, std::string>& extendedData = std::map<std::string, std::string>(),
667  const std::map<int, DtString>& extendedLabels = std::map<int, DtString>());
668 
671  virtual unsigned int addCreateCallbackFunction(DtVrfObjectCreatedCallbackFunction);
672 
675  virtual unsigned int addCreateComputedRouteCallbackFunction(DtComputedRouteResponseCallbackFunction);
676 
678  virtual void removeCreateComputedRouteCallbackFunction(int rId);
679 
686  virtual void sendVrfOverlayObjectModifyMsg(
687  const DtSimulationAddress& addr,
688  const DtUUID& uuid,
689  int* color = 0,
690  const std::string* parentName = 0,
691  const DtUUID* attachTo = 0,
692  const std::string* userData = 0);
693 
695  virtual void sendVrfIndirectArtilleryObjectModifyMsg(
696  const DtSimulationAddress& addr,
697  const DtUUID& uuid,
698  const DtIfIndirectArtilleryData& mod);
700 
706 
708  virtual void setLabel(
709  const DtUUID& uuid, const std::string& label,
710  const DtSimulationAddress& addr = DtSimSendToAll);
711 
713  virtual void setExtendedLabels(
714  const DtUUID& uuid, const std::map<int, DtString>& extendedLabels,
715  const DtSimulationAddress& addr = DtSimSendToAll);
716 
718  virtual void setOverlayParent(
719  const DtUUID& uuid, const std::string& label,
720  const DtSimulationAddress& addr = DtSimSendToAll);
721 
723  virtual void setAltitude(
724  const DtUUID& uuid, double altitude, bool aboveGroundLevel = false,
725  const DtSimulationAddress& addr = DtSimSendToAll);
726 
728  virtual void setLocation(
729  const DtUUID& uuid, DtVector coord,
730  const DtSimulationAddress& addr = DtSimSendToAll);
731 
735  virtual void setAppearance(
736  const DtUUID& uuid, int appearance,
737  const DtSimulationAddress& addr = DtSimSendToAll);
738 
742  virtual void setCapabilities(
743  const DtUUID& uuid, int capabilities,
744  const DtSimulationAddress& addr = DtSimSendToAll);
745 
747  virtual void setHeading(
748  const DtUUID& uuid, double degrees,
749  const DtSimulationAddress& addr = DtSimSendToAll);
750 
752  virtual void setForce(
753  const DtUUID& uuid, DtForceType force,
754  const DtSimulationAddress& addr = DtSimSendToAll);
755 
757  virtual void setResource(const DtUUID& uuid,
758  const char* resourceType, double value,
759  const DtSimulationAddress& addr = DtSimSendToAll);
760 
764  virtual void setRulesOfEngagement(
765  const DtUUID& uuid, const char* rulesType,
766  const DtSimulationAddress& addr = DtSimSendToAll);
767 
769  virtual void setSectorOfResponsibility(
770  const DtUUID& uuid, double center, double size,
771  const DtSimulationAddress& addr = DtSimSendToAll);
772 
776  virtual void setSpeed(
777  const DtUUID& uuid, double speed,
778  const DtSimulationAddress& addr = DtSimSendToAll);
779 
782  virtual void setCurrentSpeed(
783  const DtUUID& uuid, double speed,
784  const DtSimulationAddress& addr = DtSimSendToAll);
785 
787  virtual void setTarget(
788  const DtUUID& uuid, const DtUUID& target,
789  const DtSimulationAddress& addr = DtSimSendToAll);
790 
793  virtual void setSuperior(
794  const DtUUID& uuid, const DtUUID& superior,
795  const DtSimulationAddress& addr = DtSimSendToAll);
796 
800  virtual void setTaskedBySuperior(const DtUUID& uuid,
801  const DtSimulationAddress& addr = DtSimSendToAll);
802 
804  virtual void setConcealed(const DtUUID& uuid,
805  bool yes, const DtSimulationAddress& addr = DtSimSendToAll);
806 
808  virtual void setEmitter(const DtUUID& uuid,
809  int emitterId, bool on,
810  const DtSimulationAddress& addr = DtSimSendToAll);
811 
813  virtual void setIff(const DtUUID& uuid,
814  bool mode1on, int mode1code,
815  bool mode2on, int mode2code,
816  bool mode3on, int mode3code,
817  bool mode4on, int mode4code,
818  DtIffAtcNavaidsAltParm4 altParm4,
819  bool modeCon, bool useAltModeC,
820  bool modeSon, bool emergency,
821  bool flash, bool sti, bool modeSTcasI,
822  int pin, bool mode5LevelSelection,
823  unsigned int messageFormatsPresent, unsigned int nationalOrigin,
824  unsigned int navigationSource, unsigned int figureOfMerit,
825  const DtSimulationAddress& addr = DtSimSendToAll);
826 
830  virtual void restore(const DtUUID& uuid,
831  const DtSimulationAddress& addr = DtSimSendToAll);
832 
835  virtual void setDestroyed(const DtUUID& uuid,
836  const DtSimulationAddress& addr = DtSimSendToAll);
837 
839  virtual void setLifeformWeaponState(
840  const DtUUID& uuid, DtWeaponState weapon,
841  const DtSimulationAddress& addr = DtSimSendToAll);
842 
844  virtual void setLifeformPosture(
845  const DtUUID& uuid, DtLifeformState posture,
846  const DtSimulationAddress& addr = DtSimSendToAll);
847 
849  virtual void setAggregateFormation(
850  const DtUUID& leader, const std::string& formationName,
851  const DtSimulationAddress& addr = DtSimSendToAll);
852 
856  virtual void reorganizeAggregate(const DtUUID& leader,
857  const DtSimulationAddress& addr = DtSimSendToAll);
858 
862  virtual void disaggregate(const DtUUID& uuid, DtSimulationAddress addr = DtSimSendToAll);
863 
867  virtual void aggregate(const DtUUID& uuid, DtSimulationAddress addr = DtSimSendToAll);
868 
871  virtual void sendSetDataMsg(
872  const DtUUID& recipient, DtSetDataRequest* msg,
873  const DtSimulationAddress& addr = DtSimSendToAll,
874  bool updateScenario = true);
875 
878  virtual void sendSetRequest(const DtSetDataRequest& s, const DtUUID& uuid,
879  const DtSimulationAddress& addr = DtSimSendToAll, bool updateScenario = true);
880 
882  virtual void sendSetRequest(const DtSetDataRequest& s, const std::vector<DtUUID>& names,
883  const DtSimulationAddress& addr = DtSimSendToAll, bool updateScenario = true);
884 
890  virtual void requestIndirectArtilleryInformation(const DtString&);
892 
896 
899  virtual void moveAlongRoute(
900  const DtUUID& entity, const DtUUID& route,
901  const DtSimulationAddress& addr = DtSimSendToAll);
902 
905  virtual void moveToWaypoint(
906  const DtUUID& entity, const DtUUID& waypoint,
907  const DtSimulationAddress& addr = DtSimSendToAll);
908 
912  virtual void moveToLocation(
913  const DtUUID& entity, const DtVector& destinationLocation,
914  const DtSimulationAddress& addr = DtSimSendToAll);
915 
918  virtual void patrolBetweenWaypoints(
919  const DtUUID& entity,
920  const DtUUID& waypoint1, const DtUUID& waypoint2,
921  const DtSimulationAddress& addr = DtSimSendToAll);
922 
925  virtual void patrolAlongRoute(
926  const DtUUID& entity, const DtUUID& route,
927  const DtSimulationAddress& addr = DtSimSendToAll);
928 
934  virtual void followEntity(
935  const DtUUID& entity,
936  const DtUUID& leader, const DtVector& offset,
937  const DtSimulationAddress& addr = DtSimSendToAll);
938 
941  virtual void wait(
942  const DtUUID& entity,
943  const DtSimulationAddress& addr = DtSimSendToAll);
944 
947  virtual void waitDuration(
948  const DtUUID& entity, DtTime duration,
949  const DtSimulationAddress& addr = DtSimSendToAll);
950 
954  virtual void waitElapsed(
955  const DtUUID& entity, DtTime elapsed,
956  const DtSimulationAddress& addr = DtSimSendToAll);
957 
962  virtual void requestCurrentTasks(const DtUUID& entity);
963 
967  virtual void subscribeForTaskInformation(const DtUUID& entity);
968 
971  virtual void unsubscribeForTaskInformation(const DtUUID& entity);
972 
976  virtual void sendTaskMsg(
977  const DtUUID& recipient, DtSimTask* task,
978  const DtSimulationAddress& addr = DtSimSendToAll);
979 
981  virtual void sendTaskRequest(const DtSimTask& s, const std::vector<DtUUID>& names, const DtSimulationAddress& addr = DtSimSendToAll);
983  virtual void sendTaskRequest(const DtSimTask& s, const DtUUID& uuid, const DtSimulationAddress& addr = DtSimSendToAll);
984 
989  virtual void requestTasksAndSetsFor(const std::vector<DtUUID>& name);
991 
998 
1001  virtual void abandonPlan(const DtUUID& uuid, DtSimulationAddress addr = DtSimSendToAll);
1002 
1005  virtual void skipTask(const DtUUID& uuid, DtSimulationAddress addr = DtSimSendToAll);
1006 
1008  virtual void cancelReactiveTask(const DtUUID& uuid, std::string scriptId, DtSimulationAddress addr = DtSimSendToAll);
1009 
1012  virtual void restartPlan(const DtUUID& uuid, DtSimulationAddress addr = DtSimSendToAll);
1013 
1015  virtual void assignPlanByName(const DtUUID& uuid, const DtPlan*, DtSimulationAddress addr = DtSimSendToAll);
1016 
1018  virtual void assignMultiplePlanByName(std::vector<DtUUID> names, const DtPlan*, DtSimulationAddress addr = DtSimSendToAll);
1019 
1025  virtual void requestPlan(const DtUUID& uuid, DtSimulationAddress addr = DtSimSendToAll);
1026 
1032  virtual void subscribePlan(const DtUUID& uuid, DtSimulationAddress addr = DtSimSendToAll);
1033 
1040  virtual void requestMultiplePlans(std::vector<DtUUID> names, DtSimulationAddress addr = DtSimSendToAll);
1041 
1046  virtual void requestGlobalPlans(DtSimulationAddress addr = DtSimSendToAll);
1047 
1050  virtual void assignGlobalPlanByName(const DtUUID& name, const DtPlan*, DtSimulationAddress addr);
1051 
1053  virtual void deleteGlobalPlan(const DtUUID&, DtSimulationAddress addr);
1054 
1056  virtual void launchGlobalPlan(const DtUUID&, DtSimulationAddress addr);
1058 
1060  virtual void setTimeoutInterval(int);
1061 
1067  virtual void requestDIGuyAppearancesAndAnimations(const std::vector<DtUUID>& name);
1068 
1075  virtual void requestResourcesFor(std::vector<DtUUID> names, DtSimulationAddress addr = DtSimSendToAll);
1076 
1078  virtual void sendMessageToObject(const DtVrfObjectMessage&, DtSimulationAddress addr = DtSimSendToAll);
1079 
1081  virtual void sendObjectMessageAndDeleteContent(DtVrfObjectMessage* message, DtSimulationAddress addr = DtSimSendToAll);
1082 
1084  virtual void sendSensorFieldOfViewControlInteraction(const DtSensorFieldOfViewControlInteractionData& interData);
1085 
1087  virtual void sendSensorFieldOfViewControlInteractionAndDelete(DtSensorFieldOfViewControlInteractionData* data);
1088 
1090  virtual void requestForces(DtSimulationAddress addr);
1091 
1094  virtual void requestDoctrines();
1095 
1098  virtual void requestAssignedDoctrines();
1099 
1101  virtual unsigned long generateRequestId();
1102 
1103  //-------------------------------------------------------
1105  //-------------------------------------------------------
1106 
1111  virtual void takeControlOf(const DtUUID&, const std::set<std::string>& functionalGroups = std::set<std::string>(),
1112  const DtSimulationAddress& addr = DtSimSendToAll);
1113 
1116  virtual void releaseControlOf(const DtUUID&, const std::set<std::string>& functionalGroups = std::set<std::string>(),
1117  const DtSimulationAddress& addr = DtSimSendToAll);
1118 
1121  virtual void sendJoystickControl(const DtUUID&, const std::string& functionGroup,
1122  const std::string& function, double value, bool repeat = false, const DtSimulationAddress& addr = DtSimSendToAll);
1123 
1124  public:
1125 
1127  virtual void addSetCreatorFcn(const DtSetMessageType&, DtSetDataRequestCreatorFcn);
1128 
1130  virtual void addTaskCreatorFcn(const DtSimTaskMessageType&, DtSimTaskCreatorFcn);
1131 
1133  virtual void addInterfaceContentCreatorFcn(int t, DtInterfaceContentCreatorFcn);
1134 
1136  virtual void addAdminContentCreatorFcn(const DtAdminContentMessageType&, DtAdminContentCreatorFcn);
1137 
1139  virtual void addConditionCreatorFcn(std::string, int, DtCondExprCreatorFcn);
1140 
1142  virtual void addReportCreatorFcn(const DtSimReportMessageType&, DtSimReportCreatorFcn);
1143 
1145  virtual void addObjectMessageCreatorFcn(int, DtVrfObjectMessageCreatorFcn);
1146 
1148  virtual void addSimulationCommandCreatorFcn(const DtSimCommandMessageType&, DtSimCommandCreatorFcn);
1149 
1152  virtual void sendMessage(const DtSimInterfaceContent& message, DtSimulationAddress addr = DtSimSendToAll);
1153  virtual void sendMessageAndDeleteContent(DtSimInterfaceContent* message, DtSimulationAddress addr = DtSimSendToAll);
1154 
1161  virtual void embarkOn(const std::vector<DtUUID>& children, const DtUUID& parent,
1162  bool useSlot = true, const DtVector& overridePosition = DtVector::zero(), DtSimulationAddress addr = DtSimSendToAll);
1163 
1165  virtual void disembark(const std::vector<DtUUID>& children, DtSimulationAddress addr = DtSimSendToAll);
1166 
1168  virtual void disembarkAll(const std::vector<DtUUID>& parents, DtSimulationAddress addr = DtSimSendToAll);
1169 
1171  virtual void attachTo(const std::vector<DtUUID>& ids, const DtUUID& parent);
1172 
1174  virtual void detachAll(const std::vector<DtUUID>& ids);
1175 
1178  virtual void logObjectConsoleToFile(const DtUUID& uuid, const std::string& filename);
1179 
1182  virtual void stopLoggingObjectConsoleToFile(const DtUUID& uuid);
1183 
1185  virtual void setObjectNotifyLevel(const DtUUID& uuid, int);
1186 
1188  virtual void setTimeOfDay(time_t seconds);
1189  virtual void setTimeOfDay(int hours, int minutes, int seconds);
1190 
1192  virtual void setDateAndTimeOfDay(time_t seconds);
1193  virtual void setDateAndTimeOfDay(int year, int month, int day, int hours, int minutes, int seconds);
1194 
1196  virtual void setUseDayNightIlluminationModel(bool);
1197 
1199  virtual void setAggregateOnCreate(bool);
1200  bool aggregateOnCreate() const;
1201 
1204  virtual void requestScenarioDescription(DtSimulationAddress);
1205 
1207  virtual void setScenarioDescription(const DtString&, DtSimulationAddress addr = DtSimSendToAll);
1208 
1210  virtual void addContentMessagesThatModifyScenario(int);
1211  virtual void removeContentMessagesThatModifyScenario(int);
1212  const std::set<int>& contentMessagesThatModifyScenario() const { return myContentMessagesThatModifyScenario; };
1213 
1214  public:
1216  virtual void sendLoggerSetFilename(std::string filename);
1217 
1218  virtual void sendLoggerRecordMessage();
1219 
1220  virtual void sendLoggerStopMessage();
1221 
1222  protected:
1224  virtual void processObjectCreated(DtSimMessage*);
1225 
1227  virtual void processComputedRouteCreated(DtSimMessage*);
1228 
1230  virtual void setActivated(bool);
1231 
1239  virtual bool addStatementsAndSendPlan(const DtPlan& plan, DtIfPlan& planMsg,
1240  const DtSimulationAddress& addr = DtSimSendToAll,
1241  int *retiStatus = 0, DtString* retsStmt = 0);
1242 
1244  virtual void indirectArtilleryCreated(DtString, const DtUUID&, const DtEntityIdentifier&, DtIfIndirectArtilleryData);
1245 
1247  virtual void checkIfContentMessageShouldMarkScenarioAsModified(const DtSimInterfaceContent&);
1248 
1249  public:
1253 
1255  boost::signal<void (const DtScenario*)> signal_loadedScenario;
1256 
1258  boost::signal<void ()> signal_scenarioModified;
1259 
1261  boost::signal<void (const DtScenarioLoadInformation&)> signal_loadScenario;
1262 
1264  boost::signal<void (const DtScenario*, DtPreserveMappingsFcn fcn, void* userData,
1265  bool queueSave, int putIntoPlayMode)> signal_saveScenario;
1266 
1269  boost::signal<void (std::vector<DtScenario*>, DtFilename)> signal_saveCheckpoints;
1270 
1272  boost::signal<void ()> signal_clearSavingCheckpoints;
1273 
1276  boost::signal<void (const DtUUID&, bool& shouldDelete)> signal_shouldDeleteObject;
1277 
1279  boost::signal<void ()> signal_closeScenario;
1280 
1283  boost::signal<void (DtIfCreateVrfObject&)> signal_aboutToSendCreateMessage;
1284 
1286  boost::signal<void (DtIfModifyVrfObject&)> signal_aboutToSendModifyMessage;
1287 
1289 
1290  protected:
1292  virtual void slot_preTick(makVrv::DtDe* de);
1293 
1294  protected:
1296 
1297  typedef std::map<unsigned int, DtVrfObjectCreatedCallbackFunction> CreateCallbacks;
1298 
1300 
1301  typedef std::map<unsigned int, DtComputedRouteResponseCallbackFunction> ComputedRouteCallbacks;
1302 
1304 
1306  };
1307 }

Document ID: Generated on Mon Jul 4 01:00:18 EDT 2016 from SVN revision 166489
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)