11 #include <vlutil/vlConfig.h>
21 class DtPrintPendingOpsCommand;
22 class DtDeletePendingOpsCommand;
88 virtual void setSuperior(
const DtUUID& subordinate,
89 const DtUUID& superior,
int designator = 0,
90 bool localOnly =
false);
96 virtual void setSuperiorToForce(
const DtUUID& subordinate,
97 int designator = 0,
bool localOnly =
false);
106 virtual void queueSetSuperior(
const DtUUID& subordinate,
107 const DtUUID& superior,
int designator = 0,
117 virtual void queueSetSuperiorToForce(
const DtUUID& subordinate,
127 virtual void removeChangeSetCallback(
int changeSetRequestId,
133 virtual void detatchFromSuperior(
const DtUUID& subordinate,
134 bool localOnly =
false);
138 virtual void setSubordinateOrder(
const DtUUID& superior,
139 const std::vector<DtEntityIdentifier>& orderedSubordinateList,
140 bool localOnly =
false);
142 static void addToOrganizationCallback(
DtSimMessage* msg,
void* usr);
143 static void removeFromOrganizationCallback(
DtSimMessage* msg,
void* usr);
148 virtual bool allLocalOrgChangesComplete()
const;
151 virtual bool hasPendingOperations()
const;
154 virtual void addOrganizationManagerReadyCallback(
158 virtual void removeOrganizationManagerReadyCallback(
162 virtual void runPendingOperations();
164 virtual void printPendingOperations()
const;
166 virtual void deletePendingOperations();
168 virtual void deletePendingOperationsFor(
DtString objectName);
174 virtual void closingScenario();
178 virtual void invokeOrganizationManagerReadyCallbacks();
180 virtual void processAddToOrganization(
DtSimMessage* msg);
181 virtual void processRemoveFromOrganization(
DtSimMessage* msg);
185 virtual bool setSuperiorIsLocal(
const DtUUID& subordinate,
186 const DtUUID& superiorId);
190 virtual bool setSuperiorToForceIsLocal(
const DtUUID& subordinate);
193 virtual bool detatchFromSuperiorIsLocal(
const DtUUID& subordinate);
196 virtual bool setSubordinateOrderIsLocal(
const DtUUID& superior)
const;
204 virtual unsigned int newPendingOperationId();
206 virtual void clearPendingOperationId(
unsigned int id);
208 static void pendingOperationCompleteCallback(
void* usr);
UUID is a unique ID wrapper class.
Definition: rwUUID.h:222
DtOrganizationChangeSet.
Definition: organizationChangeSet.h:21
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
DtList myPendingOperationList
List of DtOrgManagerOperations which have not been successfully executed yet.
Definition: organizationManager.h:217
DtDeletePendingOpsCommand * myDeletePendingOpsCommand
Definition: organizationManager.h:228
bool myReady
Definition: organizationManager.h:29
int numberOfOperations() const
Number of operations that are pending.
Definition: organizationManager.h:171
DtOrganizationReadyCallbackList myOrganizationManagerReadyCallbackList
Definition: organizationManager.h:225
This class maintains a hierarchy of the existing organized entities for a simulation based on the con...
Definition: organizationView.h:42
DtCallbackList< const DtOrganizationManagerReadyCallbackInfo & >::DtCallbackFunctionType DtOrganizationManagerReadyCallbackFcn
Callback function definition for organization manager readiness state change.
Definition: organizationManager.h:34
std::pair< DtOrganizationManager *, unsigned int > DtPendingOperationCompletionCallbackData
Structure used in the userData field of the pending operation callbacks.
Definition: organizationManager.h:214
void(* DtOrganizationManagerCallbackFcn)(void *usr)
Definition: organizationManager.h:24
DtSimInterfaceMessage is used to send a message to the front end or the back end. ...
Definition: simInterfaceMessage.h:32
virtual void updateEntity(const DtVrfObject *vrfObject)
Updates the connections to the node corresponding to this entity.
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
virtual DtOrganizationManagerNode * addEntity(const DtVrfObject *vrfObject)
Functions for manipulating the hierarchy.
File: simMsg.h.
Definition: simMessage.h:35
bool myOperationsRunning
Flag to prevent reentrance of runPendingOperations.
Definition: organizationManager.h:220
Definition: noArgumentCallbackList.h:91
virtual void updateAggregate(const DtVrfObject *vrfObject)
Updates the connections to the node corresponding to this aggregate.
DtCallbackList< const DtOrganizationManagerReadyCallbackInfo & > DtOrganizationReadyCallbackList
Definition: organizationManager.h:57
unsigned int myNextPendingOperationId
Definition: organizationManager.h:223
This class derives from the DtOrganizationView, and adds the capability to manipulate the hierarchy...
Definition: organizationManager.h:46
class DtVrfObjectManager:
Definition: vrfObjectManager.h:202
Definition: orgManagerOperations.h:18
std::list< unsigned int > myPendingOperationIdList
Definition: organizationManager.h:222
DtOrganizationView & operator=(const DtOrganizationView &orig)
Assignment operator not implemented.
static int theNextId
Definition: organizationManager.h:230
virtual void removeEntity(const DtVrfObject *vrfObject)
Removes the node for this entity from the hierarchy.
DtPrintPendingOpsCommand * myPrintPendingOpsCommand
Definition: organizationManager.h:227
Container used in callback lists.
Definition: organizationManager.h:27