VR-Link API Documentation for HLA Evolved
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Private Member Functions
DtReflectedUnderwaterAcousticsList Class Reference

Instances of DtReflectedUnderwaterAcousticsList manage a list of DtReflectedActiveSonar objects. More...

+ Inheritance diagram for DtReflectedUnderwaterAcousticsList:
+ Collaboration diagram for DtReflectedUnderwaterAcousticsList:

Public Member Functions

 DtReflectedUnderwaterAcousticsList (DtExerciseConn *exConn, const DtDDMRegionSet *regionSetToUse=0, const DtString &updateRateTag="")
 Constructor.
 DtReflectedUnderwaterAcousticsList (DtExerciseConn *exConn, const DtList *handleList, const DtDDMRegionSet *regionSetToUse=0, const DtString &updateRateTag="")
 Constructor - only subscribe to the RTI::ObjectClassHandles in handleList.
virtual ~DtReflectedUnderwaterAcousticsList ()
 Destructor.
virtual
DtReflectedUnderwaterAcoustics
lookup (RTI::ObjectHandle id)
 Look up by identifier.
virtual
DtReflectedUnderwaterAcoustics
lookupName (const DtGlobalObjectDesignator &objName)
 Lookup an underwater acoustics object from its host ID.
virtual
DtReflectedUnderwaterAcoustics
lookup (const DtGlobalObjectDesignator &hostId) const
 Lookup an underwater acoustics object from its host ID.
virtual
DtReflectedUnderwaterAcoustics
getUnderwaterAcoustics (const DtGlobalObjectDesignator &hostId)
 Get the underwater acoustics object for the given host ID.
virtual
DtReflectedUnderwaterAcoustics
first () const
 Get the first reflected object in the list.
virtual
DtReflectedUnderwaterAcoustics
last () const
 Get the last reflected object in the list.
virtual void addUnderwaterAcousticsAdditionCallback (DtUnderwaterAcousticsCallbackFunction cb, void *userData)
 ActiveSonar added callback registration.
virtual void removeUnderwaterAcousticsAdditionCallback (DtUnderwaterAcousticsCallbackFunction cb, void *userData)
 ActiveSonar added callback de-registration.
virtual void addUnderwaterAcousticsRemovalCallback (DtUnderwaterAcousticsCallbackFunction cb, void *userData)
 ActiveSonar removed callback registration.
virtual void removeUnderwaterAcousticsRemovalCallback (DtUnderwaterAcousticsCallbackFunction cb, void *userData)
 ActiveSonar removed callback de-registration.
virtual
DtReflectedPropulsionNoiseList
refPropNoiseList ()
 Returns a pointer to the reflected prop noise list that we are using internally to track our constituent prop noises.
virtual
DtReflectedAdditionalPassiveActivitiesList
refApaList ()
 Returns a pointer to the reflected APA list that we are using internally to track our constituent APAs.
virtual
DtReflectedActiveSonarList
refActiveSonarList ()
 Returns a pointer to the reflected active sonar list that we are using internally to track our constituent sonars.
virtual void setDiscoveryCondition (DtDiscoveryCondition fn, void *usr)
 Over-rides DtReflectedObjectList::setDiscoveryCondition().
virtual void clearDiscoveryCondition ()
 Overrides the DtReflectedObjectList::clearDiscoveryCondition.
virtual void setPropNoiseDiscoveryCondition (DtDiscoveryCondition fn, void *usr)
 Call this function to register a discovery condition on the prop noises of underwater acoustics objects.
virtual void clearPropNoiseDiscoveryCondition ()
 Call this function to remove the previously registered discovery condition.
virtual bool delayPropNoiseDiscovery (DtReflectedObject *propNoise, void *usr)
 The following function checks whether a prop noise should be discovered; It only gets called if discovery conditions get registered either by calling DtReflectedPropulsionNoiseList::setDiscoveryCondition() or DtReflectedPropulsionNoiseList::setSonarDiscoveryCondition().
virtual void setApaDiscoveryCondition (DtDiscoveryCondition fn, void *usr)
 Call this function to register a discovery condition on the APAs of underwater acoustics objects.
virtual void clearApaDiscoveryCondition ()
 Call this function to remove the previously registered discovery condition.
virtual bool delayApaDiscovery (DtReflectedObject *apa, void *usr)
 The following function checks whether an active sonar should be discovered; It only gets called if discovery conditions get registered either by calling DtReflectedActiveSonarSystemList::setDiscoveryCondition() or DtReflectedActiveSonarSystemList::setSonarDiscoveryCondition().
virtual void setSonarDiscoveryCondition (DtDiscoveryCondition fn, void *usr)
 Call this function to register a discovery condition on the active sonars of underwater acoustics objects.
