VR-Link API Documentation for DIS
 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
DtReflectedEmitterSystemList Class Reference

Instances of this class provide a protocol independent interface to a list of reflected emitters in a DIS environment. More...

+ Inheritance diagram for DtReflectedEmitterSystemList:
+ Collaboration diagram for DtReflectedEmitterSystemList:

Public Member Functions

 DtReflectedEmitterSystemList (DtExerciseConn *exConn, int numBucketsPrimeNumber=503)
 Constructor.
virtual ~DtReflectedEmitterSystemList ()
 Destructor.
virtual DtReflectedEmitterSystemlookup (const DtGlobalObjectDesignator &emittingEntity, int systemId) const
 Lookup an emitter from its object ID and system ID.
virtual DtReflectedEmitterSystemfirst () const
 Get the first and last elements of the emitter system list.
virtual DtReflectedEmitterSystemlast () const
virtual void addEmitterSystemAdditionCallback (DtEmitterSystemCallbackFunction cb, void *userData)
 Emitter added callback registration/deregistration.
virtual void removeEmitterSystemAdditionCallback (DtEmitterSystemCallbackFunction cb, void *userData)
virtual void addEmitterSystemRemovalCallback (DtEmitterSystemCallbackFunction cb, void *userData)
 Emitter removed callback registration/deregistration.
virtual void removeEmitterSystemRemovalCallback (DtEmitterSystemCallbackFunction cb, void *userData)
virtual void addEmitterAdditionCallback (DtEmitterSystemCallbackFunction cb, void *userData)
 Emitter added callback registration/deregistration.
virtual void removeEmitterAdditionCallback (DtEmitterSystemCallbackFunction cb, void *userData)
 This is the same as removeEmitterSystemAdditionCallback and is here only for backwards compatibility.
virtual void addEmitterRemovalCallback (DtEmitterSystemCallbackFunction cb, void *userData)
 Emitter removed callback registration/deregistration.
virtual void removeEmitterRemovalCallback (DtEmitterSystemCallbackFunction cb, void *userData)
 This is the same as removeEmitterSystemRemovalCallback and is here only for backwards compatibility.
virtual void print ()
 Print the SRs of all objects.
- Public Member Functions inherited from DtReflectedObjectList
 DtReflectedObjectList (DtExerciseConn *exConn, int numBucketsPrimeNumber=503)
 Constructor.
virtual ~DtReflectedObjectList ()
 destructor Warning: makes non-virtual call to removeAndDelete
virtual void initializeAttributePduKindsOfInterest (const std::set< DtPduKind > &pduKinds)
 This initializes which PDU kinds will be processed when receiving an Attribute PDU.
virtual DtReflectedObjectfirstObj () const
 Get the first/last object in the list.
virtual DtReflectedObjectlastObj () const
virtual int count () const
 Get number of objects.
virtual DtReflectedObjectlookupObj (const DtBaseHashKey &key) const
 Search for an object.
virtual DtExerciseConnexerciseConn () const
 Get my exerciseConn.
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 () const
 Print the SRs of all objects.
virtual void setTimeoutProcessing (bool onOff)
 Set whether or not timeout processing occurs.
virtual void setTimeoutInterval (DtTime time)
 Set/Get the remote object timeout period.
virtual DtTime timeoutInterval ()
virtual void setDiscoveryCondition (DtDiscoveryCondition fn, void *usr)
 Set the checker function which will determine when an object gets discovered and put into the ref.
virtual void clearDiscoveryCondition ()
 Unregisters the checker function set in setDiscoverCondition.
virtual void removeAndDelete (DtReflectedObject *obj, char *msg=NULL)
 Remove the remote object from the list if found and delete it.
virtual void removeObject (DtReflectedObject *obj)
 This is the same as removeAndDelete, it exists to maintain equality with HLA objects.
virtual DtTime timeoutCheckInterval () const
virtual void setTimeoutCheckInterval (DtTime interval)

Protected Member Functions

DtReflectedEmitterSystemListoperator= (const DtReflectedEmitterSystemList &orig)
 Assignment operator – Not implemented.
 DtReflectedEmitterSystemList (const DtReflectedEmitterSystemList &orig)
 Copy constructor – Not implemented.
