9 #ifndef tRadRecInterface_H_
10 #define tRadRecInterface_H_
22 #include <MAK/RadioReceiver/ServantPtr.h>
23 #include <MAK/RadioReceiver/ProxyPtr.h>
24 #include <MAK/RadioReceiver/ImmutablePublicationStatePtr.h>
25 #include <MAK/RadioReceiver/SubscriptionInfoPtr.h>
42 class DT_DLL_MAKLROM DtRadioReceiverInterface:
public DtObjectInterface
47 class DtRadioReceiverServantObject :
public DtTenaServantObject
51 DtRadioReceiverServantObject( MAK::RadioReceiver::ServantPtr sp):myServantPtr(sp){}
54 virtual ~DtRadioReceiverServantObject() {}
57 virtual const MAK::RadioReceiver::ServantPtr servant()
const {
return myServantPtr;}
60 virtual MAK::RadioReceiver::ServantPtr servant() {
return myServantPtr;}
63 MAK::RadioReceiver::ServantPtr myServantPtr;
71 virtual ~DtRadioReceiverInterface();
75 DtRadioReceiverInterface(
const DtRadioReceiverInterface &other);
78 DtRadioReceiverInterface& operator=(
const DtRadioReceiverInterface &other);
83 virtual DtTenaServantObject* createServantObject(
DtExerciseConn* exConn);
86 virtual void processServantCleanup(DtTenaServantObject* servantObject);
89 virtual void subscribe();
94 bool useThresholding =
true);
97 virtual void decode(
const DtTenaServantObject* servant,
101 virtual void encode(DtTenaServantObject* servant,
103 TENA::Time::Pointer timeForStamping,
104 bool forceUpdate =
false);
110 virtual void processAddition(MAK::RadioReceiver::ProxyPtr
const &proxy);
113 virtual void processUpdate(MAK::RadioReceiver::ProxyPtr
const &proxy);
116 virtual void processRemoval(MAK::RadioReceiver::ProxyPtr
const &proxy);
121 virtual void decode(
const MAK::RadioReceiver::ImmutablePublicationStatePtr pubStatePtr,
127 MAK::RadioReceiver::SubscriptionInfoPtr mySubscriptionInfoPtr;
128 typedef std::map<MAK::RadioReceiver::ProxyPtr, DtReflectedObject *> ProxyToRefObjMap;
129 ProxyToRefObjMap myRefRadRecMap;
130 ProxyToRefObjMap myReceiverWaitList;