![]() |
VR-Link API Documentation for HLA 1516
|
00001 //******************************************************************** 00004 //******************************************************************** 00005 //******************************************************************** 00007 //******************************************************************** 00008 00009 #ifndef tIffPub_H_ 00010 #define tIffPub_H_ 00011 00012 #if DtTENA 00013 00014 #include "tObjPub.h" 00015 #include "iffSR.h" 00016 #include "objectId.h" 00017 00021 00022 class DT_DLL_VL DtExerciseConn; 00023 class DT_DLL_VL DtTenaServantObject; 00024 00028 class DT_DLL_VL DtIffPublisher : public DtObjectPublisher 00029 { 00030 public: 00032 typedef DtIffStateRepository* (*DtStateRepCreator)(); 00033 00034 public: 00037 DtIffPublisher( 00038 DtExerciseConn* conn, 00039 const DtObjectId& id = DtObjectId::defaultId()); 00040 00044 DtIffPublisher( 00045 DtIffAtcNavaidsSysType type, 00046 DtExerciseConn* conn, 00047 const DtObjectId& id = DtObjectId::defaultId()); 00048 00050 virtual ~DtIffPublisher(); 00051 00054 virtual bool tick(); 00055 00057 virtual DtIffStateRepository* iffStateRep(); 00058 00060 virtual DtIffStateRepository* isr(); 00061 00064 virtual DtString interfaceToUse() const; 00065 00066 public: 00067 static void setStateRepCreator(DtStateRepCreator creator); 00068 static DtStateRepCreator stateRepCreator(); 00069 00070 protected: 00071 DtIffPublisher(const DtIffPublisher& orig); 00072 00073 DtIffPublisher& operator=(const DtIffPublisher& orig); 00074 00075 protected: 00078 void initialize(); 00079 00080 protected: 00081 static DtStateRepCreator theStateRepCreator; 00082 }; 00083 00084 #endif 00085 #endif 00086