![]() |
VR-Link API Documentation for HLA 1516
|
00001 /********************************************************************* 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 00006 00007 #if DtTENA 00008 00009 #ifndef tReflRadXmitr_H_ 00010 #define tReflRadXmitr_H_ 00011 00012 #include "tReflectedObj.h" 00013 #include "globalObjDes.h" 00014 #include "radioXmitSR.h" 00015 00019 00020 class DT_DLL_VL DtExerciseConn; 00021 class DT_DLL_VL DtReflectedRadioTransmitter; 00022 00024 typedef void (*DtRadioTransmitterCallbackFunction)( 00025 DtReflectedRadioTransmitter* obj, void* userData); 00026 00027 00031 class DT_DLL_VL DtReflectedRadioTransmitter : public DtReflectedObject 00032 { 00033 public: 00034 00037 typedef DtRadioTransmitterRepository* (*DtStateRepCreator)(); 00038 00039 public: 00040 00042 DtReflectedRadioTransmitter(DtExerciseConn* conn); 00043 00045 virtual ~DtReflectedRadioTransmitter(); 00046 00047 private: 00048 00050 DtReflectedRadioTransmitter(const DtReflectedRadioTransmitter& orig); 00051 00053 DtReflectedRadioTransmitter& operator=(const DtReflectedRadioTransmitter& orig); 00054 00055 public: 00056 00058 virtual DtReflectedRadioTransmitter* next() const; 00059 00062 virtual DtRadioTransmitterRepository* transmitterRep() const; 00063 00065 virtual DtRadioTransmitterRepository* tsr() const; 00066 00068 virtual DtReflectedRadioTransmitter* prev() const; 00069 00072 virtual DtReflectedRadioTransmitter* wrapNext() const; 00073 00076 virtual DtReflectedRadioTransmitter* wrapPrev() const; 00077 00079 void removePostUpdateCallback( DtRadioTransmitterCallbackFunction , void* ); 00080 00082 void addPostUpdateCallback( DtRadioTransmitterCallbackFunction , void* ); 00083 00085 virtual const DtObjectId& id() const; 00086 00088 virtual const DtGlobalObjectDesignator& globalId() const; 00089 00091 virtual void printDataToStream(std::ostream& str) const; 00092 00093 public: 00095 static DtStateRepCreator setStateRepCreator(DtStateRepCreator creator); 00096 00097 protected: 00098 00099 static DtStateRepCreator theStateRepCreator; 00100 00101 00102 }; 00103 00104 inline DtRadioTransmitterRepository* DtReflectedRadioTransmitter::transmitterRep() const 00105 { 00106 return (DtRadioTransmitterRepository*) myStateRep; 00107 } 00108 00109 inline DtRadioTransmitterRepository* DtReflectedRadioTransmitter::tsr() const 00110 { 00111 return (DtRadioTransmitterRepository*) myStateRep; 00112 } 00113 00114 00115 #endif //! DtReflectedRadioTransmitter_H_ 00116 #endif //! DtTENA 00117