virtual void clearSonarDiscoveryCondition ()
 Call this function to remove the previously registered discovery condition.
virtual bool delaySonarDiscovery (DtReflectedObject *sonar, void *usr)
 The following function checks whether an active sonar should be discovered; It only gets called if discovery conditions get registered either by calling DtReflectedActiveSonarSystemList::setDiscoveryCondition() or DtReflectedActiveSonarSystemList::setSonarDiscoveryCondition().
- Public Member Functions inherited from DtReflectedObjectList
 DtReflectedObjectList (DtExerciseConn *exConn, const DtDDMRegionSet *regionSetToUse=0, const DtString &updateRateTag=DtString(""))
 Constructor.
virtual ~DtReflectedObjectList ()
 destructor
virtual DtReflectedObjectlookupObj (RTI::ObjectHandle id)
 Look up object by identifier.
virtual DtReflectedObjectlookupObj (const DtGlobalObjectDesignator &objName)
 Look up object by global ID (which is the object name in RTI1.3.3).
virtual DtReflectedObjectfirstObj () const
 Get the first/last object in the list.
virtual DtReflectedObjectlastObj () const
virtual int count () const
 Get number of objects.
virtual DtExerciseConnexerciseConn () const
 Get my exerciseConn.
virtual void manageObjectClass (RTI::ObjectClassHandle handle)
 Register callbacks with exercise connection so that we get notified when an object of this class is discovered.
virtual bool removeObject (const DtObjectId &id)
 Have the application act as though we had never discovered the object.
virtual void addObjectAdditionCallback (DtReflectedObjectCallbackFunction cb, void *userData)
 Object added callback registration/deregistration.
virtual void removeObjectAdditionCallback (DtReflectedObjectCallbackFunction cb, void *userData)
virtual void addObjectRemovalCallback (DtReflectedObjectCallbackFunction cb, void *userData)
 Object removed callback registration/deregistration.
virtual void removeObjectRemovalCallback (DtReflectedObjectCallbackFunction cb, void *userData)
virtual void print ()
 Print the SRs of all objects.
virtual void setTimeoutProcessing (bool onOff)
 Set whether or not timeout processing occurs.
virtual bool isTimeoutProcessing () const
 Get whether or not timeout processing occurs.
virtual void setWaitListRefreshEnabled (bool on)
 Set whether or not we will request updates for objects which have not met discovery and are therefor wait listed.
virtual void setTimeoutInterval (DtTime time)
 Set/Get the remote object timeout period.
virtual DtTime timeoutInterval ()
virtual void setWaitlistRefreshPeriod (DtTime time)
 Set/Get the wait list refresh period.
virtual DtTime waitlistRefreshPeriod ()
virtual const DtDDMRegionSetsubscribedRegions ()
 Returns list of regions subscribed to.

Protected Member Functions

virtual void processPropNoiseAddition (DtReflectedPropulsionNoise *propNoise)
 Called by similar callback functions registered with myPropNoiseList on prop nosie additions/removals.
virtual void processPropNoiseUpdate (DtReflectedPropulsionNoise *propNoise)
virtual void processPropNoiseRemoval (DtReflectedPropulsionNoise *propNoise)
virtual void processAddPassActAddition (DtReflectedAdditionalPassiveActivities *apa)
 Called by similar callback functions registered with myAddPassActivitiesList on APA additions/removals.
virtual void processAddPassActUpdate (DtReflectedAdditionalPassiveActivities *apa)
virtual void processAddPassActRemoval (DtReflectedAdditionalPassiveActivities *apa)
virtual void processActiveSonarAddition (DtReflectedActiveSonar *sonar)
 Called by similar callback functions registered with myActiveSonarList on active sonar additions/removals.
virtual void processActiveSonarUpdate (DtReflectedActiveSonar *sonar)
virtual void processActiveSonarRemoval (DtReflectedActiveSonar *sonar)
virtual void resolveOrphans ()
 Check if any orphan sonars or APAs have non-NULL hostId.
virtual void resolveOrphanedPropulsionNoises ()
 Resolve orphaned propulsion noises.
virtual void resolveOrphanedAddPassActivities ()
 Resolve orphaned additional passive activities.
virtual void resolveOrphanedActiveSonars ()
 Resolve orphaned active sonars.
virtual DtReflectedObjectnewReflectedObject (DtHlaObject *obj) const
 Override of virtual function.
virtual
DtReflectedUnderwaterAcoustics
newReflectedUnderwaterAcoustics (const DtGlobalObjectDesignator &hostId) const
 Create a remote ActiveSonar system object for the HLA object.
