VR-Forces 4.3 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 
172  virtual void closeScenario();
174 
177 
180  virtual void setScenarioRunDuration(double time, bool duration = false);
181 
186  virtual void runScenario(bool useStartStopInteraction = false, DtSimulationAddress addr = DtSimSendToAll);
188  virtual void pauseScenario(bool useStartStopInteraction = false, DtSimulationAddress addr = DtSimSendToAll);
190  virtual void rewindScenario(DtSimulationAddress addr = DtSimSendToAll);
192  virtual void exitServer(DtSimulationAddress addr = DtSimSendToAll);
194  virtual void stepScenario(DtSimulationAddress addr = DtSimSendToAll);
196 
200  virtual void deleteObject(std::string name, DtSimulationAddress addr = DtSimSendToAll);
201 
204 
208  virtual void removeObjectCreatedCallback(unsigned int);
209 
214  virtual void createWaypoint(
215  const DtSimulationAddress& addr,
216  const DtVector& geocentricPosition,
217  const std::string& uniqueName = "",
218  const std::string& label = "",
219  unsigned int requestId = 0);
220 
224  virtual unsigned int createWaypoint(
226  const DtSimulationAddress& addr,
227  const DtVector& geocentricPosition,
228  const std::string& uniqueName = "",
229  const std::string& label = "");
230 
232  virtual void modifyWaypoint(
233  const std::string& uniqueId,
234  std::string* uniqueName = 0,
235  std::string* label = 0,
236  DtVector* geocentricPosition = 0,
237  const DtSimulationAddress& addr = DtSimSendToAll);
238 
243  virtual void createRoute(
244  const DtSimulationAddress& addr,
245  const std::vector<DtVector>& vertices,
246  const std::string& uniqueName = "",
247  const std::string& label = "",
248  unsigned int rId = 0);
249 
253  virtual unsigned int createRoute(
255  const DtSimulationAddress& addr,
256  const std::vector<DtVector>& vertices,
257  const std::string& uniqueName = "",
258  const std::string& label = "");
259 
261  virtual void modifyRoute(
262  const std::string& uniqueId,
263  std::string* uniqueName = 0,
264  std::string* label = 0,
265  std::vector<DtVector>* vertices = 0,
266  const DtSimulationAddress& addr = DtSimSendToAll);
267 
272  virtual void createPhaseLine(
273  const DtSimulationAddress& addr,
274  const DtVector& dbPoint1,
275  const DtVector& dbPoint2,
276  const std::string& uniqueName = "",
277  const std::string& label = "",
278  unsigned int rId = 0);
279 
283  virtual unsigned int createPhaseLine(
285  const DtSimulationAddress& addr,
286  const DtVector& dbPoint1,
287  const DtVector& dbPoint2,
288  const std::string& uniqueName = "",
289  const std::string& label = "");
290 
292  virtual void modifyPhaseLine(
293  const std::string& uniqueId,
294  std::string* uniqueName = 0,
295  std::string* label = 0,
296  DtVector* newDbPoint1 = 0,
297  DtVector* newDbPoint2 = 0,
298  const DtSimulationAddress& addr = DtSimSendToAll);
299 
305  virtual void createControlArea(
306  const DtSimulationAddress& addr,
307  const std::vector<DtVector>& vertices,
308  const std::string& uniqueName = "",
309  const std::string& label = "",
310  unsigned int rId = 0);
311 
315  virtual unsigned int createControlArea(
317  const DtSimulationAddress& addr,
318  const std::vector<DtVector>& vertices,
319  const std::string& uniqueName = "",
320  const std::string& label = "");
321 
323  virtual void modifyControlArea(
324  const std::string& uniqueId,
325  std::string* uniqueName = 0,
326  std::string* label = 0,
327  std::vector<DtVector>* newVertices = 0,
328  const DtSimulationAddress& addr = DtSimSendToAll);
329 
335  virtual void createObstacle(
336  const DtSimulationAddress& addr,
337  const std::vector<DtVector>& vertices,
338  const std::string& uniqueName = "",
339  const std::string& label = "",
340  unsigned int rId = 0);
341 
345  virtual unsigned int createObstacle(
347  const DtSimulationAddress& addr,
348  const std::vector<DtVector>& vertices,
349  const std::string& uniqueName = "",
350  const std::string& label = "") ;
351 
353  virtual void modifyObstacle(
354  const std::string& uniqueId,
355  std::string* uniqueName = 0,
356  std::string* label = 0,
357  std::vector<DtVector>* newVertices = 0,
358  const DtSimulationAddress& addr = DtSimSendToAll);
359 
366  virtual void createDisaggregationArea(
367  const DtSimulationAddress& addr,
368  const std::vector<DtVector>& vertices,
369  const std::string& uniqueName = "",
370  const std::string& label = "",
371  unsigned int rId = 0);
372 
377  virtual unsigned int createDisaggregationArea(
379  const DtSimulationAddress& addr,
380  const std::vector<DtVector>& vertices,
381  const std::string& uniqueName = "",
382  const std::string& label = "") ;
383 
385  virtual void modifyDisaggregationArea(
386  const std::string& uniqueId,
387  std::string* uniqueName = 0,
388  std::string* label = 0,
389  std::vector<DtVector>* newVertices = 0,
390  const DtSimulationAddress& addr = DtSimSendToAll);
391 
402  virtual unsigned int createOverlayObject(
403  const DtSimulationAddress& addr,
404  const DtEntityType& type,
405  const std::vector<DtVector>& vertices,
406  const DtForceType& force,
407  const std::string& name,
408  const std::string& label,
409  int color,
410  const std::string& parentName,
411  bool projection,
412  bool closedFigure,
413  const DtAppearance& appearance = DtAppearance::nullAppearance(),
414  const std::string& attachTo = "",
415  char* userData = 0,
416  int dataSize = 0,
417  const std::map<std::string, std::string>& extendedData = std::map<std::string, std::string>(),
418  const std::map<int, DtString>& extendedLabels = std::map<int, DtString>(),
420 
423  virtual void createIndirectArtillery(
424  const DtIfIndirectArtilleryData& params,
425  const std::string& overlayParent,
426  const DtSimulationAddress& addr);
427 
432  virtual void createComputedRoute(
433  const DtSimulationAddress& addr,
434  const DtVector& sourcePoint,
435  const DtVector& destPoint,
436  const std::list<std::string>& obstacleTypes,
437  const std::list<std::string>& pathTypes,
438  const std::string& uniqueName = "",
439  const std::string& label = "",
440  const std::string& overlay = "",
441  const int forceId = DtForceOther,
442  const std::map<int, DtString>& extendedLabels = std::map<int, DtString>(),
443  unsigned int requestId = 0);
444 
446  virtual void cancelCreateComputedRoute(
447  const DtSimulationAddress& addr,
448  unsigned int requestId);
449 
453  virtual void createComputedRoute(
455  const DtSimulationAddress& addr,
456  const DtVector& sourcePoint,
457  const DtVector& destPoint,
458  const std::list<std::string>& obstacleTypes,
459  const std::list<std::string>& pathTypes,
460  const std::string& uniqueName = "",
461  const std::string& label = "",
462  const std::string& overlay = "",
463  const int forceId = DtForceOther,
464  const std::map<int, DtString>& extendedLabels = std::map<int, DtString>());
466 
469 
472  virtual unsigned int createEntity(DtVrfObjectCreatedCallbackFunction fcn, DtSimulationAddress addr, DtEntityCreationData,
473  const std::list<DtAdminContent*>& content = std::list<DtAdminContent*>(),
474  const std::list<DtSimInterfaceContent*>& ifaceContent = std::list<DtSimInterfaceContent*>());
475 
476  virtual void createEntity(DtSimulationAddress addr, DtEntityCreationData,
477  const std::list<DtAdminContent*>& content = std::list<DtAdminContent*>(),
478  const std::list<DtSimInterfaceContent*>& ifaceContent = std::list<DtSimInterfaceContent*>());
479 
481  virtual void createEntity(
482  const DtSimulationAddress& addr,
483  const DtEntityType& type,
484  const DtVector& geocentricPosition,
485  DtForceType force,
486  DtReal heading,
487  const std::string& uniqueName = "",
488  const std::string& label = "",
489  bool groundClamp = true, const std::list<DtAdminContent*>& content = std::list<DtAdminContent*>(),
490  const std::list<DtSimInterfaceContent*>& ifaceContent = std::list<DtSimInterfaceContent*>(),
491  const std::map<std::string, std::string>& extendedData = std::map<std::string, std::string>(),
492  const std::map<int, DtString>& extendedLabels = std::map<int, DtString>());
493 
497  virtual unsigned int createEntity(
499  const DtSimulationAddress& addr,
500  const DtEntityType& type,
501  const DtVector& geocentricPosition,
502  DtForceType force,
503  DtReal heading,
504  const std::string& uniqueName = "",
505  const std::string& label = "",
506  bool groundClamp = true, const std::list<DtAdminContent*>& content = std::list<DtAdminContent*>(),
507  const std::list<DtSimInterfaceContent*>& ifaceContent = std::list<DtSimInterfaceContent*>(),
508  const std::map<std::string, std::string>& extendedData = std::map<std::string, std::string>(),
509  const std::map<int, DtString>& extendedLabels = std::map<int, DtString>());
510 
512  virtual unsigned int createAggregate(
514  const DtSimulationAddress& addr,
515  const DtEntityType& type,
516  const DtVector& geocentricPosition,
517  DtForceType force,
518  DtReal heading,
519  const std::string& uniqueName,
520  const std::string& label = "",
521  DtAggregateState initialAggregateState = DtDisaggregated,
522  const std::list<DtAdminContent*>& content = std::list<DtAdminContent*>(),
523  const std::list<DtSimInterfaceContent*>& ifaceContent = std::list<DtSimInterfaceContent*>(),
524  const std::map<std::string, std::string>& extendedData = std::map<std::string, std::string>(),
525  const std::map<int, DtString>& extendedLabels = std::map<int, DtString>());
526 
528  virtual void aggregateAs(const std::vector<makVrv::DtVrlinkSimulatedEntityState>& names, const DtEntityType& type,
529  int force, DtAggregateState initialAggregateState, DtSimulationAddress addr, unsigned int requestId = 0);
530 
534  virtual unsigned int aggregateAs(DtVrfObjectCreatedCallbackFunction fcn,
535  const std::vector<makVrv::DtVrlinkSimulatedEntityState>& names, const DtEntityType& type,
536  int force, DtAggregateState initialAggregateState, DtSimulationAddress addr);
537 
540  virtual void addToOrganization(const std::string& childId, const std::string& superiorId,
541  DtSimulationAddress addr = DtSimSendToAll);
542 
546  virtual void addToForceLevelOrganization(const std::string& entityId, DtSimulationAddress addr = DtSimSendToAll);
547 
550  virtual void removeFromOrganization(
551  const std::string& objectId,
552  const DtSimulationAddress& addr = DtSimSendToAll);
554 
560 
562  virtual void createEnvironmentalObject(DtSimulationAddress addr, DtEntityType, int force, const std::vector<DtVector>&,
564  const std::list<DtAdminContent*>& content = std::list<DtAdminContent*>(),
565  const std::list<DtSimInterfaceContent*>& ifaceContent = std::list<DtSimInterfaceContent*>());
566 
576  virtual void sendVrfObjectModifyMsg(
577  const DtSimulationAddress& addr,
578  const std::string& entityId,
579  const std::string* name = 0,
580  const std::vector<DtVector>& = std::vector<DtVector>(),
581  int* force = 0,
582  double* heading = 0,
583  const std::string* label = 0,
584  DtAppearance* appearance = 0,
585  const std::string* overlayParent = 0,
586  const std::string* userData = 0,
587  const std::map<std::string, std::string>* extendedData = 0,
588  const std::map<int, DtString>* extendedLabels = 0);
589 
593  virtual void sendVrfObjectCreateMsg(
594  const DtSimulationAddress& addr,
595  unsigned int requestId,
596  const std::string& name,
597  const DtObjectType& type,
598  const std::vector<DtVector>& vertices,
599  const std::string& label,
600  const DtAppearance& appearance,
601  DtForceType force,
602  bool projection,
603  bool closedFigure,
604  DtReal heading,
605  bool createSubObjects,
606  const std::string& overlayParent = "",
607  bool clampToGroundFlag = true,
608  const std::string& initialFormation = "",
609  DtAggregateState initialAggregateState = DtDisaggregated,
610  const std::string& userData = "", const std::list<DtAdminContent*>& content = std::list<DtAdminContent*>(),
611  const std::list<DtSimInterfaceContent*>& ifaceContent = std::list<DtSimInterfaceContent*>(),
612  const std::map<std::string, std::string>& extendedData = std::map<std::string, std::string>(),
613  const std::map<int, DtString>& extendedLabels = std::map<int, DtString>());
614 
617  virtual unsigned int addCreateCallbackFunction(DtVrfObjectCreatedCallbackFunction);
618 
621  virtual unsigned int addCreateComputedRouteCallbackFunction(DtComputedRouteResponseCallbackFunction);
622 
624  virtual void removeCreateComputedRouteCallbackFunction(int rId);
625 
632  virtual void sendVrfOverlayObjectModifyMsg(
633  const DtSimulationAddress& addr,
634  const std::string& id,
635  int* color = 0,
636  const std::string* parentName = 0,
637  const std::string* attachTo = 0,
638  const std::string* userData = 0,
639  const std::map<std::string, std::string>* extendedData = 0);
640 
642  virtual void sendVrfIndirectArtilleryObjectModifyMsg(
643  const DtSimulationAddress& addr,
644  const DtEntityIdentifier& id,
645  const DtIfIndirectArtilleryData& mod);
647 
653 
655  virtual void setLabel(
656  const std::string& id, const std::string& label,
657  const DtSimulationAddress& addr = DtSimSendToAll);
658 
660  virtual void setExtendedLabels(
661  const std::string& id, const std::map<int, DtString>& extendedLabels,
662  const DtSimulationAddress& addr = DtSimSendToAll);
663 
665  virtual void setOverlayParent(
666  const std::string& id, const std::string& label,
667  const DtSimulationAddress& addr = DtSimSendToAll);
668 
670  virtual void setAltitude(
671  const std::string& name, double altitude, bool aboveGroundLevel = false,
672  const DtSimulationAddress& addr = DtSimSendToAll);
673 
675  virtual void setLocation(
676  const std::string& name, DtVector coord,
677  const DtSimulationAddress& addr = DtSimSendToAll);
678 
682  virtual void setAppearance(
683  const std::string& name, int appearance,
684  const DtSimulationAddress& addr = DtSimSendToAll);
685 
689  virtual void setCapabilities(
690  const std::string& name, int capabilities,
691  const DtSimulationAddress& addr = DtSimSendToAll);
692 
694  virtual void setHeading(
695  const std::string& name, double degrees,
696  const DtSimulationAddress& addr = DtSimSendToAll);
697 
699  virtual void setForce(
700  const std::string& name, DtForceType force,
701  const DtSimulationAddress& addr = DtSimSendToAll);
702 
704  virtual void setResource(const std::string& name,
705  const char* resourceType, double value,
706  const DtSimulationAddress& addr = DtSimSendToAll);
707 
711  virtual void setRulesOfEngagement(
712  const std::string& name, const char* rulesType,
713  const DtSimulationAddress& addr = DtSimSendToAll);
714 
716  virtual void setSectorOfResponsibility(
717  const std::string& name, double center, double size,
718  const DtSimulationAddress& addr = DtSimSendToAll);
719 
723  virtual void setSpeed(
724  const std::string& name, double speed,
725  const DtSimulationAddress& addr = DtSimSendToAll);
726 
728  virtual void setTarget(
729  const std::string& name, const std::string& target,
730  const DtSimulationAddress& addr = DtSimSendToAll);
731 
734  virtual void setSuperior(
735  const std::string& name, const std::string& superior,
736  const DtSimulationAddress& addr = DtSimSendToAll);
737 
741  virtual void setTaskedBySuperior(const std::string& name,
742  const DtSimulationAddress& addr = DtSimSendToAll);
743 
745  virtual void setConcealed(const std::string& name,
746  bool yes, const DtSimulationAddress& addr = DtSimSendToAll);
747 
749  virtual void setEmitter(const std::string& name,
750  int emitterId, bool on,
751  const DtSimulationAddress& addr = DtSimSendToAll);
752 
754  virtual void setIff(const std::string& name,
755  bool mode1on, int mode1code,
756  bool mode2on, int mode2code,
757  bool mode3on, int mode3code,
758  bool mode4on, int mode4code,
759  DtIffAtcNavaidsAltParm4 altParm4,
760  bool modeCon, bool useAltModeC,
761  bool modeSon, bool emergency,
762  bool flash, bool sti, bool modeSTcasI,
763  int pin, bool mode5LevelSelection,
764  unsigned int messageFormatsPresent, unsigned int nationalOrigin,
765  unsigned int navigationSource, unsigned int figureOfMerit,
766  const DtSimulationAddress& addr = DtSimSendToAll);
767 
771  virtual void restore(const std::string& name,
772  const DtSimulationAddress& addr = DtSimSendToAll);
773 
776  virtual void setDestroyed(const std::string& name,
777  const DtSimulationAddress& addr = DtSimSendToAll);
778 
780  virtual void setLifeformWeaponState(
781  const std::string& name, DtWeaponState weapon,
782  const DtSimulationAddress& addr = DtSimSendToAll);
783 
785  virtual void setLifeformPosture(
786  const std::string& name, DtLifeformState posture,
787  const DtSimulationAddress& addr = DtSimSendToAll);
788 
790  virtual void setAggregateFormation(
791  const std::string& leader, const std::string& formationName,
792  const DtSimulationAddress& addr = DtSimSendToAll);
793 
797  virtual void reorganizeAggregate(const std::string& leader,
798  const DtSimulationAddress& addr = DtSimSendToAll);
799 
803  virtual void disaggregate(std::string name, DtSimulationAddress addr = DtSimSendToAll);
804 
808  virtual void aggregate(std::string name, DtSimulationAddress addr = DtSimSendToAll);
809 
811  virtual void setJoystickEnabled(std::string name, DtSimulationAddress addr = DtSimSendToAll);
812 
814  virtual void setJoystickDisabled(std::string name, DtSimulationAddress addr = DtSimSendToAll);
815 
818  virtual void sendSetDataMsg(
819  const std::string& recipient, DtSetDataRequest* msg,
820  const DtSimulationAddress& addr = DtSimSendToAll,
821  bool updateScenario = true);
822 
825  virtual void sendSetRequest(const DtSetDataRequest& s, const std::string& name,
826  const DtSimulationAddress& addr = DtSimSendToAll, bool updateScenario = true);
827 
829  virtual void sendSetRequest(const DtSetDataRequest& s, const std::vector<std::string>& names,
830  const DtSimulationAddress& addr = DtSimSendToAll, bool updateScenario = true);
831 
837  virtual void requestIndirectArtilleryInformation(const DtString&);
839 
843 
846  virtual void moveAlongRoute(
847  const std::string& entityName, const std::string& routeName,
848  const DtSimulationAddress& addr = DtSimSendToAll);
849 
852  virtual void moveToWaypoint(
853  const std::string& entityName, const std::string& waypoint,
854  const DtSimulationAddress& addr = DtSimSendToAll);
855 
859  virtual void moveToLocation(
860  const std::string& entityName, const DtVector& destinationLocation,
861  const DtSimulationAddress& addr = DtSimSendToAll);
862 
865  virtual void patrolBetweenWaypoints(
866  const std::string& name,
867  const std::string& waypoint1, const std::string& waypoint2,
868  const DtSimulationAddress& addr = DtSimSendToAll);
869 
872  virtual void patrolAlongRoute(
873  const std::string& name, const std::string& route,
874  const DtSimulationAddress& addr = DtSimSendToAll);
875 
881  virtual void followEntity(
882  const std::string& name,
883  const std::string& leader, const DtVector& offset,
884  const DtSimulationAddress& addr = DtSimSendToAll);
885 
888  virtual void wait(
889  const std::string& name,
890  const DtSimulationAddress& addr = DtSimSendToAll);
891 
894  virtual void waitDuration(
895  const std::string& name, DtTime duration,
896  const DtSimulationAddress& addr = DtSimSendToAll);
897 
901  virtual void waitElapsed(
902  const std::string& name, DtTime elapsed,
903  const DtSimulationAddress& addr = DtSimSendToAll);
904 
909  virtual void requestCurrentTasks(const std::string& entityName);
910 
914  virtual void subscribeForTaskInformation(const std::string& entityName);
915 
918  virtual void unsubscribeForTaskInformation(const std::string& entityName);
919 
923  virtual void sendTaskMsg(
924  const std::string& recipient, DtSimTask* task,
925  const DtSimulationAddress& addr = DtSimSendToAll);
926 
928  virtual void sendTaskRequest(const DtSimTask& s, const std::vector<std::string>& names, const DtSimulationAddress& addr = DtSimSendToAll);
930  virtual void sendTaskRequest(const DtSimTask& s, const std::string& name, const DtSimulationAddress& addr = DtSimSendToAll);
931 
936  virtual void requestTasksAndSetsFor(std::vector<DtString> name);
938 
945 
948  virtual void abandonPlan(std::string name, DtSimulationAddress addr = DtSimSendToAll);
949 
952  virtual void skipTask(std::string name, DtSimulationAddress addr = DtSimSendToAll);
953 
955  virtual void cancelReactiveTask(std::string name, std::string scriptId, DtSimulationAddress addr = DtSimSendToAll);
956 
959  virtual void restartPlan(std::string name, DtSimulationAddress addr = DtSimSendToAll);
960 
962  virtual void assignPlanByName(std::string name, const DtPlan*, DtSimulationAddress addr = DtSimSendToAll);
963 
965  virtual void assignMultiplePlanByName(std::vector<std::string> names, const DtPlan*, DtSimulationAddress addr = DtSimSendToAll);
966 
972  virtual void requestPlan(std::string name, DtSimulationAddress addr = DtSimSendToAll);
973 
979  virtual void subscribePlan(std::string name, DtSimulationAddress addr = DtSimSendToAll);
980 
987  virtual void requestMultiplePlans(std::vector<std::string> names, DtSimulationAddress addr = DtSimSendToAll);
988 
993  virtual void requestGlobalPlans(DtSimulationAddress addr = DtSimSendToAll);
994 
999  virtual void requestGlobalPlan(std::string name, DtSimulationAddress addr = DtSimSendToAll);
1000 
1003  virtual void assignGlobalPlanByName(std::string name, const DtPlan*, DtSimulationAddress addr = DtSimSendToAll);
1004 
1006  virtual void deleteGlobalPlan(std::string, DtSimulationAddress addr = DtSimSendToAll);
1008 
1010  virtual void setTimeoutInterval(int);
1011 
1017  virtual void requestDIGuyAppearancesAndAnimations(std::vector<DtString> name);
1018 
1025  virtual void requestResourcesFor(std::vector<std::string> names, DtSimulationAddress addr = DtSimSendToAll);
1026 
1028  virtual void sendMessageToObject(const DtVrfObjectMessage&, DtSimulationAddress addr = DtSimSendToAll);
1029 
1031  virtual void sendObjectMessageAndDeleteContent(DtVrfObjectMessage* message, DtSimulationAddress addr = DtSimSendToAll);
1032 
1034  virtual void requestForces(DtSimulationAddress addr);
1035 
1038  virtual void requestDoctrines();
1039 
1042  virtual void requestAssignedDoctrines();
1043 
1045  virtual unsigned long generateRequestId();
1046 
1047  public:
1048 
1050  virtual void addSetCreatorFcn(const DtSetMessageType&, DtSetDataRequestCreatorFcn);
1051 
1053  virtual void addTaskCreatorFcn(const DtSimTaskMessageType&, DtSimTaskCreatorFcn);
1054 
1056  virtual void addInterfaceContentCreatorFcn(int t, DtInterfaceContentCreatorFcn);
1057 
1059  virtual void addAdminContentCreatorFcn(const DtAdminContentMessageType&, DtAdminContentCreatorFcn);
1060 
1062  virtual void addConditionCreatorFcn(std::string, int, DtCondExprCreatorFcn);
1063 
1065  virtual void addReportCreatorFcn(const DtSimReportMessageType&, DtSimReportCreatorFcn);
1066 
1068  virtual void addObjectMessageCreatorFcn(int, DtVrfObjectMessageCreatorFcn);
1069 
1071  virtual void addSimulationCommandCreatorFcn(const DtSimCommandMessageType&, DtSimCommandCreatorFcn);
1072 
1075  virtual void sendMessage(const DtSimInterfaceContent& message, DtSimulationAddress addr = DtSimSendToAll);
1076  virtual void sendMessageAndDeleteContent(DtSimInterfaceContent* message, DtSimulationAddress addr = DtSimSendToAll);
1077 
1084  virtual void embarkOn(const std::vector<std::string>& children, const std::string& parentName,
1085  bool useSlot = true, const DtVector& overridePosition = DtVector::zero(), DtSimulationAddress addr = DtSimSendToAll);
1086 
1088  virtual void disembark(const std::vector<std::string>& children, DtSimulationAddress addr = DtSimSendToAll);
1089 
1091  virtual void disembarkAll(const std::vector<std::string>& parents, DtSimulationAddress addr = DtSimSendToAll);
1092 
1094  virtual void attachTo(const std::vector<std::string>& ids, const std::string& parentName);
1095 
1097  virtual void detachAll(const std::vector<std::string>& ids);
1098 
1101  virtual void logObjectConsoleToFile(const std::string& name, const std::string& filename);
1102 
1105  virtual void stopLoggingObjectConsoleToFile(const std::string& objectName);
1106 
1108  virtual void setObjectNotifyLevel(const std::string& name, int);
1109 
1111  virtual void setTimeOfDay(time_t seconds);
1112  virtual void setTimeOfDay(int hours, int minutes, int seconds);
1113 
1115  virtual void setDateAndTimeOfDay(time_t seconds);
1116  virtual void setDateAndTimeOfDay(int year, int month, int day, int hours, int minutes, int seconds);
1117 
1119  virtual void setUseDayNightIlluminationModel(bool);
1120 
1122  virtual void setAggregateOnCreate(bool);
1123  bool aggregateOnCreate() const;
1124 
1127  virtual void requestScenarioDescription(DtSimulationAddress);
1128 
1130  virtual void setScenarioDescription(const DtString&, DtSimulationAddress addr = DtSimSendToAll);
1131 
1132  public:
1134  virtual void sendLoggerSetFilename(std::string filename);
1135 
1136  virtual void sendLoggerRecordMessage();
1137 
1138  virtual void sendLoggerStopMessage();
1139 
1140  protected:
1142  virtual void processObjectCreated(DtSimMessage*);
1143 
1145  virtual void processComputedRouteCreated(DtSimMessage*);
1146 
1148  virtual void setActivated(bool);
1149 
1157  virtual bool addStatementsAndSendPlan(const DtPlan& plan, DtIfPlan& planMsg,
1158  const DtSimulationAddress& addr = DtSimSendToAll,
1159  int *retiStatus = 0, DtString* retsStmt = 0);
1160 
1162  virtual void indirectArtilleryCreated(DtString, const DtEntityIdentifier&, DtIfIndirectArtilleryData);
1163 
1164  public:
1168 
1170  boost::signal<void (const DtScenario*)> signal_loadedScenario;
1171 
1173  boost::signal<void ()> signal_scenarioModified;
1174 
1176  boost::signal<void (const DtScenarioLoadInformation&)> signal_loadScenario;
1177 
1179  boost::signal<void (const DtScenario*, DtPreserveMappingsFcn fcn, void* userData)> signal_saveScenario;
1180 
1183  boost::signal<void (std::string, bool& shouldDelete)> signal_shouldDeleteObject;
1184 
1186  boost::signal<void ()> signal_closeScenario;
1187 
1190  boost::signal<void (DtIfCreateVrfObject&)> signal_aboutToSendCreateMessage;
1191 
1193  boost::signal<void (DtIfModifyVrfObject&)> signal_aboutToSendModifyMessage;
1194 
1196 
1197  protected:
1199  virtual void slot_preTick(makVrv::DtDe* de);
1200 
1201  protected:
1203 
1204  typedef std::map<unsigned int, DtVrfObjectCreatedCallbackFunction> CreateCallbacks;
1205 
1207 
1208  typedef std::map<unsigned int, DtComputedRouteResponseCallbackFunction> ComputedRouteCallbacks;
1209 
1211  };
1212 }

Document ID: Generated on Wed Mar 11 21:20:57 EDT 2015 from SVN revision 150940
Copyright © 2005-2014 VT MÄK. All Rights Reserved (www.mak.com)