![]() |
VR-Link API Documentation for HLA 1516
|
00001 /********************************************************************* 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 00006 00007 #if DtHLA 00008 00009 #ifndef DtReflectedRadioReceiver_H_ 00010 #define DtReflectedRadioReceiver_H_ 00011 00012 #include "radioRecvrSR.h" 00013 #include "hReflectedObj.h" 00014 00019 00022 class DT_DLL_VL DtReflectedRadioReceiver; 00023 typedef void (*DtRadioReceiverCallbackFunction)( 00024 DtReflectedRadioReceiver* obj, void* userData); 00025 00031 00032 class DT_DLL_VL DtReflectedRadioReceiver : public DtReflectedObject 00033 { 00034 public: 00035 00037 typedef DtRadioReceiverRepository* (*DtStateRepCreator)(); 00038 00039 public: 00040 00042 DtReflectedRadioReceiver(DtHlaObject* obj, DtExerciseConn* conn); 00043 00045 virtual ~DtReflectedRadioReceiver(); 00046 00048 virtual DtRadioReceiverRepository* receiverRep() const; 00049 00051 virtual DtRadioReceiverRepository* rsr() const; 00052 00054 virtual DtReflectedRadioReceiver* next() const; 00055 00057 virtual DtReflectedRadioReceiver* prev() const; 00058 00061 virtual DtReflectedRadioReceiver* wrapNext() const; 00062 00065 virtual DtReflectedRadioReceiver* wrapPrev() const; 00066 00068 virtual void addPostUpdateCallback( 00069 DtRadioReceiverCallbackFunction cb, void* userData); 00070 00071 virtual void removePostUpdateCallback( 00072 DtRadioReceiverCallbackFunction cb, void* userData); 00073 00074 public: 00075 00077 static DtStateRepCreator setStateRepCreator(DtStateRepCreator creator); 00078 00079 protected: 00080 00082 DtReflectedRadioReceiver(const DtReflectedRadioReceiver& orig); 00083 00085 DtReflectedRadioReceiver& operator=( 00086 const DtReflectedRadioReceiver& orig); 00087 00088 protected: 00089 00090 static DtStateRepCreator theStateRepCreator; 00091 }; 00092 00093 inline DtRadioReceiverRepository* 00094 DtReflectedRadioReceiver::receiverRep() const 00095 { 00096 return (DtRadioReceiverRepository*) myStateRep; 00097 } 00098 00099 inline DtRadioReceiverRepository* DtReflectedRadioReceiver::rsr() const 00100 { 00101 return (DtRadioReceiverRepository*) myStateRep; 00102 } 00103 00104 #endif //DtReflectedRadioReceiver_H_ 00105 #endif //DtHLA 00106