virtual void objectAdded (DtReflectedObject *obj)
 Called from processDiscoverObject() after a remote transmitter has been added to the list.
virtual bool shouldBeTimedOut (DtReflectedObject *object)
 Returns whether or not the object should be timed out.
DtReflectedPropulsionNoisepropNoiseForUnderwaterAcoustics (DtReflectedUnderwaterAcoustics *underwaterAcoustics)
 Looks up the propulsion noise object for the given ua object.
- Protected Member Functions inherited from DtReflectedObjectList
virtual void processDiscoverObject (DtHlaObject *obj)
 Process the discovery of a remote object on the network.
virtual void processRemoveObject (DtHlaObject *obj)
 Process the removal of a remote object from the network.
virtual void processTimedOutObjectReflect (const DtStateMsg &msg, DtHlaObject *obj)
 Handle the receipt of attributes for a remote object which was timed out.
virtual void doTimeouts ()
 Remove any remote objects which have not been updated during the timeout period.
virtual void doRequestWaitListUpdates ()
 Request an update for any objects which have not met their discovery criteria yet.
virtual void removeAndDelete (DtReflectedObject *obj, char *msg=NULL)
 Remove the remote object from the list if found and delete it.
virtual void timeOutObject (DtReflectedObject *object)
 Times out object by removing it from the remote object list and deleting it.
virtual void unTimeOutObject (DtHlaObject *obj)
 Manages callbacks and data used for reinstating a remote object which was timed out.
virtual void addObjectClass (RTI::ObjectClassHandle handle)
 Register interest in this FOM object class.
virtual void addObjectClassByName (const char *className)
 Register interest in this FOM object class by className.
virtual void init (const DtList *handleList)
 Register interest in a whole list of RTI::ObjectClassHandles all at once.
void emptyLists ()
 Empty the object list and the timeout list.
void emptyCallbackLists ()
 Empty the callback lists.
virtual void processObjectAdditionCallbacks (DtReflectedObject *object)
 Process object addition/removal callbacks.
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.
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.
virtual void addToObjectList (DtReflectedObject *refObj)
 Add refObj to myObjectList and initiates discovery callbacks.
virtual DtReflectedObjectlookupObjInWaitList (RTI::ObjectHandle id)
 Find object in waitList by identifier.
virtual DtReflectedObjectlookupObjInWaitList (const DtGlobalObjectDesignator &name)
 Find object in waitList by name.
void unsubscribeRegions ()
const DtStringupdateRateSubscriptionName () const
 Return the name of the update rate associated with our subscription, if any.

Static Protected Member Functions

static void propNoiseAdditionCb (DtReflectedPropulsionNoise *propNoise, void *usr)
 Callback functions registered with myPropNoiseList for prop noise additions, updates, and removals.
static void propNoiseUpdateCb (DtReflectedPropulsionNoise *propNoise, void *usr)
static void propNoiseRemovalCb (DtReflectedPropulsionNoise *propNoise, void *usr)
static void addPassActAdditionCb (DtReflectedAdditionalPassiveActivities *apa, void *usr)
 Callback functions registered with myAddPassActivitiesList for APA additions, updates, and removals.
static void addPassActUpdateCb (DtReflectedAdditionalPassiveActivities *apa, void *usr)
static void addPassActRemovalCb (DtReflectedAdditionalPassiveActivities *apa, void *usr)
static void activeSonarAdditionCb (DtReflectedActiveSonar *sonar, void *usr)
 Callback functions registered with myActiveSonarList for sonar additions, updates, and removals.
static void activeSonarUpdateCb (DtReflectedActiveSonar *sonar, void *usr)
static void activeSonarRemovalCb (DtReflectedActiveSonar *sonar, void *usr)
static void resolveOrphansPostDrainCb (void *usr)
 Callback that calls resolveOrphans.
static bool delayPropNoiseDiscoveryCondition (DtReflectedObject *propNoise, void *usr)
 The following discovery condition function gets set for propNoises when users register a discovery condition for either DtReflectedUnderwaterAcousticsList or its propulsion noise list.
static bool delayApaDiscoveryCondition (DtReflectedObject *apa, void *usr)
 The following discovery condition function gets set for APAs when users register a discovery condition for either DtReflectedUnderwaterAcousticsList or its APA list.
static bool delaySonarDiscoveryCondition (DtReflectedObject *sonar, void *usr)
 The following discovery condition function gets set for activeSonars when users register a discovery condition for either DtReflectedUnderwaterAcousticsList or its active sonar list.
- Static Protected Member Functions inherited from DtReflectedObjectList
static void discoverObjectCb (DtHlaObject *hlaObj, void *rel)
 Cast the void* to a DtReflectedObjectList* and calls processDiscoverObject().
