18 class DtIsOrbatEnabledCommand;
19 class DtSetIsOrbatEnabledCommand;
36 typedef boost::unordered_map<DtUUID, DtOrbatManagerNode*>
UUIDMap;
46 virtual void closingScenario();
49 virtual void setOrbatEnabled(
bool);
50 virtual bool orbatEnabled()
const;
65 virtual void sendOrbatList(
int requestId = 0);
68 virtual void clearOrbat(
bool send =
false);
71 virtual void mergeFrom(
const DtOrbatManager& fromOm,
bool sendNewList =
false);
74 virtual bool loadOrbat(
const DtFilename&,
bool send =
false,
bool clearOnLoad =
true);
75 virtual bool loadOrbatFromZipFile(
const DtFilename& scenarioZipFile,
const std::string&,
bool send =
false,
bool clearOnLoad =
true);
78 virtual bool loadOrbat(
const std::string& str,
bool send =
false,
bool clearOnLoad =
true);
81 virtual bool writeOrbat(
const DtFilename&);
84 virtual bool writeOrbat(std::string&);
107 virtual const DtVrfObject* createOrReturnSuperiorOf(
const DtUUID&,
const DtVector& locationOfSuperior = DtVector::zero());
110 virtual void createSubordinatesOfObject(
const DtUUID&);
115 virtual void aboutToDeleteObjectManager();
117 virtual void processVrfObjectAdded(
const DtVrfObject*,
int flags = 0);
121 virtual void makeAllSimulationObjectsPartOfOrbat();
132 static void orbatOperationCallback(
DtSimMessage* msg,
void* usr);
138 virtual bool loadOrbat(DtlInputStream*,
bool send);
141 virtual DtString generateMarkingText(
const DtEntityType&);
143 static void vrfObjectAdded(
const DtVrfObject*,
void* usr);
145 static void vrfObjectAboutToBeRemoved(
const DtVrfObject*,
void* usr);
146 virtual void processVrfObjectAboutToBeRemoved(
const DtVrfObject*);
149 static void organizationManagerNodeAdded(
const DtUUID&,
void*);
150 virtual void processOrganizationManagerNodeAdded(
const DtUUID&);
153 virtual void removeWatchedNode(
const DtUUID&);
155 static void childAddedCallback(
const DtUUID& superior,
const DtUUID& subordinate,
void* usr);
156 virtual void processChildAdded(
const DtUUID& superior,
const DtUUID& subordinate);
158 static void childRemovedCallback(
const DtUUID& superior,
const DtUUID& subordinate,
void* usr);
159 virtual void processChildRemoved(
const DtUUID& superior,
const DtUUID& subordinate);
161 static void organizationManagerNodeAboutToBeRemoved(
const DtUUID&,
void*);
162 virtual void processOrganizationManagerNodeAboutToBeRemoved(
const DtUUID&);
164 static void orbatNodeRemovedCallback(
const DtUUID&,
const DtUUID&,
void*);
165 virtual void processOrbatNodeRemoved(
const DtUUID&,
const DtUUID&);
171 virtual void setOrbatNodeOrder(
DtOrbatManagerNode*,
int order,
bool inserting =
false);
177 virtual void processObjectDataChanged(
const DtVrfObject*,
int flag);
UUID is a unique ID wrapper class.
Definition: rwUUID.h:222
const UUIDMap & nodes() const
Definition: orbatManager.h:95
std::vector< DtRwOrbatData > DtOrbatDataList
Definition: rwOrbatData.h:93
Definition: ifOrbatOperation.h:34
UnparentedOrbatNodes myUnparentedOrbatNodes
Definition: orbatManager.h:188
DtVrfObject is used to represent any type of simulated object (entities, aggregate, control objects) in a VR-Forces application.
Definition: vrfObject.h:215
Definition: organizationManagerNode.h:64
std::map< int, DtOrbatManagerNode * > RootNodesByForce
Definition: orbatManager.h:202
This class derives from the DtOrganizationManager and will handle all requests as it pertains to the ...
Definition: orbatManager.h:25
std::map< std::string, int > myEntityTypeCounts
Number of items used by entity type so unique name can be generated when adding nodes to the orbat...
Definition: orbatManager.h:194
std::map< DtUUID, OrbatNodeList > UnparentedOrbatNodes
Definition: orbatManager.h:186
boost::unordered_map< DtUUID, DtOrbatManagerNode * > UUIDMap
Definition: orbatManager.h:36
UUIDMap myModifiedNodes
Map of modified nodes to be sent off during a tick.
Definition: orbatManager.h:200
DtSetIsOrbatEnabledCommand * mySetIsOrbatEnabledCommand
Definition: orbatManager.h:206
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
Definition: rwOrbatData.h:20
DtVrfObjectManager * myObjectManager
Definition: orbatManager.h:191
File: simMsg.h.
Definition: simMessage.h:35
std::vector< DtOrbatManagerNode * > OrbatNodeList
Definition: orbatManager.h:185
bool myIsOrbatEnabled
Definition: orbatManager.h:183
Definition: vrfObject.h:93
class DtVrfObjectManager:
Definition: vrfObjectManager.h:201
UUIDMap myOrbatNodes
Definition: orbatManager.h:189
std::map< DtUUID, DtOrganizationManagerNode * > WatchedNodes
Definition: orbatManager.h:196
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
WatchedNodes myWatchedNodes
Definition: orbatManager.h:197
Contains the declaration of DtOrbatManagerNode, the class that represents a single node the hierarchy...
Definition: orbatManagerNode.h:18
DtIsOrbatEnabledCommand * myIsOrbatEnabledCommand
Definition: orbatManager.h:205
RootNodesByForce myRootNodesByForce
Definition: orbatManager.h:203