![]() |
VR-Link API Documentation for DIS
|
00001 //******************************************************************** 00004 //******************************************************************** 00005 //******************************************************************** 00007 //******************************************************************** 00008 00009 #ifndef tDesignatrPub_H_ 00010 #define tDesignatrPub_H_ 00011 00012 #if DtTENA 00013 00014 #include "tObjPub.h" 00015 #include "objectId.h" 00016 00020 00021 class DT_DLL_VL DtExerciseConn; 00022 class DT_DLL_VL DtDesignatorRepository; 00023 class DT_DLL_VL DtTenaServantObject; 00024 00025 00030 class DT_DLL_VL DtDesignatorPublisher : public DtObjectPublisher 00031 { 00032 public: 00034 typedef DtDesignatorRepository* (*DtStateRepCreator)(); 00035 00036 public: 00039 DtDesignatorPublisher( 00040 DtExerciseConn* conn, 00041 const DtObjectId& id = DtObjectId::defaultId()); 00042 00044 virtual ~DtDesignatorPublisher(); 00045 00048 virtual bool tick(); 00049 00051 virtual DtDesignatorRepository* designatorStateRep(); 00052 00054 virtual DtDesignatorRepository* dsr(); 00055 00058 virtual DtString interfaceToUse() const; 00059 00060 public: 00061 static void setStateRepCreator(DtStateRepCreator creator); 00062 static DtStateRepCreator stateRepCreator(); 00063 00064 protected: 00065 DtDesignatorPublisher(const DtDesignatorPublisher& orig); 00066 00067 DtDesignatorPublisher& operator=(const DtDesignatorPublisher& orig); 00068 00069 protected: 00072 void initialize(); 00073 00074 protected: 00075 static DtStateRepCreator theStateRepCreator; 00076 }; 00077 00078 #endif 00079 #endif 00080