static void removeObjectCb (DtHlaObject *hlaObj, void *rel)
 Cast the void* to a DtReflectedObjectList* and calls processRemoveObject().
static void timedOutObjectReflectCb (const DtStateMsg &msg, DtHlaObject *obj, void *usr)
 Cast the void* to a DtReflectedObjectList* and calls processTimedOutObjectReflect().
static void doTimeoutsPostDrainCb (void *usr)
 Calls doTimeouts.
static void doRequestWaitListUpdatesPostDrainCb (void *usr)
 Calls doRequestWaitListUpdates.
static void postUpdateCb (DtReflectedObject *obj, void *usr)
 Calls checkDiscoveryCondition.

Protected Attributes

DtObjectId myCounterId
DtList myOrphanPropulsionNoises
 used for generating dummy obj ids
DtReflectedPropulsionNoiseList myPropNoiseList
void * myPropNoiseDiscoveryConditionParameter
DtDiscoveryCondition myPropNoiseDiscoveryCondition
DtList myOrphanAddPassActivities
DtReflectedAdditionalPassiveActivitiesList myAddPassActList
void * myAddPassActDiscoveryConditionParameter
DtDiscoveryCondition myAddPassActDiscoveryCondition
DtList myOrphanActiveSonars
DtReflectedActiveSonarList myActiveSonarList
void * myActiveSonarDiscoveryConditionParameter
DtDiscoveryCondition myActiveSonarDiscoveryCondition
bool mySubsystemsCauseUpdates
- Protected Attributes inherited from DtReflectedObjectList
DtExerciseConnmyExConn
DtRefHlaObjectMap myObjectList
DtHashList myObjectListByName
DtRefHlaObjectMap myWaitList
DtList myTimedOutObjectList
std::vector
< RTI::ObjectClassHandle > 
myHandleList
DtIntrusiveList myObjectAddedCallbacks
DtIntrusiveList myObjectRemovedCallbacks
DtTime myTimeoutInterval
bool myTimeoutProcessingFlag
bool myWaitListRequestUpdateFlag
DtDiscoveryCondition myDiscoveryCondition
void * myDiscoveryConditionParameter
DtTime myWaitlistTime
DtTime myWaitlistRefreshPeriod
DtDDMRegionSet mySubscribedRegions
DtString myUpdateRateTag

Private Member Functions

 DtReflectedUnderwaterAcousticsList (const DtReflectedUnderwaterAcousticsList &orig)
 Copy constructor not implemented - cannot be copied.
DtReflectedUnderwaterAcousticsListoperator= (const DtReflectedUnderwaterAcousticsList &orig)
 Assignment operator not implemented - cannot be copied.

Additional Inherited Members

- Static Public Member Functions inherited from DtReflectedObjectList
static void setAutoSubscribeFlag (bool flag)
 Set/Get flag which determines whether to subscribe to object classes that this list manages.
static bool autoSubscribeFlag ()
static void setRequestClassUpdateFlag (bool onOff)
 Set/Get flag that determines whether we request updates from all objects of the object classes we subscribe to.
static bool requestClassUpdateFlag ()
static void setRequestObjectUpdateFlag (bool onOff)
 Set/Get flag that determines whether we request updates from an object as we discover it.
static bool requestObjectUpdateFlag ()
static void findDiscoveredObjectsCb (void *usr)
 Post-drain callback that calls findAlreadyDiscovedObjects().
- Static Protected Attributes inherited from DtReflectedObjectList
static bool theAutoSubscribeFlag
static bool theRequestClassUpdateFlag
static bool theRequestObjectUpdateFlag

Detailed Description

Instances of DtReflectedUnderwaterAcousticsList manage a list of DtReflectedActiveSonar objects.

Constructor & Destructor Documentation

DtReflectedUnderwaterAcousticsList::DtReflectedUnderwaterAcousticsList ( DtExerciseConn exConn,
const DtDDMRegionSet regionSetToUse = 0,
const DtString updateRateTag = "" 
)

Constructor.

DtReflectedUnderwaterAcousticsList::DtReflectedUnderwaterAcousticsList ( DtExerciseConn exConn,
const DtList handleList,
const DtDDMRegionSet regionSetToUse = 0,
const DtString updateRateTag = "" 
)

Constructor - only subscribe to the RTI::ObjectClassHandles in handleList.

virtual DtReflectedUnderwaterAcousticsList::~DtReflectedUnderwaterAcousticsList ( )
virtual

Destructor.

DtReflectedUnderwaterAcousticsList::DtReflectedUnderwaterAcousticsList ( const DtReflectedUnderwaterAcousticsList orig)
private

