15 #ifndef DtOrganizationView_H_
16 #define DtOrganizationView_H_
20 #include <vlutil/vlList.h>
21 #include <vlutil/vlHashlist.h>
22 #include <vl/globalObjectDesignator.h>
23 #include <vlpi/disEnums.h>
31 class DtEntityIdentifier;
33 class DtReflectedExtAggregate;
66 const DtEntityIdentifier&
id)
const;
70 virtual bool isSubordinateOfTopLevel(
71 const DtEntityIdentifier&
id)
const;
74 virtual const DtEntityIdentifier& superior(
75 const DtEntityIdentifier&
id)
const;
78 virtual DtVrfObject* superiorVrfObject(
const DtEntityIdentifier&
id)
const;
81 virtual bool isSubordinateOf(
const DtEntityIdentifier& subordinateId,
82 const DtEntityIdentifier& superiorId)
const;
95 virtual void updateAggregate(
DtVrfObject *vrfObject);
107 const DtEntityIdentifier& aggregateId,
110 bool reevaluateFlag =
false,
DtTime evaluationPeriod = 0.)
const;
118 const DtGlobalObjectDesignator& globalId)
const;
124 virtual void printHierarchy()
const;
130 virtual DtVrfObject* topLevelObjectForForce(
const DtForceType& force);
136 virtual const DtHashList& nodes()
const;
138 static bool isTopLevelEntity(
const DtEntityType & objectType);
143 static bool isOrganizedAggregate(
DtVrfObject *vrfObject);
146 static bool isOrganizedEntity(
DtVrfObject *vrfObject);
150 static void vrfObjectAddedCallback(
DtVrfObject *vrfObject,
void* usr);
151 static void vrfObjectAboutToBeRemovedCallback(
DtVrfObject *vrfObject,
157 virtual void addNodeAddedCallback(
159 virtual void removeNodeAddedCallback(
166 virtual void addNodeRemovedCallback(
168 virtual void removeNodeRemovedCallback(
173 virtual void processVrfObjectAdded(
DtVrfObject *vrfObject);
177 virtual void processVrfObjectAboutToBeRemoved(
DtVrfObject *vrfObject);
180 virtual bool shouldBeAdded(
DtVrfObject *vrfObject)
const;
202 bool allowCreation =
true);
206 int indentLevel = 0)
const;
211 virtual bool networkStateIsDifferentFromLocalState(
216 virtual void invokeNodeAddedCallbacks(
217 const DtEntityIdentifier& entId)
const;
221 virtual void invokeNodeRemovedCallbacks(
222 const DtEntityIdentifier& entId)
const;