9 #ifndef DtHlaReflectedObject_H_
10 #define DtHlaReflectedObject_H_
74 virtual DtHlaStateDecoder* decoder();
78 virtual DtHlaObjectWithStateRep* hlaObject()
const;
90 virtual const DtString& name()
const;
96 #if DtHLA_1516_EVOLVED
97 virtual const DtString& lastProducingFederate()
const;
105 virtual DtTime lastSimTimeUpdated()
const;
110 virtual DtTime lastReceivedTimeStamp()
const;
113 virtual void baseAddPostUpdateCallback(
115 virtual void baseRemovePostUpdateCallback(
136 void setHlaObject(DtHlaObject* obj,
137 DtHlaStateDecoder* decoder = NULL);
141 virtual void setNoHlaObject(
const DtObjectId&
id,
146 void detachHlaObject();
149 virtual void requestUpdate();
160 virtual void processPostUpdateCallbacks();
165 static void requestUpdatePostDrainCb(
void* usr);
168 static void processPostUpdateCallbacksCb(
176 DtHlaObjectWithStateRep* myHlaObj;
178 DtHlaStateDecoder* myDecoder;
179 bool myRequestCbRegistered;
185 DtRefHlaObjectMap::iterator myReflIterator;
186 DtRefHlaObjectMap* myReflMap;
190 inline const DtObjectId& DtReflectedObject::localId()
const
205 inline DtHlaObjectWithStateRep* DtReflectedObject::hlaObject()
const
214 DtRefHlaObjectMap::iterator nextIter = myReflIterator;
216 if(nextIter != myReflMap->end())
218 return nextIter->second;
228 DtRefHlaObjectMap::iterator nextIter = myReflIterator;
229 if(nextIter != myReflMap->begin())
232 return nextIter->second;
249 if(!myReflMap->empty())
251 return myReflMap->begin()->second;
270 if(!myReflMap->empty())
272 return myReflMap->rend()->second;
Contains the DtObjectId class declaration.
Instances of DtReflectedObjectList are lists of instances of classes derived from DtReflectedObject...
Definition: reflectedObjectListDIS.h:38
virtual DtStateRepository * sr() const
Synonym for stateRep().
Contains the HLA DtReflectedObjectList class declaration.
Instances of DtExerciseConn are used to provide an application's interface or connection to the netwo...
Definition: exerciseConnDIS.h:61
virtual DtReflectedObject * wrapPrevObj() const
Get the previous remote object.
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
virtual DtReflectedObject * prevObj() const
Get the previous remote object.
virtual DtReflectedObject * nextObj() const
Get the next remote object.
This file contains typedefs used to represent objects in a protocol neutral way.
An intrusive list is a list that assumes that the elements that you add are pointers to instances of ...
Definition: vlList.h:196
DtReflectedObjectList & operator=(const DtReflectedObjectList &orig)
assignment operator – not implemented
Instances of DtReflectedObject are used to represent a simulation entity reflected across a network (...
Definition: reflectedObjectDIS.h:34
virtual DtReflectedObject * wrapNextObj() const
Get the next remote object.
DtStateRepository is an abstract base class for maintaining state for an object.
Definition: stateRepository.h:50
Instances of DtEntityIdentifier are used as a unique ID for entities in DIS.
Definition: entityIdentifier.h:31
void(* DtReflectedObjectCallbackFunction)(DtReflectedObject *obj, void *userData)
Callback function that takes a DtReflectedObject and user data.
Definition: reflectedObjectCallbackInfo.h:19
Instances of DtString are used to represent strings.
Definition: vlString.h:29
virtual DtStateRepository * stateRep() const =0
Returns a pointer to the StateRepository - through which you can inspect current state information...
Instances of DtStateMsg are used to represent state data communicated via the network in a DIS (as op...
Definition: stateMsgDIS.h:21
DtExerciseConn * myExConn
Definition: reflectedObjectListDIS.h:182