13 #ifndef DtDISObjectPublisher_H_
14 #define DtDISObjectPublisher_H_
26 class DT_DLL_VL DtPduWithAttributeRecordSets;
27 class DT_DLL_VL DtStateRepositoryExtensionEncoder;
28 class DT_DLL_VL DtStateRepositoryExtensionDecoder;
42 typedef DtAttributePdu * (*DtNonCoupledAttributePduCreator)(
const DtPduWithAttributeRecordSets*,
void*);
52 bool okToDeleteStateRep =
true);
86 virtual void forceUpdate()=0;
89 virtual void tick() = 0;
92 virtual void parallelTick();
97 virtual void setTimeThreshold(
DtTime time);
99 virtual DtTime timeThreshold()
const;
103 virtual void setRelLocTimeThreshold(
DtTime time );
105 virtual DtTime relLocTimeThreshold()
const;
115 virtual DtTime lastTimeUpdated()
const;
116 virtual DtTime lastTimeAttrUpdated()
const;
120 virtual DtTime lastSimTimeUpdated()
const;
124 virtual void setUseCustomThreshold(
bool useCustom);
128 virtual bool useCustomThreshold();
147 static void setDfltTimeThreshold(
DtTime time);
150 static DtTime dfltTimeThreshold();
153 static void setDfltRelLocTimeThreshold(
DtTime time );
156 static DtTime dfltRelLocTimeThreshold();
159 static DtNonCoupledAttributePduCreator setDefaultNonCoupledAttributePduCreator(DtNonCoupledAttributePduCreator creator);
160 static DtNonCoupledAttributePduCreator defaultNonCoupledAttributePduCreator(
void);
163 DtNonCoupledAttributePduCreator setNonCoupledAttributePduCreator(DtNonCoupledAttributePduCreator creator);
164 DtNonCoupledAttributePduCreator nonCoupledAttributePduCreator(
void);
178 bool myOkToDeleteStateRepFlag;
179 bool myUseCustomThreshold;
184 DtTime myRelLocTimeThreshold;
187 mutable DtTime mySimTimeLastUpdate;
190 mutable DtTime myRealTimeLastUpdate;
191 mutable DtTime myRealTimeLastAttrUpdate;
194 DtNonCoupledAttributePduCreator myNonCoupledAttributePduCreator;
197 static DtNonCoupledAttributePduCreator theDefaultNonCoupledAttributePduCreator;
203 std::vector<DtStateRepositoryExtensionEncoder*> myStateRepositoryExtensionEncoderList;
206 std::vector<DtStateRepositoryExtensionDecoder*> myStateRepositoryExtensionDecoderList;
210 static DtTime theDfltTimeThreshold;
211 static DtTime theDfltRelLocTimeThreshold;
235 #endif //DtObjectPublisher_H_
Contains the DtObjectId class declaration.
DtStateRepository * myStateRep
Definition: objectPublisherHLA.h:202
Instances of DtExerciseConn are used to provide an application's interface or connection to the netwo...
Definition: exerciseConnHLA.h:60
virtual DtStateRepository * stateRep()
Returns a pointer to the DtStateRepository - through which you can set or inspect current state infor...
Definition: objectPublisherHLA.h:227
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
This file contains the declaration of DtClock and DtTime.
Instances of DtObjectPublisher are used for local or source simulations of objects, (i.e.
Definition: objectPublisherHLA.h:34
virtual DtStateRepository * sr()
Synonym for stateRep().
Definition: objectPublisherHLA.h:232
virtual DtExerciseConn * exerciseConn()
Get our exercise connection.
Definition: objectPublisherHLA.h:237
DtPdu is the base class for all PDU's in VR-Link.
Definition: pdu.h:69
DtAttributePduStrategy
Definition: vlAttributePduStrategy.h:16
DtStateRepository is an abstract base class for maintaining state for an object.
Definition: stateRepository.h:50
DtStateRepository * myAsSeenByRemote
Definition: objectPublisherHLA.h:203
DtObjectId instances are used to represent RTI::ObjectInstances in VR-Link.
Definition: objectId.h:38
DtExerciseConn * myExConn
Definition: objectPublisherHLA.h:200
int send(int s, char *buf, int bufLen, int flags)
DtReal DtTime
A definition of DtTime.
Definition: vlTime.h:19
MANAGEDINTERFACE_DLL void tick(double maxTime)
Tick ManagedInterface.
Instances of DtString are used to represent strings.
Definition: vlString.h:29
virtual DtStateRepository * approximateRemoteStateRep()
Returns a pointer to the approximate remote DtStateRepository – This state repository contains the co...
Definition: objectPublisherHLA.h:252
This file contains typedefs for machine dependant types.