virtual DtReflectedObjectnewReflectedObj (const DtStateMsg &msg)
 Overrides base class's implementation. Always returns NULL.
virtual DtReflectedObjectnewReflectedEmitterSystem (const DtGlobalObjectDesignator &emittingEntity, int systemId)
 Create a new object from a global designator and system id.
virtual DtReflectedObjectprocessStateMessage (const DtStateMsg &msg)
 Process an incoming state message.
virtual void objectAdded (DtReflectedObject *obj)
 Called after an entity is added and before addition callbacks are processed.
virtual const DtBaseHashKeyhashKeyFromStateMessage (const DtStateMsg *msg)
 Get a hash key from a state message.
virtual void processAttributePduCb (DtAttributeInteraction *inter)
- Protected Member Functions inherited from DtReflectedObjectList
virtual void doTimeouts ()
 Remove any remote objects which have not been updated during the timeout period.
virtual bool shouldBeTimedOut (DtReflectedObject *object)
 Returns whether or not the object should be timed out.
void emptyLists ()
 Empty the object list and the timeout list.
void emptyCallbackLists ()
virtual void processObjectAdditionCallbacks (DtReflectedObject *object)
 Process object addition/removal callbacks.
virtual void processObjectRemovalCallbacks (DtReflectedObject *object)
virtual DtBaseHashKeyhashKeyFromAttributeRecordSet (const DtAttributeRecordSet &recordSet)
 Get a hash key from an attribute record set.
virtual int acceptPdu (const DtStateMsg &) const
 Determines if a PDU should be processed or not.
virtual bool readyToAdd (DtReflectedObject *obj)
 Returns true if the obj is ready to be added to myObjectList; calls myDiscoveryCondition from within.
virtual void processAttributePduRecordSet (const DtAttributeRecordSet &recordSet, const DtSimulationAddress &simAddr, DtReflectedObject *obj=0)
virtual void processAttributePduWaitListCb (DtReflectedObject *obj)
virtual void deleteRecordSetBySimulationAddressMap (DtRecordSetBySimulationAddressMap &recordSetMap, const DtSimulationAddress &simAddr=DtSimulationAddress()) const

Static Protected Member Functions

static void emEmissionCb (DtElectromagneticEmissionPdu *pdu, void *usr)
 Callback for the exercise connection.
- Static Protected Member Functions inherited from DtReflectedObjectList
static void doTimeoutsPostDrainCb (void *usr)
 Calls doTimeouts.
static void processAttributePduCb (DtAttributeInteraction *inter, void *usr)
static void processAttributePduWaitListCb (DtReflectedObject *obj, void *userData)

Additional Inherited Members

- Protected Attributes inherited from DtReflectedObjectList
DtExerciseConnmyExConn
DtIntrusiveList myObjectAddedCallbacks
DtIntrusiveList myObjectRemovedCallbacks
DtIntrusiveList myObjectList
DtIntrusiveList myWaitList
DtHashlist myObjectHashlist
DtHashlist myWaitHashlist
DtAttributesByObjectIdMap myAttributeWaitHashlist
DtTime myTimeoutInterval
DtTime myNextTimeoutCheck
DtTime myTimeoutCheckInterval
bool myTimeoutProcessingFlag
DtDiscoveryCondition myDiscoveryCondition
void * myDiscoveryConditionParameter
std::set< DtPduKindmyPduKindSet

Detailed Description

Instances of this class provide a protocol independent interface to a list of reflected emitters in a DIS environment.

Constructor & Destructor Documentation

DtReflectedEmitterSystemList::DtReflectedEmitterSystemList ( DtExerciseConn exConn,
int  numBucketsPrimeNumber = 503 
)

Constructor.

virtual DtReflectedEmitterSystemList::~DtReflectedEmitterSystemList ( )
virtual

Destructor.

DtReflectedEmitterSystemList::DtReflectedEmitterSystemList ( const DtReflectedEmitterSystemList orig)
protected

Copy constructor – Not implemented.

Member Function Documentation

virtual void DtReflectedEmitterSystemList::addEmitterAdditionCallback ( DtEmitterSystemCallbackFunction  cb,
void *  userData 
)
virtual

Emitter added callback registration/deregistration.

