VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfMsdlScenarioDescriptionImporterExporter.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2021 MaK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
13 #include <vrfutil/rwUUID.h>
14 
15 class DtLocalObject;
17 class DtExtent;
19 
22 {
23 public:
27 
30 
33 
36 
38  virtual bool importFromSimulation(DtSimulationServices*, const std::map<std::string, std::string>& exportData,
40 
41 protected:
43  virtual bool exportableObject(const DtEntityType& t) const;
44 
46  virtual bool importEntities();
47 
50  virtual bool importTacticalGraphics();
51 
55  virtual bool importHostilityMatrix();
56 
58  virtual bool prepareOrganizationCreationOrder(DtMsdlSimulatedElement*);
59 
61  virtual DtString deconflictName(const DtString&, int kind);
62 
64  virtual bool createTacticalGraphicOnLayer(DtMsdlSimulatedTacticalGraphic&, const DtMsdlOverlayLayer&);
65 
67  virtual bool complete() const;
68 
70  static void createObjectsCallback(void*);
71  virtual void processCreateObjects();
72 
74  virtual void createEntity(DtMsdlSimulatedElement*);
75 
78  virtual void exportHostilityManager(const std::map<std::string, std::string>& exportData);
79 
81  virtual void exportOrganization(const std::map<std::string, std::string>& exportData,
83 
85  virtual void exportTacticalGraphics(const std::map<std::string, std::string>& exportData,
87  virtual void exportTacticalGraphic(const DtLocalObject*, const std::map<std::string, std::string>& exportData,
89 
91  virtual void exportUnit(const DtLocalObject* obj, const std::map<std::string, std::string>& exportData,
93 
95  virtual void exportEquipmentItem(const DtLocalObject* obj, const std::map<std::string, std::string>& exportData,
97 
99  virtual Msdl_UUID generateUUID() const;
100 
102  virtual DtVector correctedAltitudeLocation(const DtMSDLVector&, bool& amClampedToGround);
103 
107  virtual const std::string countryCode(DtRwForceDescription* force);
108 
112  virtual void convertExtentLocalToDis(DtExtent* extent, Coordinate_System* coordSys);
113 
114 protected:
117  std::vector<DtMsdlSimulatedElement*> myOrganizationCreationOrder;
120 
121  std::map<int, Msdl_UUID> myForceMap;
122 
123  std::map<DtUUID, Msdl_UUID> myObjectIdToUUIDMap;
124  std::map<DtString, Msdl_UUID> myOverlayNameToUUIDMap;
125 };
class DtLocalObjectManager:
Definition: localObjectManager.h:151
Class that represents an overlay layer. Overlay layers will contain the tactical graphics that will b...
Definition: msdlScenarioDescriptionImporterExporter.h:128
std::map< DtUUID, Msdl_UUID > myObjectIdToUUIDMap
Definition: vrfMsdlScenarioDescriptionImporterExporter.h:123
std::map< int, Msdl_UUID > myForceMap
Definition: vrfMsdlScenarioDescriptionImporterExporter.h:121
The main class that is used to import/export values from/to an Msdl file. This class will not actuall...
Definition: msdlScenarioDescriptionImporterExporter.h:161
DtLocalObjectManager * myObjectManager
Definition: vrfMsdlScenarioDescriptionImporterExporter.h:119
Contains the DtUUID class declaration.
The DtExtent represents an axis-aligned 3d bounding box.
Definition: extent.h:43
This class is the interface for a scenario description importer/exporter. Subclasses will implement t...
Definition: scenarioDescriptionImporterExporter.h:27
ReaderWriter for lists of force descriptions.
Definition: rwForceDescriptionList.h:28
Definition: coordSystem.h:54
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
Definition: msdlHierarchyPropertyMappings.h:56
Class that represents a tactical graphic element.
Definition: msdlScenarioDescriptionImporterExporter.h:100
std::string Msdl_UUID
These structures will be used to keep track of the simulation data that is to be imported into the si...
Definition: msdlScenarioDescriptionImporterExporter.h:39
std::vector< DtMsdlSimulatedElement * > myOrganizationCreationOrder
Keeps track of the order in which to create the items in the hierarchy. This list will be used to bre...
Definition: vrfMsdlScenarioDescriptionImporterExporter.h:117
virtual DtScenarioDescriptionImporterExporter * clone()
Returns a new copy.
Central access point of all non-object-specific the services and managers that are available for use ...
Definition: simulationServices.h:94
virtual bool importFromSimulation(DtSimulationServices *, const std::map< std::string, std::string > &exportData, const DtMsdlHierarchyPropertyMappings &)
Imports from the simulation into internal structures. DtSimulationServices is not defined at this lev...
virtual bool importIntoSimulation(DtSimulationServices *)
Imports into the simulation. DtSimulationServices is not defined at this level, so subclasses at vrfo...
virtual bool complete() const
Return true if import is complete. Default is true.
This class will import the msdl scenario into the VR-Forces scenario.
Definition: vrfMsdlScenarioDescriptionImporterExporter.h:21
Definition: msdlScenarioDescriptionImporterExporter.h:55
std::map< DtString, Msdl_UUID > myOverlayNameToUUIDMap
Definition: vrfMsdlScenarioDescriptionImporterExporter.h:124
Class that represents a simulated element (aggregate or entity) in the simulation.
Definition: msdlScenarioDescriptionImporterExporter.h:69
A locally simulated VRF object. Holds all internal and external data for the object, and provides access to both the current frame and next frame state data for the object. All current frame data is read-only, and next-frame data can be written to. No thread safety guarantees are made on this object during the simulation frame and it should only be accessed by the thread that is simulating the object.
Definition: localObject.h:86
DtSimulationServices * mySimulationServices
Definition: vrfMsdlScenarioDescriptionImporterExporter.h:118

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)