VR-Forces 4.0.4 Class Documentation
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions
DtEchelonIdTable Class Reference

Class: DtEchelonIdTable. More...

List of all members.

Public Member Functions

 DtEchelonIdTable (DtVrfObjectManager *objectManager)
virtual ~DtEchelonIdTable ()
void emptyHashList ()
 Removes all data from the hash lists.
virtual bool init ()
 Registers callback for vrf object data messages.
virtual const DtEntityIdentifier & lookupEchelonId (const DtString &echelonString) const
 Returns the entity Id associated with this echelon id string.
virtual const DtStringlookupEntityId (const DtEntityIdentifier &entityId) const
 Returns the echelon string associated with this entity id.
virtual void addEntry (const DtEntityIdentifier &entityId, const DtString &echelonId)
 Creates the association between this entity Id and echelon Id in the table.
virtual bool removeEntry (const DtEntityIdentifier &entityId)
 Removes this entity Id and any echelon id associated with it from the table.
virtual void processVrfObjectAdded (DtVrfObject *vrfObject)
 Called when a new object is created, this method will add a predicate that that object to this this object know when its echelon id has changed.
virtual bool removeEntry (const DtString &echelonId)
 Removes this echelon id and any entity id associated with it from the table.

Static Public Member Functions

static void vrfObjectEchelonIdChanged (DtVrfObject *obj, DtVrfObjectPredicateEvaluator *predicateEval, void *usr)
static void vrfObjectAboutToBeRemovedCallback (DtVrfObject *vrfObject, void *usr)
static void vrfObjectAdded (DtVrfObject *vrfObject, void *usr)

Protected Member Functions

virtual void processVrfObjectEchelonIdChanged (DtVrfObject *obj)
virtual void processObjectAboutToBeRemoved (DtVrfObject *vrfObject)
virtual void localAddEntry (const DtEntityIdentifier &entityId, const DtString &echelonId)
 Actually does the addition of the association to the hash tables.

Protected Attributes

DtVrfObjectManagermyObjectManager
DtHashlist myEchelonIdHashlist
 List of entity identifiers indexed by echelon id strings.
DtHashlist myEntityIdHashlist
 List of echelon id strings indexed by entity identifiers.

Private Member Functions

 DtEchelonIdTable ()
 Not Implemented.
 DtEchelonIdTable (const DtEchelonIdTable &orig)
 Not Implemented.
DtEchelonIdTableoperator= (const DtEchelonIdTable &orig)
 Not Implemented.

Detailed Description

Class: DtEchelonIdTable.

Instances of this class maintain a table of echelon Id and the entity identifiers that are currently associated with them. It registers for VrfObjectData messages from an object manager, and uses these updates to keep itself up to date.


Constructor & Destructor Documentation

Not Implemented.

Not Implemented.

virtual DtEchelonIdTable::~DtEchelonIdTable ( ) [virtual]

Member Function Documentation

DtEchelonIdTable& DtEchelonIdTable::operator= ( const DtEchelonIdTable orig) [private]

Not Implemented.

Removes all data from the hash lists.

Non virtual because it is called from the destructor.

virtual bool DtEchelonIdTable::init ( ) [virtual]

Registers callback for vrf object data messages.

virtual const DtEntityIdentifier& DtEchelonIdTable::lookupEchelonId ( const DtString echelonString) const [virtual]

Returns the entity Id associated with this echelon id string.

virtual const DtString& DtEchelonIdTable::lookupEntityId ( const DtEntityIdentifier &  entityId) const [virtual]

Returns the echelon string associated with this entity id.

virtual void DtEchelonIdTable::addEntry ( const DtEntityIdentifier &  entityId,
const DtString echelonId 
) [virtual]

Creates the association between this entity Id and echelon Id in the table.

If one, or both of the two are already part of an existing association, the existing associations are first removed.

virtual bool DtEchelonIdTable::removeEntry ( const DtEntityIdentifier &  entityId) [virtual]

Removes this entity Id and any echelon id associated with it from the table.

virtual void DtEchelonIdTable::processVrfObjectAdded ( DtVrfObject vrfObject) [virtual]

Called when a new object is created, this method will add a predicate that that object to this this object know when its echelon id has changed.

IF this method is not called for each new object, the object's echelonId WILL NOT be added to this table, so it is imperitive that this method be called for each object that wants to have its echelonId added to this table. Called internally by callback vrfObjectAdded

virtual bool DtEchelonIdTable::removeEntry ( const DtString echelonId) [virtual]

Removes this echelon id and any entity id associated with it from the table.

static void DtEchelonIdTable::vrfObjectEchelonIdChanged ( DtVrfObject obj,
DtVrfObjectPredicateEvaluator predicateEval,
void *  usr 
) [static]
static void DtEchelonIdTable::vrfObjectAboutToBeRemovedCallback ( DtVrfObject vrfObject,
void *  usr 
) [static]
static void DtEchelonIdTable::vrfObjectAdded ( DtVrfObject vrfObject,
void *  usr 
) [static]
virtual void DtEchelonIdTable::processVrfObjectEchelonIdChanged ( DtVrfObject obj) [protected, virtual]
virtual void DtEchelonIdTable::processObjectAboutToBeRemoved ( DtVrfObject vrfObject) [protected, virtual]
virtual void DtEchelonIdTable::localAddEntry ( const DtEntityIdentifier &  entityId,
const DtString echelonId 
) [protected, virtual]

Actually does the addition of the association to the hash tables.

No checks for duplicates are performed.


Member Data Documentation

List of entity identifiers indexed by echelon id strings.

List of echelon id strings indexed by entity identifiers.


The documentation for this class was generated from the following file:

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)