Copy constructor not implemented - cannot be copied.

Member Function Documentation

static void DtReflectedUnderwaterAcousticsList::activeSonarAdditionCb ( DtReflectedActiveSonar sonar,
void *  usr 
)
staticprotected

Callback functions registered with myActiveSonarList for sonar additions, updates, and removals.

Calls processActiveSonarAddition/Update/Removal.

static void DtReflectedUnderwaterAcousticsList::activeSonarRemovalCb ( DtReflectedActiveSonar sonar,
void *  usr 
)
staticprotected
static void DtReflectedUnderwaterAcousticsList::activeSonarUpdateCb ( DtReflectedActiveSonar sonar,
void *  usr 
)
staticprotected
static void DtReflectedUnderwaterAcousticsList::addPassActAdditionCb ( DtReflectedAdditionalPassiveActivities apa,
void *  usr 
)
staticprotected

Callback functions registered with myAddPassActivitiesList for APA additions, updates, and removals.

Calls processAddPassActAddition/Update/Removal.

static void DtReflectedUnderwaterAcousticsList::addPassActRemovalCb ( DtReflectedAdditionalPassiveActivities apa,
void *  usr 
)
staticprotected
static void DtReflectedUnderwaterAcousticsList::addPassActUpdateCb ( DtReflectedAdditionalPassiveActivities apa,
void *  usr 
)
staticprotected
virtual void DtReflectedUnderwaterAcousticsList::addUnderwaterAcousticsAdditionCallback ( DtUnderwaterAcousticsCallbackFunction  cb,
void *  userData 
)
virtual

ActiveSonar added callback registration.

virtual void DtReflectedUnderwaterAcousticsList::addUnderwaterAcousticsRemovalCallback ( DtUnderwaterAcousticsCallbackFunction  cb,
void *  userData 
)
virtual

ActiveSonar removed callback registration.

virtual void DtReflectedUnderwaterAcousticsList::clearApaDiscoveryCondition ( )
virtual

Call this function to remove the previously registered discovery condition.

virtual void DtReflectedUnderwaterAcousticsList::clearDiscoveryCondition ( )
virtual

Overrides the DtReflectedObjectList::clearDiscoveryCondition.

This function clears the discovery condition on the underwater acoustics objects, active sonars, propulsion systems, and APAs.

Reimplemented from DtReflectedObjectList.

virtual void DtReflectedUnderwaterAcousticsList::clearPropNoiseDiscoveryCondition ( )
virtual

Call this function to remove the previously registered discovery condition.

virtual void DtReflectedUnderwaterAcousticsList::clearSonarDiscoveryCondition ( )
virtual

Call this function to remove the previously registered discovery condition.

virtual bool DtReflectedUnderwaterAcousticsList::delayApaDiscovery ( DtReflectedObject apa,
void *  usr 
)
virtual

The following function checks whether an active sonar should be discovered; It only gets called if discovery conditions get registered either by calling DtReflectedActiveSonarSystemList::setDiscoveryCondition() or DtReflectedActiveSonarSystemList::setSonarDiscoveryCondition().

static bool DtReflectedUnderwaterAcousticsList::delayApaDiscoveryCondition ( DtReflectedObject apa,
void *  usr 
)
staticprotected

The following discovery condition function gets set for APAs when users register a discovery condition for either DtReflectedUnderwaterAcousticsList or its APA list.

Calls DtReflectedUnderwaterAcousticsList::delayApaDiscovery()

virtual bool DtReflectedUnderwaterAcousticsList::delayPropNoiseDiscovery ( DtReflectedObject propNoise,
void *  usr 
)
virtual

The following function checks whether a prop noise should be discovered; It only gets called if discovery conditions get registered either by calling DtReflectedPropulsionNoiseList::setDiscoveryCondition() or DtReflectedPropulsionNoiseList::setSonarDiscoveryCondition().

static bool DtReflectedUnderwaterAcousticsList::delayPropNoiseDiscoveryCondition ( DtReflectedObject propNoise,
void *  usr 
)
staticprotected

The following discovery condition function gets set for propNoises when users register a discovery condition for either DtReflectedUnderwaterAcousticsList or its propulsion noise list.

Calls DtReflectedUnderwaterAcousticsList::delayPropNoiseDiscovery()

virtual bool DtReflectedUnderwaterAcousticsList::delaySonarDiscovery ( DtReflectedObject sonar,
void *  usr 
)
virtual

The following function checks whether an active sonar should be discovered; It only gets called if discovery conditions get registered either by calling DtReflectedActiveSonarSystemList::setDiscoveryCondition() or DtReflectedActiveSonarSystemList::setSonarDiscoveryCondition().

