![]() |
VR-Link API Documentation for DIS
|
00001 /********************************************************************* 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 00006 #ifndef hPropNoisePub_H_ 00007 #define hPropNoisePub_H_ 00008 00009 #if DtHLA 00010 00014 00015 #include "hObjPub.h" 00016 00017 class DtPropulsionNoiseStateRepository; 00018 00025 class DT_DLL_VL DtPropulsionNoisePublisher : public DtObjectPublisher 00026 { 00027 public: 00029 typedef DtPropulsionNoiseStateRepository* (*DtStateRepCreator)(); 00030 00031 public: 00033 DtPropulsionNoisePublisher( 00034 DtPropulsionNoiseStateRepository* stateRepToUse, 00035 DtExerciseConn* conn, 00036 const char* name = 0, 00037 const DtDDMRegionSet* regionSetToUse = 0); 00038 00040 DtPropulsionNoisePublisher( 00041 RTI::ObjectClassHandle h, 00042 DtExerciseConn* conn, 00043 const char* name = 0, 00044 const DtDDMRegionSet* regionSetToUse = 0); 00045 00047 DtPropulsionNoisePublisher( 00048 DtExerciseConn* conn, 00049 const char* name = 0, 00050 const DtDDMRegionSet* regionSetToUse = 0); 00051 00057 DtPropulsionNoisePublisher( DtHlaObjectWithStateRep* obj, DtExerciseConn* conn); 00058 00060 virtual ~DtPropulsionNoisePublisher(); 00061 00064 virtual DtPropulsionNoiseStateRepository* propulsionNoiseStateRep(); 00065 00067 virtual DtPropulsionNoiseStateRepository* psr(); 00068 00071 virtual const char* classToUse() const; 00072 00073 public: 00075 static DtStateRepCreator setStateRepCreator(DtStateRepCreator creator); 00076 00077 protected: 00079 DtPropulsionNoisePublisher(const DtPropulsionNoisePublisher& orig); 00080 00082 DtPropulsionNoisePublisher& operator=( 00083 const DtPropulsionNoisePublisher& orig); 00084 00085 protected: 00086 static DtStateRepCreator theStateRepCreator; 00087 }; 00088 00089 inline DtPropulsionNoiseStateRepository* DtPropulsionNoisePublisher::propulsionNoiseStateRep() 00090 { 00091 return (DtPropulsionNoiseStateRepository*) myStateRep; 00092 } 00093 00094 inline DtPropulsionNoiseStateRepository* DtPropulsionNoisePublisher::psr() 00095 { 00096 return (DtPropulsionNoiseStateRepository*) myStateRep; 00097 } 00098 00099 00100 #endif //! DtHLA 00101 #endif