![]() |
VR-Link API Documentation for HLA 1.3
|
00001 /********************************************************************* 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 00006 00007 #ifndef hDesignatrPub_H_ 00008 #define hDesignatrPub_H_ 00009 00010 #if DtHLA 00011 00012 #include "hObjPub.h" 00013 00017 00018 class DtDesignatorRepository; 00019 00026 00027 class DT_DLL_VL DtDesignatorPublisher : public DtObjectPublisher 00028 { 00029 public: 00030 00032 typedef DtDesignatorRepository* (*DtStateRepCreator)(); 00033 00034 public: 00035 00037 DtDesignatorPublisher( 00038 DtDesignatorRepository* stateRepToUse, 00039 DtExerciseConn* conn, 00040 const char* name = 0, 00041 const DtDDMRegionSet* regionSetToUse = 0); 00042 00044 DtDesignatorPublisher( 00045 RTI::ObjectClassHandle h, 00046 DtExerciseConn* conn, 00047 const char* name = 0, 00048 const DtDDMRegionSet* regionSetToUse = 0); 00049 00051 DtDesignatorPublisher( 00052 DtExerciseConn* conn, 00053 const char* name = 0, 00054 const DtDDMRegionSet* regionSetToUse = 0); 00055 00056 00062 DtDesignatorPublisher( DtHlaObjectWithStateRep* obj, DtExerciseConn* conn); 00063 00065 virtual ~DtDesignatorPublisher(); 00066 00069 virtual DtDesignatorRepository* designatorStateRep(); 00070 00072 virtual DtDesignatorRepository* dsr(); 00073 00076 virtual const char* classToUse() const; 00077 00078 public: 00079 00081 static DtStateRepCreator setStateRepCreator(DtStateRepCreator creator); 00082 00083 protected: 00084 00086 DtDesignatorPublisher(const DtDesignatorPublisher& orig); 00087 00089 DtDesignatorPublisher& operator= 00090 (const DtDesignatorPublisher& orig); 00091 00092 protected: 00093 00094 static DtStateRepCreator theStateRepCreator; 00095 }; 00096 00097 inline DtDesignatorRepository* DtDesignatorPublisher::designatorStateRep() 00098 { 00099 return (DtDesignatorRepository*) myStateRep; 00100 } 00101 00102 inline DtDesignatorRepository* DtDesignatorPublisher::dsr() 00103 { 00104 return (DtDesignatorRepository*) myStateRep; 00105 } 00106 00107 #endif //DtHLA 00108 #endif //DtDesignatorPublisher_H_ 00109