31 typedef std::map<DtSimulationAddress, DtAttributeRecordSet*> DtRecordSetBySimulationAddressMap;
32 typedef std::map<DtObjectId, DtRecordSetBySimulationAddressMap> DtAttributesByObjectIdMap;
51 virtual void initializeAttributePduKindsOfInterest(
const std::set<DtPduKind>& pduKinds);
58 virtual int count()
const;
67 virtual void addObjectAdditionCallback(
69 virtual void removeObjectAdditionCallback(
73 virtual void addObjectRemovalCallback(
75 virtual void removeObjectRemovalCallback(
79 virtual void print()
const;
83 virtual void setTimeoutProcessing(
bool onOff);
86 virtual void setTimeoutInterval(
DtTime time);
87 virtual DtTime timeoutInterval();
95 virtual void clearDiscoveryCondition();
105 virtual DtTime timeoutCheckInterval()
const {
return myTimeoutCheckInterval; }
106 virtual void setTimeoutCheckInterval(
DtTime interval) { myTimeoutCheckInterval = interval; }
127 virtual void doTimeouts();
143 void emptyCallbackLists();
146 virtual void processObjectAdditionCallbacks(
148 virtual void processObjectRemovalCallbacks(
153 hashKeyFromStateMessage(
const DtStateMsg* msg) = 0;
161 virtual int acceptPdu(
const DtStateMsg&)
const;
170 static void doTimeoutsPostDrainCb(
void* usr);
172 static void processAttributePduCb(DtAttributeInteraction *inter,
void *usr);
173 virtual void processAttributePduCb(DtAttributeInteraction *inter);
176 static void processAttributePduWaitListCb(
DtReflectedObject* obj,
void* userData);
189 DtAttributesByObjectIdMap myAttributeWaitHashlist;
191 DtTime myNextTimeoutCheck;
192 DtTime myTimeoutCheckInterval;
193 bool myTimeoutProcessingFlag;
195 void* myDiscoveryConditionParameter;
196 std::set<DtPduKind> myPduKindSet;