![]() |
VR-Forces 4.0.4 Class Documentation
|
DtPseudoAggregateOrganizationController is the controller component in pseudo-aggregates responsible for maintaining the command organization within its group of subordinate entities. More...

Public Member Functions | |
| DtAggregateOrganizationController (const DtString &name, DtVrfObject *owner, DtSimManager *simManager, DtComponentDescriptor *desc=0, DtReaderWriterRegistry *parentRegistry=0) | |
| (const DtString&,DtVrfObject*,DtSimManager*, | |
| virtual | ~DtAggregateOrganizationController () |
| destructor | |
| virtual DtString | type () const |
| Returns a string identifies the class type of component. | |
| virtual void | tick () |
| Updates the echelon organization as necessary, such as in the event of an entity getting destroyed or removed. | |
| virtual void | setRadio (DtSimBaseRadio *radio) |
| Override to add callback for setReorganize messages. | |
| virtual void | onSetReorganize (DtSimMessage *msg) |
| Handler for setReorganize messages. | |
| virtual void | registerWithOrgManager () |
| virtual void | unregisterWithOrgManager () |
Static Public Member Functions | |
| static void | subordinatesChangedCallback (DtEntityIdentifier entId, void *usr) |
| static void | reorganizeCallback (DtSimMessage *msg, void *usrData) |
| Callback for handling reorganize messages. | |
| static DtSimComponent * | creator (const DtString &name, DtVrfObject *owner, DtSimManager *simManager, DtComponentDescriptor *desc=0, DtReaderWriterRegistry *parentRegistry=0) |
| (const DtString&,DtVrfObject*,DtSimManager*, | |
Protected Member Functions | |
| virtual void | processSubordinatesChangedCallback (DtEntityIdentifier entId) |
| virtual void | initiateAllSubordinates () |
| Checks the internal subordinate list against the subordinate manager for any new or removed subordinates. | |
| virtual void | initiateNewSubordinate (DtVrfObject *subordinate, int designator) |
| Called by checkSubordinates. | |
| virtual void | setCommandNetRadioChannel () |
| Sets the command net radio channel for this entity's radio to a unique number based on the entity identifier. | |
| virtual int | nextAvaliableDesignator () |
| Returns the next avaliable designator to be used. | |
| virtual void | reorganize () |
| Reorganizes the aggregate members, moving destroyed or independly tasked entities to the bottom of the list (lowest rank). | |
| virtual void | sendSetDesignator (int designator, const DtString &objectName) |
| Transmitts a setDesignator to the specified object with the specified designator. | |
| virtual bool | reorganizeNeeded () |
| Returns true if reorganization is needed (invalid entities need to be reassigned to least significant roles). | |
Protected Attributes | |
| bool | myRegisteredWithOrgManager |
| Working list of subordinates (DtVrfObject*'s). | |
| DtCommandChannelRadio * | myCommandRadio |
Private Member Functions | |
| DtAggregateOrganizationController () | |
| Not implemented. | |
| DtAggregateOrganizationController (const DtAggregateOrganizationController &orig) | |
| Not implemented. | |
| DtAggregateOrganizationController & | operator= (const DtAggregateOrganizationController &orig) |
| Not implemented. | |
DtPseudoAggregateOrganizationController is the controller component in pseudo-aggregates responsible for maintaining the command organization within its group of subordinate entities.
Uses Descriptor Type: DtComponentDescriptor
Not implemented.
| DtAggregateOrganizationController::DtAggregateOrganizationController | ( | const DtAggregateOrganizationController & | orig | ) | [private] |
Not implemented.
| DtAggregateOrganizationController::DtAggregateOrganizationController | ( | const DtString & | name, |
| DtVrfObject * | owner, | ||
| DtSimManager * | simManager, | ||
| DtComponentDescriptor * | desc = 0, |
||
| DtReaderWriterRegistry * | parentRegistry = 0 |
||
| ) |
(const DtString&,DtVrfObject*,DtSimManager*,
| name | Reader writer name of this component. |
| owner | The DtVrfObject that owns this component |
| simManager | The simulation manager (provides access to terrain, message interface, simulation clock). |
| desc | The component descriptor used to initialize this component. |
| parentRegistry | Pointer to the parent reader writer registry (the containing object that reads/writes this object). |
| virtual DtAggregateOrganizationController::~DtAggregateOrganizationController | ( | ) | [virtual] |
destructor
| DtAggregateOrganizationController& DtAggregateOrganizationController::operator= | ( | const DtAggregateOrganizationController & | orig | ) | [private] |
Not implemented.
| virtual DtString DtAggregateOrganizationController::type | ( | ) | const [virtual] |
Returns a string identifies the class type of component.
Type values are defined in compTypes.h. DtSimComponent creation functions are registered with the DtSimComponentFactory using the type values as the key.
Reimplemented from DtOrganizationController.
Reimplemented in DtTopLevelOrganizationController.
| virtual void DtAggregateOrganizationController::tick | ( | ) | [virtual] |
Updates the echelon organization as necessary, such as in the event of an entity getting destroyed or removed.
Will only perform reorganization (re-assignment of echelon IDs) if enabled in the entity manager.
Reimplemented from DtOrganizationController.
Reimplemented in DtTopLevelOrganizationController.
| virtual void DtAggregateOrganizationController::setRadio | ( | DtSimBaseRadio * | radio | ) | [virtual] |
Override to add callback for setReorganize messages.
Calls setCommandNetRadioChannel to initialize the radio channel.
Reimplemented from DtOrganizationController.
| virtual void DtAggregateOrganizationController::onSetReorganize | ( | DtSimMessage * | msg | ) | [virtual] |
Handler for setReorganize messages.
Reorganizes the unit if necessary (one or more member entities have been destroyed, missing, or independently tasked).
| virtual void DtAggregateOrganizationController::registerWithOrgManager | ( | ) | [virtual] |
| virtual void DtAggregateOrganizationController::unregisterWithOrgManager | ( | ) | [virtual] |
| static void DtAggregateOrganizationController::subordinatesChangedCallback | ( | DtEntityIdentifier | entId, |
| void * | usr | ||
| ) | [static] |
| static void DtAggregateOrganizationController::reorganizeCallback | ( | DtSimMessage * | msg, |
| void * | usrData | ||
| ) | [static] |
Callback for handling reorganize messages.
| static DtSimComponent* DtAggregateOrganizationController::creator | ( | const DtString & | name, |
| DtVrfObject * | owner, | ||
| DtSimManager * | simManager, | ||
| DtComponentDescriptor * | desc = 0, |
||
| DtReaderWriterRegistry * | parentRegistry = 0 |
||
| ) | [static] |
(const DtString&,DtVrfObject*,DtSimManager*,
| name | Reader writer name of this component. |
| owner | The DtVrfObject that owns this component |
| simManager | The simulation manager (provides access to terrain, message interface, simulation clock). |
| desc | The component descriptor used to initialize this component. |
| parentRegistry | Pointer to the parent reader writer registry (the containing object that reads/writes this object). |
Reimplemented from DtOrganizationController.
Reimplemented in DtTopLevelOrganizationController.
| virtual void DtAggregateOrganizationController::processSubordinatesChangedCallback | ( | DtEntityIdentifier | entId | ) | [protected, virtual] |
| virtual void DtAggregateOrganizationController::initiateAllSubordinates | ( | ) | [protected, virtual] |
Checks the internal subordinate list against the subordinate manager for any new or removed subordinates.
Sends the set designator message to every subordinate.
| virtual void DtAggregateOrganizationController::initiateNewSubordinate | ( | DtVrfObject * | subordinate, |
| int | designator | ||
| ) | [protected, virtual] |
Called by checkSubordinates.
Sends a setChannel message and sends a message informing the subordinate of it's new designator.
| virtual void DtAggregateOrganizationController::setCommandNetRadioChannel | ( | ) | [protected, virtual] |
Sets the command net radio channel for this entity's radio to a unique number based on the entity identifier.
Reimplemented in DtTopLevelOrganizationController.
| virtual int DtAggregateOrganizationController::nextAvaliableDesignator | ( | ) | [protected, virtual] |
Returns the next avaliable designator to be used.
Reimplemented in DtTopLevelOrganizationController.
| virtual void DtAggregateOrganizationController::reorganize | ( | ) | [protected, virtual] |
Reorganizes the aggregate members, moving destroyed or independly tasked entities to the bottom of the list (lowest rank).
Reassigns the echelon ID designators, starting with 1, and with no gaps.
Reimplemented in DtTopLevelOrganizationController.
| virtual void DtAggregateOrganizationController::sendSetDesignator | ( | int | designator, |
| const DtString & | objectName | ||
| ) | [protected, virtual] |
Transmitts a setDesignator to the specified object with the specified designator.
| virtual bool DtAggregateOrganizationController::reorganizeNeeded | ( | ) | [protected, virtual] |
Returns true if reorganization is needed (invalid entities need to be reassigned to least significant roles).
Reimplemented in DtTopLevelOrganizationController.
Working list of subordinates (DtVrfObject*'s).
DtList mySubordinateEntityList;