13 #ifndef DtDISObjectPublisher_H_
14 #define DtDISObjectPublisher_H_
26 class DT_DLL_VL DtPduWithAttributeRecordSets;
40 typedef DtAttributePdu * (*DtNonCoupledAttributePduCreator)(
const DtPduWithAttributeRecordSets*,
void*);
50 bool okToDeleteStateRep =
true);
84 virtual void forceUpdate()=0;
87 virtual void tick() = 0;
90 virtual void parallelTick();
95 virtual void setTimeThreshold(
DtTime time);
97 virtual DtTime timeThreshold()
const;
107 virtual DtTime lastTimeUpdated()
const;
111 virtual DtTime lastSimTimeUpdated()
const;
115 virtual void setUseCustomThreshold(
bool useCustom);
119 virtual bool useCustomThreshold();
131 static void setDfltTimeThreshold(
DtTime time);
134 static DtTime dfltTimeThreshold();
138 static DtNonCoupledAttributePduCreator setDefaultNonCoupledAttributePduCreator(DtNonCoupledAttributePduCreator creator);
139 static DtNonCoupledAttributePduCreator defaultNonCoupledAttributePduCreator(
void);
142 DtNonCoupledAttributePduCreator setNonCoupledAttributePduCreator(DtNonCoupledAttributePduCreator creator);
143 DtNonCoupledAttributePduCreator nonCoupledAttributePduCreator(
void);
157 bool myOkToDeleteStateRepFlag;
158 bool myUseCustomThreshold;
163 mutable DtTime mySimTimeLastUpdate;
166 mutable DtTime myRealTimeLastUpdate;
169 DtNonCoupledAttributePduCreator myNonCoupledAttributePduCreator;
172 static DtNonCoupledAttributePduCreator theDefaultNonCoupledAttributePduCreator;
179 static DtTime theDfltTimeThreshold;
203 #endif //DtObjectPublisher_H_