![]() |
VR-Link API Documentation for HLA 1.3
|
An instance of this class manages the list of "IFF" objects that are simulated remotely, and reflected to us by the RTI. More...
Inheritance diagram for DtReflectedIffList:
Collaboration diagram for DtReflectedIffList:Public Member Functions | |
| DtReflectedIffList (DtExerciseConn *exConn, const DtDDMRegionSet *regionSetToUse=0, const DtString &updateRateTag=DtString("")) | |
| Constructor. More... | |
| DtReflectedIffList (DtExerciseConn *exConn, const DtList *handleList, const DtDDMRegionSet *regionSetToUse=0, const DtString &updateRateTag=DtString("")) | |
| Constructor - only subscribe to the RTI::ObjectClassHandles in handleList. More... | |
| virtual | ~DtReflectedIffList () |
| destructor More... | |
| virtual DtReflectedIff * | lookup (RTI::ObjectHandle id) |
| Look up object by identifier. More... | |
| virtual DtReflectedIff * | lookup (const DtGlobalObjectDesignator &objName) |
| Look up object by name (global object designator). More... | |
| virtual DtReflectedIff * | first () const |
| Get the first/last object in the list. More... | |
| virtual DtReflectedIff * | last () const |
| virtual void | addIffAdditionCallback (DtIffCallbackFunction cb, void *userData) |
| Registration/deregistration of object addition callbacks. More... | |
| virtual void | removeIffAdditionCallback (DtIffCallbackFunction cb, void *userData) |
| virtual void | addIffRemovalCallback (DtIffCallbackFunction cb, void *userData) |
| Registration/deregistration of object removal callbacks. More... | |
| virtual void | removeIffRemovalCallback (DtIffCallbackFunction cb, void *userData) |
Public Member Functions inherited from DtReflectedObjectList | |
| DtReflectedObjectList (DtExerciseConn *exConn, const DtDDMRegionSet *regionSetToUse=0, const DtString &updateRateTag=DtString("")) | |
| Constructor. More... | |
| virtual | ~DtReflectedObjectList () |
| destructor More... | |
| virtual DtReflectedObject * | lookupObj (RTI::ObjectHandle id) |
| Look up object by identifier. More... | |
| virtual DtReflectedObject * | lookupObj (const DtGlobalObjectDesignator &objName) |
| Look up object by global ID (which is the object name in RTI1.3.3). More... | |
| virtual int | count () const |
| Get number of objects. More... | |
| virtual DtExerciseConn * | exerciseConn () const |
| Get my exerciseConn. More... | |
| virtual void | manageObjectClass (RTI::ObjectClassHandle handle) |
| Register callbacks with exercise connection so that we get notified when an object of this class is discovered. More... | |
| virtual bool | removeObject (const DtObjectId &id) |
| Have the application act as though we had never discovered the object. More... | |
| virtual void | addObjectAdditionCallback (DtReflectedObjectCallbackFunction cb, void *userData) |
| Object added callback registration/deregistration. More... | |
| virtual void | removeObjectAdditionCallback (DtReflectedObjectCallbackFunction cb, void *userData) |
| virtual void | addObjectRemovalCallback (DtReflectedObjectCallbackFunction cb, void *userData) |
| Object removed callback registration/deregistration. More... | |
| virtual void | removeObjectRemovalCallback (DtReflectedObjectCallbackFunction cb, void *userData) |
| virtual void | print () |
| Print the SRs of all objects. More... | |
| virtual void | printWaitList () |
| Print the SRs of all waiting objects (most likely will have mostly bad data). More... | |
| virtual void | setTimeoutProcessing (bool onOff) |
| Set whether or not timeout processing occurs. More... | |
| virtual bool | isTimeoutProcessing () const |
| Get whether or not timeout processing occurs. More... | |
| virtual bool | requestsEnabled () const |
| Get whether or not to process requests for reflected objects that were just discovered or are waiting for updates (to meet discovery criteria). More... | |
| virtual int | numberObjectsWaiting () const |
| Return the number of objects in the wait list. More... | |
| virtual DtTime | nextRequestTime () const |
| Return the time when the next request will be made for entries in the wait refresh list. More... | |
| virtual void | setDiscoveryCondition (DtDiscoveryCondition fn, void *usr) |
| Set the checker function which will determine when an object gets discovered and put into the reflected list. More... | |
| virtual void | clearDiscoveryCondition () |
| Unregisters the checker function set in setDiscoverCondition. More... | |
| virtual const DtDDMRegionSet & | subscribedRegions () |
| Returns list of regions subscribed to. More... | |
| virtual DtReflectedObject * | firstObj () const |
| Get the first/last object in the list. More... | |
| virtual DtReflectedObject * | lastObj () const |
| Get the first/last object in the list. More... | |
| virtual void | setTimeoutInterval (DtTime time) |
| Set/Get the remote object timeout period. More... | |
| virtual DtTime | timeoutInterval () const |
| Set/Get the remote object timeout period. More... | |
| virtual void | setWaitListRefreshEnabled (bool on) |
| Set whether or not we will resend request updates for objects which remain on wait list because they have not met discovery criteria. More... | |
| virtual bool | waitListRefreshEnabled () const |
| Set whether or not we will resend request updates for objects which remain on wait list because they have not met discovery criteria. More... | |
| virtual void | setWaitListRefreshPeriod (DtTime period) |
| Set/Get the wait list refresh period. More... | |
| virtual DtTime | waitListRefreshPeriod () const |
| Set/Get the wait list refresh period. More... | |
| virtual DtReflectedObject * | firstWaitingObj () const |
| Get the first/last object in the wait list. More... | |
| virtual DtReflectedObject * | lastWaitingObj () const |
| Get the first/last object in the wait list. More... | |
Protected Member Functions | |
| DtReflectedIffList (const DtReflectedIffList &orig) | |
| copy constructor More... | |
| DtReflectedIffList & | operator= (const DtReflectedIffList &orig) |
| assignment operator More... | |
| virtual const DtList * | dfltHandleList () |
| Asks the FOM Mapper for the DtList of RTI::ObjectClassHandles to use. More... | |
| void | initIffDataLists (DtExerciseConn *exConn, const DtDDMRegionSet *regionSetToUse) |
| Initializes IFF Data reflected lists, called from CTOR. More... | |
| virtual void | objectAdded (DtReflectedObject *obj) |
| Called from processDiscoverObject() after a remote transmitter has been added to the list. More... | |
| virtual void | iffAdded (DtReflectedIff *ent) |
| Called by objectAdded (which is called from processDiscoverObject()) after a remote entity has been added to the list. More... | |
| virtual DtReflectedObject * | newReflectedObject (DtHlaObject *obj) const |
| Override of virtual function that the base class uses to create the appropriate kind of DtReflectedObject. More... | |
| virtual DtReflectedObject * | newReflectedIff (DtHlaObject *obj) const |
| Override of virtual function that the base class uses to create the appropriate kind of DtReflectedObject. More... | |
| virtual DtReflectedIff * | newReflectedIff (const DtGlobalObjectDesignator &des) const |
| Create a remote IFF system object for the HLA object. More... | |
| virtual void | removeAndDelete (DtReflectedObject *object, char *msg) |
| Virtual function override. More... | |
| virtual void | removeAndDelete (DtReflectedIff *entity, char *msg=NULL) |
| Default calls down to base class version, but can be overridden. More... | |
| virtual void | processIffDataAddition (DtReflectedIFFData *data) |
| Called by similar callback functions registered with myIffDataList on IFF Data additions/removals. More... | |
| virtual void | processIffDataUpdate (DtReflectedIFFData *data) |
| virtual void | processIffDataRemoval (DtReflectedIFFData *data) |
| virtual void | processMode5TransponderDataAddition (DtReflectedMode5Transponder *data) |
| virtual void | processMode5TransponderDataUpdate (DtReflectedMode5Transponder *data) |
| virtual void | processMode5TransponderDataRemoval (DtReflectedMode5Transponder *data) |
| virtual void | processMode5InterrogatorDataAddition (DtReflectedMode5Interrogator *data) |
| virtual void | processMode5InterrogatorDataUpdate (DtReflectedMode5Interrogator *data) |
| virtual void | processMode5InterrogatorDataRemoval (DtReflectedMode5Interrogator *data) |
| virtual void | processModeSTransponderDataAddition (DtReflectedModeSTransponder *data) |
| virtual void | processModeSTransponderDataUpdate (DtReflectedModeSTransponder *data) |
| virtual void | processModeSTransponderDataRemoval (DtReflectedModeSTransponder *data) |
| virtual void | processModeSInterrogatorDataAddition (DtReflectedModeSInterrogator *data) |
| virtual void | processModeSInterrogatorDataUpdate (DtReflectedModeSInterrogator *data) |
| virtual void | processModeSInterrogatorDataRemoval (DtReflectedModeSInterrogator *data) |
| virtual void | resolveOrphans () |
| Post drain callbacks to resolve orphan IFF Data. More... | |
| virtual void | resolveIffDataOrphans () |
| virtual void | resolveMode5TransponderOrphans () |
| virtual void | resolveMode5InterrogatorOrphans () |
| virtual void | resolveModeSTransponderOrphans () |
| virtual void | resolveModeSInterrogatorOrphans () |
Protected Member Functions inherited from DtReflectedObjectList | |
| virtual void | processDiscoverObject (DtHlaObject *obj) |
| Process the discovery of a remote object on the network. More... | |
| virtual void | processRemoveObject (DtHlaObject *obj) |
| Process the removal of a remote object from the network. More... | |
| virtual void | processTimedOutObjectReflect (const DtStateMsg &msg, DtHlaObject *obj) |
| Handle the receipt of attributes for a remote object which was timed out. More... | |
| virtual void | doTimeouts () |
| Remove any remote objects which have not been updated during the timeout period. More... | |
| virtual void | doRequestUpdates () |
| Request an update for discovered objects. More... | |
| virtual bool | shouldBeTimedOut (DtReflectedObject *object) |
| Returns whether or not the object should be timed out. More... | |
| virtual void | timeOutObject (DtReflectedObject *object) |
| Times out object by removing it from the remote object list and deleting it. More... | |
| virtual void | unTimeOutObject (DtHlaObject *obj) |
| Manages callbacks and data used for reinstating a remote object which was timed out. More... | |
| virtual void | addObjectClass (RTI::ObjectClassHandle handle) |
| Register interest in this FOM object class. More... | |
| virtual void | addObjectClassByName (const char *className) |
| Register interest in this FOM object class by className. More... | |
| virtual void | init (const DtList *handleList) |
| Register interest in a whole list of RTI::ObjectClassHandles all at once. More... | |
| void | emptyLists () |
| Empty the object list and the timeout list. More... | |
| void | emptyCallbackLists () |
| Empty the callback lists. More... | |
| virtual void | processObjectAdditionCallbacks (DtReflectedObject *object) |
| Process object addition/removal callbacks. More... | |
| virtual void | processObjectRemovalCallbacks (DtReflectedObject *object) |
| virtual void | findAlreadyDiscoveredObjects () |
| When list is created, we call this function to go through the list of all discovered HLA objects to see if any should be managed by this list. More... | |
| virtual void | checkDiscoveryCondition (DtReflectedObject *refObj) |
| virtual bool | readyToAdd (DtReflectedObject *obj) |
| Returns true if the obj is ready to be added to myObjectList; calls myWaitListChecker from within. More... | |
| virtual void | addToObjectList (DtReflectedObject *refObj) |
| Add refObj to myObjectList and initiates discovery callbacks. More... | |
| virtual void | addToWaitList (DtReflectedObject *refObj) |
| Add refObj to wait list. More... | |
| virtual void | removeFromWaitList (DtReflectedObject *refObj) |
| Remove refObj from wait list. More... | |
| virtual void | addToRefreshList (DtReflectedObject *refObj, DtTime timeToRefresh) |
| Add refObj to refresh list. More... | |
| virtual DtReflectedObject * | lookupObjInWaitList (RTI::ObjectHandle id) |
| Find object in waitList by identifier. More... | |
| virtual DtReflectedObject * | lookupObjInWaitList (const DtGlobalObjectDesignator &name) |
| Find object in waitList by name. More... | |
| void | unsubscribeRegions () |
Static Protected Member Functions | |
| static void | iffDataAdditionCb (DtReflectedIFFData *data, void *usr) |
| Callback functions registered with myIffDataList on iffData additions, updates, and removals. More... | |
| static void | iffDataUpdateCb (DtReflectedIFFData *data, void *usr) |
| static void | iffDataRemovalCb (DtReflectedIFFData *data, void *usr) |
| static void | mode5TransponderDataAdditionCb (DtReflectedMode5Transponder *data, void *usr) |
| Callback functions registered with myReflectedIffMode5TransponderList on mode5 transponder additions, updates, and removals. More... | |
| static void | mode5TransponderDataUpdateCb (DtReflectedMode5Transponder *data, void *usr) |
| static void | mode5TransponderDataRemovalCb (DtReflectedMode5Transponder *data, void *usr) |
| static void | mode5InterrogatorDataAdditionCb (DtReflectedMode5Interrogator *data, void *usr) |
| Callback functions registered with myReflectedIffMode5InterrogatorList on mode5 transponder additions, updates, and removals. More... | |
| static void | mode5InterrogatorDataUpdateCb (DtReflectedMode5Interrogator *data, void *usr) |
| static void | mode5InterrogatorDataRemovalCb (DtReflectedMode5Interrogator *data, void *usr) |
| static void | modeSTransponderDataAdditionCb (DtReflectedModeSTransponder *data, void *usr) |
| Callback functions registered with myReflectedIffModeSTransponderList on modeS transponder additions, updates, and removals. More... | |
| static void | modeSTransponderDataUpdateCb (DtReflectedModeSTransponder *data, void *usr) |
| static void | modeSTransponderDataRemovalCb (DtReflectedModeSTransponder *data, void *usr) |
| static void | modeSInterrogatorDataAdditionCb (DtReflectedModeSInterrogator *data, void *usr) |
| Callback functions registered with myReflectedIffModeSInterrogatorList on modeS transponder additions, updates, and removals. More... | |
| static void | modeSInterrogatorDataUpdateCb (DtReflectedModeSInterrogator *data, void *usr) |
| static void | modeSInterrogatorDataRemovalCb (DtReflectedModeSInterrogator *data, void *usr) |
| static void | resolveOrphansPostDrainCb (void *usr) |
| Callback that calls resolveOrphans. More... | |
Static Protected Member Functions inherited from DtReflectedObjectList | |
| static void | discoverObjectCb (DtHlaObject *hlaObj, void *rel) |
| Cast the void* to a DtReflectedObjectList* and calls processDiscoverObject(). More... | |
| static void | removeObjectCb (DtHlaObject *hlaObj, void *rel) |
| Cast the void* to a DtReflectedObjectList* and calls processRemoveObject(). More... | |
| static void | timedOutObjectReflectCb (const DtStateMsg &msg, DtHlaObject *obj, void *usr) |
| Cast the void* to a DtReflectedObjectList* and calls processTimedOutObjectReflect(). More... | |
| static void | doTimeoutsPostDrainCb (void *usr) |
| Calls doTimeouts. More... | |
| static void | doRequestUpdatesPostDrainCb (void *usr) |
| Calls doRequestUpdates. More... | |
| static void | postUpdateCb (DtReflectedObject *obj, void *usr) |
| Calls checkDiscoveryCondition. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from DtReflectedObjectList | |
| static bool | requestUpdateFlags () |
| Get flag that indicates if any requests are enabled (class, object, or initialized) More... | |
| static void | findDiscoveredObjectsCb (void *usr) |
| Post-drain callback that calls findAlreadyDiscovedObjects(). More... | |
| static void | setAutoSubscribeFlag (bool flag) |
| Set/Get flag which determines whether to subscribe to object classes that this list manages. More... | |
| static bool | autoSubscribeFlag () |
| Set/Get flag which determines whether to subscribe to object classes that this list manages. More... | |
| static void | setRequestClassUpdateFlag (bool onOff) |
| Set/Get flag that determines whether we request updates from all objects of the object classes we subscribe to. More... | |
| static bool | requestClassUpdateFlag () |
| Set/Get flag that determines whether we request updates from all objects of the object classes we subscribe to. More... | |
| static void | setRequestObjectUpdateFlag (bool onOff) |
| Set/Get flag that determines whether we request updates from an object as we discover it. More... | |
| static bool | requestObjectUpdateFlag () |
| Set/Get flag that determines whether we request updates from an object as we discover it. More... | |
| static void | setRequestWhenInitializedFlag (bool onOff) |
| Set/Get flag that determines whether we request updates for wait listed objects only when all known VRLStateObject instances are initialized. More... | |
| static bool | requestWhenInitializedFlag () |
| Set/Get flag that determines whether we request updates for wait listed objects only when all known VRLStateObject instances are initialized. More... | |
| static void | setDefaultWaitListRefreshFlag (bool onOff) |
| Set/Get the default wait list enabled flag value. More... | |
| static bool | defaultWaitListRefreshFlag () |
| Set/Get the default wait list enabled flag value. More... | |
| static void | setDefaultWaitListRefreshPeriod (DtTime period) |
| Set/Get the default wait list refresh period. More... | |
| static DtTime | defaultWaitListRefreshPeriod () |
| Set/Get the default wait list refresh period. More... | |
Static Protected Attributes inherited from DtReflectedObjectList | |
| static bool | theAutoSubscribeFlag |
| static bool | theRequestClassUpdateFlag |
| static bool | theRequestObjectUpdateFlag |
| static bool | theRequestWhenInitializedFlag |
| static bool | theRequestUpdateFlags |
| static bool | theDefaultWaitListRefreshFlag |
| static DtTime | theDefaultWaitListRefreshPeriod |
An instance of this class manages the list of "IFF" objects that are simulated remotely, and reflected to us by the RTI.
This class is derived from DtReflectedObjectList, which does most of the work. The derived class mostly exists to provide type safety, and to let the base class know which FOM classes should be managed by this list.
| DtReflectedIffList::DtReflectedIffList | ( | DtExerciseConn * | exConn, |
| const DtDDMRegionSet * | regionSetToUse = 0, |
||
| const DtString & | updateRateTag = DtString("") |
||
| ) |
Constructor.
| DtReflectedIffList::DtReflectedIffList | ( | DtExerciseConn * | exConn, |
| const DtList * | handleList, | ||
| const DtDDMRegionSet * | regionSetToUse = 0, |
||
| const DtString & | updateRateTag = DtString("") |
||
| ) |
Constructor - only subscribe to the RTI::ObjectClassHandles in handleList.
|
virtual |
destructor
|
protected |
copy constructor
|
virtual |
Registration/deregistration of object addition callbacks.
|
virtual |
Registration/deregistration of object removal callbacks.
|
protectedvirtual |
Asks the FOM Mapper for the DtList of RTI::ObjectClassHandles to use.
|
virtual |
Get the first/last object in the list.
|
protectedvirtual |
Called by objectAdded (which is called from processDiscoverObject()) after a remote entity has been added to the list.
Default implementation prints a message. Subclasses can override this function to add functionality on addition.
|
staticprotected |
Callback functions registered with myIffDataList on iffData additions, updates, and removals.
Calls processIffDataAddition/Update/Removal.
|
staticprotected |
|
staticprotected |
|
protected |
Initializes IFF Data reflected lists, called from CTOR.
|
virtual |
|
virtual |
Look up object by identifier.
|
virtual |
Look up object by name (global object designator).
|
staticprotected |
Callback functions registered with myReflectedIffMode5InterrogatorList on mode5 transponder additions, updates, and removals.
Calls processMode5InterrogatorDataAddition/Update/Removal.
|
staticprotected |
|
staticprotected |
|
staticprotected |
Callback functions registered with myReflectedIffMode5TransponderList on mode5 transponder additions, updates, and removals.
Calls processMode5TransponderDataAddition/Update/Removal.
|
staticprotected |
|
staticprotected |
|
staticprotected |
Callback functions registered with myReflectedIffModeSInterrogatorList on modeS transponder additions, updates, and removals.
Calls processModeSInterrogatorDataAddition/Update/Removal.
|
staticprotected |
|
staticprotected |
|
staticprotected |
Callback functions registered with myReflectedIffModeSTransponderList on modeS transponder additions, updates, and removals.
Calls processModeSTransponderDataAddition/Update/Removal.
|
staticprotected |
|
staticprotected |
|
protectedvirtual |
Override of virtual function that the base class uses to create the appropriate kind of DtReflectedObject.
Here, we create a DtReflectedIff.
|
protectedvirtual |
Create a remote IFF system object for the HLA object.
Caller is responsible for deletion.
|
protectedvirtual |
Override of virtual function that the base class uses to create the appropriate kind of DtReflectedObject.
Here, we create a DtReflectedIff.
Implements DtReflectedObjectList.
|
protectedvirtual |
Called from processDiscoverObject() after a remote transmitter has been added to the list.
Calls iffAdded.
Reimplemented from DtReflectedObjectList.
|
protected |
assignment operator
|
protectedvirtual |
Called by similar callback functions registered with myIffDataList on IFF Data additions/removals.
Addition function adds the data to the set of orphan data (since we don't know what system he's part of), the removal function removes the data's iffDataSR from his system's systemSR. Update function calls the data's system update callbacks if dataUpdateSystems == true in the reflected system list constructor.
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
Virtual function override.
Calls removeAndDelete(DtReflectedEntity*....)
Reimplemented from DtReflectedObjectList.
|
protectedvirtual |
Default calls down to base class version, but can be overridden.
|
virtual |
|
virtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
Post drain callbacks to resolve orphan IFF Data.
If a parent IFF System has been discovered, IFF Data objects will be added to the IFF System's state repository
|
staticprotected |
Callback that calls resolveOrphans.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Internal reflected IFF Data list for subscribing and receiving IFF Data objects.
|
protected |
|
protected |
|
protected |
|
protected |