static bool DtReflectedUnderwaterAcousticsList::delaySonarDiscoveryCondition ( DtReflectedObject sonar,
void *  usr 
)
staticprotected

The following discovery condition function gets set for activeSonars when users register a discovery condition for either DtReflectedUnderwaterAcousticsList or its active sonar list.

Calls DtReflectedUnderwaterAcousticsList::delaySonarDiscovery()

virtual DtReflectedUnderwaterAcoustics* DtReflectedUnderwaterAcousticsList::first ( ) const
virtual

Get the first reflected object in the list.

virtual DtReflectedUnderwaterAcoustics& DtReflectedUnderwaterAcousticsList::getUnderwaterAcoustics ( const DtGlobalObjectDesignator hostId)
virtual

Get the underwater acoustics object for the given host ID.

Creates the object if one does not already exist.

virtual DtReflectedUnderwaterAcoustics* DtReflectedUnderwaterAcousticsList::last ( ) const
virtual

Get the last reflected object in the list.

virtual DtReflectedUnderwaterAcoustics* DtReflectedUnderwaterAcousticsList::lookup ( RTI::ObjectHandle  id)
virtual

Look up by identifier.

virtual DtReflectedUnderwaterAcoustics* DtReflectedUnderwaterAcousticsList::lookup ( const DtGlobalObjectDesignator hostId) const
virtual

Lookup an underwater acoustics object from its host ID.

virtual DtReflectedUnderwaterAcoustics* DtReflectedUnderwaterAcousticsList::lookupName ( const DtGlobalObjectDesignator objName)
virtual

Lookup an underwater acoustics object from its host ID.

virtual DtReflectedObject* DtReflectedUnderwaterAcousticsList::newReflectedObject ( DtHlaObject obj) const
protectedvirtual

Override of virtual function.

Returns NULL, newReflectedUnderwaterAcoustics does actual creation.

Implements DtReflectedObjectList.

virtual DtReflectedUnderwaterAcoustics* DtReflectedUnderwaterAcousticsList::newReflectedUnderwaterAcoustics ( const DtGlobalObjectDesignator hostId) const
protectedvirtual

Create a remote ActiveSonar system object for the HLA object.

Caller is responsible for deletion.

virtual void DtReflectedUnderwaterAcousticsList::objectAdded ( DtReflectedObject obj)
protectedvirtual

Called from processDiscoverObject() after a remote transmitter has been added to the list.

Default implementation prints a message. Subclasses can override this function to add functionality on addition. obj will be an instance of a class derived from DtReflectedObj.

Reimplemented from DtReflectedObjectList.

DtReflectedUnderwaterAcousticsList& DtReflectedUnderwaterAcousticsList::operator= ( const DtReflectedUnderwaterAcousticsList orig)
private

Assignment operator not implemented - cannot be copied.

virtual void DtReflectedUnderwaterAcousticsList::processActiveSonarAddition ( DtReflectedActiveSonar sonar)
protectedvirtual

Called by similar callback functions registered with myActiveSonarList on active sonar additions/removals.

Addition function adds the active sonar to the set of orphan active sonars (since we don't know what system he's part of), the removal function removes the sonar's state rep from its underwater acoustics SR. Update function calls the active sonars' update callbacks if activeSonarsCauseUpdates == true in the reflected ua list constructor.

virtual void DtReflectedUnderwaterAcousticsList::processActiveSonarRemoval ( DtReflectedActiveSonar sonar)
protectedvirtual
virtual void DtReflectedUnderwaterAcousticsList::processActiveSonarUpdate ( DtReflectedActiveSonar sonar)
protectedvirtual
virtual void DtReflectedUnderwaterAcousticsList::processAddPassActAddition ( DtReflectedAdditionalPassiveActivities apa)
protectedvirtual

Called by similar callback functions registered with myAddPassActivitiesList on APA additions/removals.

Addition function adds the APA to the set of orphan APAs (since we don't know what system he's part of), the removal function removes the APA's state rep from its underwater acoustics SR. Update function calls the APAs' update callbacks if subsystemsCauseUpdates is true in the reflected ua list constructor.

virtual void DtReflectedUnderwaterAcousticsList::processAddPassActRemoval ( DtReflectedAdditionalPassiveActivities apa)
protectedvirtual
virtual void DtReflectedUnderwaterAcousticsList::processAddPassActUpdate ( DtReflectedAdditionalPassiveActivities apa)
protectedvirtual
virtual void DtReflectedUnderwaterAcousticsList::processPropNoiseAddition ( DtReflectedPropulsionNoise propNoise)
protectedvirtual

