8 #ifndef organizationManager_H_
9 #define organizationManager_H_
14 #include <vlutil/vlConfig.h>
24 class DtPrintPendingOpsCommand;
25 class DtDeletePendingOpsCommand;
91 virtual void setSuperior(
const DtEntityIdentifier& subordinateId,
92 const DtEntityIdentifier& superiorId,
int designator = 0,
93 bool localOnly =
false);
99 virtual void setSuperiorToForce(
const DtEntityIdentifier& subordinateId,
100 int designator = 0,
bool localOnly =
false);
109 virtual void queueSetSuperior(
const DtString& subordinateName,
110 const DtString& superiorName,
int designator = 0,
120 virtual void queueSetSuperiorToForce(
const DtString& subordinateName,
130 virtual void removeChangeSetCallback(
int changeSetRequestId,
136 virtual void detatchFromSuperior(
const DtEntityIdentifier& subordinateId,
137 bool localOnly =
false);
141 virtual void setSubordinateOrder(
const DtEntityIdentifier& superiorId,
142 const std::vector<DtEntityIdentifier>& orderedSubordinateList,
143 bool localOnly =
false);
145 static void addToOrganizationCallback(
DtSimMessage* msg,
void* usr);
146 static void removeFromOrganizationCallback(
DtSimMessage* msg,
void* usr);
151 static void objectAboutToBeRemovedCallback(
DtVrfObject* vrfObject,
153 virtual void processObjectAboutToBeRemoved();
158 virtual bool allLocalOrgChangesComplete()
const;
161 virtual bool hasPendingOperations()
const;
164 virtual void addOrganizationManagerReadyCallback(
168 virtual void removeOrganizationManagerReadyCallback(
172 virtual void runPendingOperations();
174 virtual void printPendingOperations()
const;
176 virtual void deletePendingOperations();
178 virtual void deletePendingOperationsFor(
DtString objectName);
180 virtual void updateObjectIndex();
185 virtual bool objectExistsInIndexByName(
const DtString& name,
191 virtual bool objectExistsInIndexByGlobalId(
const DtString& globalId,
DtString& simAddress);
196 static void objectIndexMessageCallback(
DtSimMessage* msg,
void* usr);
202 virtual void invokeOrganizationManagerReadyCallbacks();
204 virtual void processAddToOrganization(
DtSimMessage* msg);
205 virtual void processRemoveFromOrganization(
DtSimMessage* msg);
209 virtual bool setSuperiorIsLocal(
const DtEntityIdentifier& subordinateId,
210 const DtEntityIdentifier& superiorId);
214 virtual bool setSuperiorToForceIsLocal(
const DtEntityIdentifier& subordinateId);
217 virtual bool detatchFromSuperiorIsLocal(
const DtEntityIdentifier& subordinateId);
220 virtual bool setSubordinateOrderIsLocal(
const DtEntityIdentifier& superiorId)
const;
228 virtual unsigned int newPendingOperationId();
230 virtual void clearPendingOperationId(
unsigned int id);
232 static void pendingOperationCompleteCallback(
void* usr);