![]() |
MAK RTIspy API Documentation for HLA Evolved
|
00001 /********************************************************************* 00002 ** Copyright(c) 2001 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 /********************************************************************* 00006 ** $RCSfile: momPublisher.h,v $ $Revision: 1.23 $ $State: Exp $ 00007 *********************************************************************/ 00008 #ifdef DtMOM 00009 00010 00011 00012 #ifndef DtMomPublisher_H_ 00013 #define DtMomPublisher_H_ 00014 00015 #include "objMgr.h" 00016 00017 class DtMomSR; 00018 class DtConnectionMgr; 00019 class DtFomClassMgr; 00020 class DtObjectMgr; 00021 class DtRegObjMsg; 00022 class DtRtiObject; 00023 class DtRegion; 00024 00025 class DT_DLL_LRC DtMomPublisher 00026 { 00027 public: 00028 00030 DtMomPublisher(DtConnectionMgr* connMgrPtr, DtFomClassMgr* fomPtr, 00031 DtObjectMgr* objMgrPtr); 00032 00034 virtual ~DtMomPublisher(); 00035 00037 virtual bool isObject(DtObjectInstanceHandle handle); 00038 00040 virtual bool isClass(DtHandle handle); 00041 00043 virtual void sendRegister(); 00044 00046 virtual void resendRegister(); 00047 00049 virtual void forceUpdate(); 00050 00052 virtual void forceUpdate(const DtAttributeHandleSet& set); 00053 00054 #ifdef DDM 00055 00056 virtual void setRegion(DtRegion* regionPtr); 00057 virtual DtRegion* region(); 00058 #endif 00059 00061 virtual unsigned int encodedLength() const; 00062 virtual void encode(const char *buff); 00063 00066 virtual bool decode(const char *buff); 00067 00069 virtual void tick()=0; 00070 00071 protected: 00072 00074 DtMomPublisher(const DtMomPublisher& orig); 00075 00077 DtMomPublisher& operator=(const DtMomPublisher& orig); 00078 00079 protected: 00080 00081 DtConnectionMgr* myConnMgr; 00082 DtFomClassMgr* myFom; 00083 DtObjectMgr* myObjMgr; 00084 DtRtiObject* myObject; 00085 DtUpdateType myUpdateType; 00086 DtMomSR* myRepository; 00087 MAKRti::DtClock myClock; 00088 #ifdef DDM 00089 DtRegion* myRegion; 00090 #endif 00091 }; 00092 00093 #endif 00094 #endif