Called by similar callback functions registered with myPropNoiseList on prop nosie additions/removals.

Addition function adds the prop noise to the set of orphan prop noises (since we don't know what system he's part of), the removal function removes the prop noise's state rep from its underwater acoustics SR. Update function calls the prop noises' update callbacks if subsystemsCauseUpdates is true in the reflected ua list constructor.

virtual void DtReflectedUnderwaterAcousticsList::processPropNoiseRemoval ( DtReflectedPropulsionNoise propNoise)
protectedvirtual
virtual void DtReflectedUnderwaterAcousticsList::processPropNoiseUpdate ( DtReflectedPropulsionNoise propNoise)
protectedvirtual
static void DtReflectedUnderwaterAcousticsList::propNoiseAdditionCb ( DtReflectedPropulsionNoise propNoise,
void *  usr 
)
staticprotected

Callback functions registered with myPropNoiseList for prop noise additions, updates, and removals.

Calls processPropNoiseAddition/Update/Removal.

DtReflectedPropulsionNoise* DtReflectedUnderwaterAcousticsList::propNoiseForUnderwaterAcoustics ( DtReflectedUnderwaterAcoustics underwaterAcoustics)
protected

Looks up the propulsion noise object for the given ua object.

static void DtReflectedUnderwaterAcousticsList::propNoiseRemovalCb ( DtReflectedPropulsionNoise propNoise,
void *  usr 
)
staticprotected
static void DtReflectedUnderwaterAcousticsList::propNoiseUpdateCb ( DtReflectedPropulsionNoise propNoise,
void *  usr 
)
staticprotected
virtual DtReflectedActiveSonarList* DtReflectedUnderwaterAcousticsList::refActiveSonarList ( )
virtual

Returns a pointer to the reflected active sonar list that we are using internally to track our constituent sonars.

Normally, you do not need to access this list. Instead, you should find out the state of a sonar by going through the parent DtReflectedUnderwaterAcoustics, and its DtUnderwaterAcousticsStateRepository (through which you can get a list of DtActiveSonarStateRepositories). This function, however, may be used in conjunction with ownership management. If you want to take ownership of some attributes of a sonar object, use this function to grab the sonar list, find the appropriate sonar's DtHlaObject, and pass it to the DtActiveSonarPublisher's constructor.

virtual DtReflectedAdditionalPassiveActivitiesList* DtReflectedUnderwaterAcousticsList::refApaList ( )
virtual

Returns a pointer to the reflected APA list that we are using internally to track our constituent APAs.

Normally, you do not need to access this list. Instead, you should find out the state of an APA by going through the parent DtReflectedUnderwaterAcoustics, and its DtUnderwaterAcousticsStateRepository (through which you can get a list of DtAdditionalPassiveActivitiesRepositories). This function, however, may be used in conjunction with ownership management. If you want to take ownership of some attributes of an APA, use this function to grab the APA list, find the appropriate APA's DtHlaObject, and pass it to the DtAdditionalPassiveActivitiesPublisher's constructor.

virtual DtReflectedPropulsionNoiseList* DtReflectedUnderwaterAcousticsList::refPropNoiseList ( )
virtual

Returns a pointer to the reflected prop noise list that we are using internally to track our constituent prop noises.

Normally, you do not need to access this list. Instead, you should find out the state of a prop noise by going through the parent DtReflectedUnderwaterAcoustics, and its DtUnderwaterAcousticsStateRepository (through which you can get a list of DtPropulsionNoiseStateRepositories). This function, however, may be used in conjunction with ownership management. If you want to take ownership of some attributes of a prop noise, use this function to grab the prop noise list, find the appropriate prop noise's DtHlaObject, and pass it to the DtPropulsionNoisePublisher's constructor.

virtual void DtReflectedUnderwaterAcousticsList::removeUnderwaterAcousticsAdditionCallback ( DtUnderwaterAcousticsCallbackFunction  cb,
void *  userData 
)
virtual

ActiveSonar added callback de-registration.

virtual void DtReflectedUnderwaterAcousticsList::removeUnderwaterAcousticsRemovalCallback ( DtUnderwaterAcousticsCallbackFunction  cb,
void *  userData 
)
virtual

ActiveSonar removed callback de-registration.

virtual void DtReflectedUnderwaterAcousticsList::resolveOrphanedActiveSonars ( )
protectedvirtual

Resolve orphaned active sonars.

virtual void DtReflectedUnderwaterAcousticsList::resolveOrphanedAddPassActivities ( )
protectedvirtual

Resolve orphaned additional passive activities.

virtual void DtReflectedUnderwaterAcousticsList::resolveOrphanedPropulsionNoises ( )
protectedvirtual