This is the same as addEmitterSystemAdditionCallback and is here only for backwards compatibility.

virtual void DtReflectedEmitterSystemList::addEmitterRemovalCallback ( DtEmitterSystemCallbackFunction  cb,
void *  userData 
)
virtual

Emitter removed callback registration/deregistration.

This is the same as addEmitterSystemRemovalCallback and is here only for backwards compatibility.

virtual void DtReflectedEmitterSystemList::addEmitterSystemAdditionCallback ( DtEmitterSystemCallbackFunction  cb,
void *  userData 
)
virtual

Emitter added callback registration/deregistration.

virtual void DtReflectedEmitterSystemList::addEmitterSystemRemovalCallback ( DtEmitterSystemCallbackFunction  cb,
void *  userData 
)
virtual

Emitter removed callback registration/deregistration.

static void DtReflectedEmitterSystemList::emEmissionCb ( DtElectromagneticEmissionPdu pdu,
void *  usr 
)
staticprotected

Callback for the exercise connection.

virtual DtReflectedEmitterSystem* DtReflectedEmitterSystemList::first ( ) const
virtual

Get the first and last elements of the emitter system list.

virtual const DtBaseHashKey& DtReflectedEmitterSystemList::hashKeyFromStateMessage ( const DtStateMsg msg)
protectedvirtual

Get a hash key from a state message.

Implements DtReflectedObjectList.

virtual DtReflectedEmitterSystem* DtReflectedEmitterSystemList::last ( ) const
virtual
virtual DtReflectedEmitterSystem* DtReflectedEmitterSystemList::lookup ( const DtGlobalObjectDesignator emittingEntity,
int  systemId 
) const
virtual

Lookup an emitter from its object ID and system ID.

virtual DtReflectedObject* DtReflectedEmitterSystemList::newReflectedEmitterSystem ( const DtGlobalObjectDesignator emittingEntity,
int  systemId 
)
protectedvirtual

Create a new object from a global designator and system id.

virtual DtReflectedObject* DtReflectedEmitterSystemList::newReflectedObj ( const DtStateMsg msg)
protectedvirtual

Overrides base class's implementation. Always returns NULL.

Implements DtReflectedObjectList.

virtual void DtReflectedEmitterSystemList::objectAdded ( DtReflectedObject obj)
protectedvirtual

Called after an entity is added and before addition callbacks are processed.

Right now, this function only calls DtInfo.

Reimplemented from DtReflectedObjectList.

DtReflectedEmitterSystemList& DtReflectedEmitterSystemList::operator= ( const DtReflectedEmitterSystemList orig)
protected

Assignment operator – Not implemented.

virtual void DtReflectedEmitterSystemList::print ( )
virtual

Print the SRs of all objects.

virtual void DtReflectedEmitterSystemList::processAttributePduCb ( DtAttributeInteraction inter)
protectedvirtual

Reimplemented from DtReflectedObjectList.

virtual DtReflectedObject* DtReflectedEmitterSystemList::processStateMessage ( const DtStateMsg msg)
protectedvirtual

Process an incoming state message.

Reimplemented from DtReflectedObjectList.

virtual void DtReflectedEmitterSystemList::removeEmitterAdditionCallback ( DtEmitterSystemCallbackFunction  cb,
void *  userData 
)
virtual

This is the same as removeEmitterSystemAdditionCallback and is here only for backwards compatibility.

virtual void DtReflectedEmitterSystemList::removeEmitterRemovalCallback ( DtEmitterSystemCallbackFunction  cb,
void *  userData 
)
virtual

This is the same as removeEmitterSystemRemovalCallback and is here only for backwards compatibility.

virtual void DtReflectedEmitterSystemList::removeEmitterSystemAdditionCallback ( DtEmitterSystemCallbackFunction  cb,
void *  userData 
)
virtual
virtual void DtReflectedEmitterSystemList::removeEmitterSystemRemovalCallback ( DtEmitterSystemCallbackFunction  cb,
void *  userData 
)
virtual

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

Document ID: Generated on Mon Jun 22 21:18:40 EDT 2020 from SVN revision 213785
Copyright © 2005-2018 MAK Technologies. All Rights Reserved (www.mak.com)