![]() |
VR-Link API Documentation for HLA Evolved
|
00001 /********************************************************************* 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 00006 00007 #if DtHLA 00008 00009 #ifndef hRadioXmitPub_H_ 00010 #define hRadioXmitPub_H_ 00011 00012 #include "hObjPub.h" 00013 00017 00018 class DtRadioTransmitterRepository; 00019 00026 00027 class DT_DLL_VL DtRadioTransmitterPublisher : public DtObjectPublisher 00028 { 00029 public: 00030 00033 typedef DtRadioTransmitterRepository* (*DtStateRepCreator)(); 00034 00035 public: 00036 00038 DtRadioTransmitterPublisher( 00039 DtRadioTransmitterRepository *stateRepToUse, 00040 DtExerciseConn* conn, 00041 const char* name = 0, 00042 const DtDDMRegionSet* regionSetToUse = 0); 00043 00045 DtRadioTransmitterPublisher( 00046 RTI::ObjectClassHandle h, 00047 DtExerciseConn* conn, 00048 const char* name = 0, 00049 const DtDDMRegionSet* regionSetToUse = 0); 00050 00052 DtRadioTransmitterPublisher( 00053 DtExerciseConn* conn, 00054 const char* name = 0, 00055 const DtDDMRegionSet* regionSetToUse = 0); 00056 00062 DtRadioTransmitterPublisher( 00063 DtHlaObjectWithStateRep* obj, 00064 DtExerciseConn* conn); 00065 00067 virtual ~DtRadioTransmitterPublisher(); 00068 00071 virtual DtRadioTransmitterRepository* radioXmitRep(); 00072 00074 virtual DtRadioTransmitterRepository* tsr(); 00075 00078 virtual const char* classToUse() const; 00079 00080 public: 00081 00083 static DtStateRepCreator setStateRepCreator(DtStateRepCreator creator); 00084 00085 protected: 00086 00088 DtRadioTransmitterPublisher(const DtRadioTransmitterPublisher& orig); 00089 00091 DtRadioTransmitterPublisher& operator= 00092 (const DtRadioTransmitterPublisher& orig); 00093 00094 protected: 00095 00096 static DtStateRepCreator theStateRepCreator; 00097 }; 00098 00099 inline DtRadioTransmitterRepository* 00100 DtRadioTransmitterPublisher::radioXmitRep() 00101 { 00102 return (DtRadioTransmitterRepository*) myStateRep; 00103 } 00104 00105 inline DtRadioTransmitterRepository* DtRadioTransmitterPublisher::tsr() 00106 { 00107 return (DtRadioTransmitterRepository*) myStateRep; 00108 } 00109 00110 #endif //DtRadioTransmitterPublisher_H_ 00111 #endif //DtHLA 00112