Resolve orphaned propulsion noises.

virtual void DtReflectedUnderwaterAcousticsList::resolveOrphans ( )
protectedvirtual

Check if any orphan sonars or APAs have non-NULL hostId.

If so, add them to their appropriate underwater acoustics object (creating one if it doesn't exist), and delete them from orphan list.

static void DtReflectedUnderwaterAcousticsList::resolveOrphansPostDrainCb ( void *  usr)
staticprotected

Callback that calls resolveOrphans.

virtual void DtReflectedUnderwaterAcousticsList::setApaDiscoveryCondition ( DtDiscoveryCondition  fn,
void *  usr 
)
virtual

Call this function to register a discovery condition on the APAs of underwater acoustics objects.

Generally, it will be preferable to call this function rather than calling setDiscoveryCondition() directly on the APA list. (Calling setDiscoveryCondition() directly will over-ride the mechanism by which APA discoveries are delayed when a user registers a discovery condition on DtReflectedAddPassAct – See comment above).

virtual void DtReflectedUnderwaterAcousticsList::setDiscoveryCondition ( DtDiscoveryCondition  fn,
void *  usr 
)
virtual

Over-rides DtReflectedObjectList::setDiscoveryCondition().

This function checks that ActiveSonar system objects satisfy the given criteria before getting discovered and added to the list (the discovery of sonars belonging to the system will also be delayed until the after the system is discovered)

Reimplemented from DtReflectedObjectList.

virtual void DtReflectedUnderwaterAcousticsList::setPropNoiseDiscoveryCondition ( DtDiscoveryCondition  fn,
void *  usr 
)
virtual

Call this function to register a discovery condition on the prop noises of underwater acoustics objects.

Generally, it will be preferable to call this function rather than calling setDiscoveryCondition() directly on the prop noise list. (Calling setDiscoveryCondition() directly will over-ride the mechanism by which prop noise discoveries are delayed when a user registers a discovery condition on DtReflectedPropulsionNoise – See comment above).

virtual void DtReflectedUnderwaterAcousticsList::setSonarDiscoveryCondition ( DtDiscoveryCondition  fn,
void *  usr 
)
virtual

Call this function to register a discovery condition on the active sonars of underwater acoustics objects.

Generally, it will be preferable to call this function rather than calling setDiscoveryCondition() directly on the active sonar list. (Calling setDiscoveryCondition() directly will over-ride the mechanism by which active sonar discoveries are delayed when a user registers a discovery condition on DtReflectedActiveSonarSystem – See comment above).

virtual bool DtReflectedUnderwaterAcousticsList::shouldBeTimedOut ( DtReflectedObject object)
protectedvirtual

Returns whether or not the object should be timed out.

Assumes that timeout processing is enabled. Can't use base version since we don't want to time out systems with live objects.

Reimplemented from DtReflectedObjectList.

Member Data Documentation

DtDiscoveryCondition DtReflectedUnderwaterAcousticsList::myActiveSonarDiscoveryCondition
protected
void* DtReflectedUnderwaterAcousticsList::myActiveSonarDiscoveryConditionParameter
protected
DtReflectedActiveSonarList DtReflectedUnderwaterAcousticsList::myActiveSonarList
protected
DtDiscoveryCondition DtReflectedUnderwaterAcousticsList::myAddPassActDiscoveryCondition
protected
void* DtReflectedUnderwaterAcousticsList::myAddPassActDiscoveryConditionParameter
protected
DtReflectedAdditionalPassiveActivitiesList DtReflectedUnderwaterAcousticsList::myAddPassActList
protected
DtObjectId DtReflectedUnderwaterAcousticsList::myCounterId
mutableprotected
DtList DtReflectedUnderwaterAcousticsList::myOrphanActiveSonars
protected
DtList DtReflectedUnderwaterAcousticsList::myOrphanAddPassActivities
protected
DtList DtReflectedUnderwaterAcousticsList::myOrphanPropulsionNoises
protected

used for generating dummy obj ids

DtDiscoveryCondition DtReflectedUnderwaterAcousticsList::myPropNoiseDiscoveryCondition
protected
void* DtReflectedUnderwaterAcousticsList::myPropNoiseDiscoveryConditionParameter
protected
DtReflectedPropulsionNoiseList DtReflectedUnderwaterAcousticsList::myPropNoiseList
protected
bool DtReflectedUnderwaterAcousticsList::mySubsystemsCauseUpdates
protected

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

Document ID: Generated on Mon Feb 6 18:36:34 EST 2017 from SVN revision 173107
Copyright © 2005-2016 VT MÄK. All Rights Reserved (www.mak.com)