![]() |
MAK RTIspy API Documentation for HLA 1.3
|
00001 /********************************************************************* 00002 ** Copyright (c) 2006 MaK Technologies, Inc. 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 /********************************************************************* 00006 ** $RCSfile: wwwFederateStateReqMsg.h,v $ $Revision: 1.8 $ $State: Exp $ 00007 *********************************************************************/ 00008 00011 00012 #ifndef DtWwwFederateStateReqMsg_H_ 00013 #define DtWwwFederateStateReqMsg_H_ 00014 00015 #include "rtiMsg.h" 00016 #include "netWwwFederateStateMsg.h" 00017 00018 class DtConnectionMgr; 00019 class DtWwwFederateStateReqMsg; 00020 class DtLogicalTimeFactory; 00021 typedef void (*DtWwwFederateStateRequestCb)(const DtWwwFederateStateReqMsg& inter, void* usr); 00022 00023 00024 class DT_DLL_LRC DtWwwFederateStateReqMsg : public DtRtiMsg 00025 { 00026 00027 public: 00028 00030 DtWwwFederateStateReqMsg(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00031 00033 DtWwwFederateStateReqMsg( unsigned long connId, unsigned long federationHandle, 00034 unsigned long federateHandle, unsigned long requestType, bool isProxied, 00035 DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00036 00038 DtWwwFederateStateReqMsg(const DtNetWwwFederateStateMsg* netRep, 00039 DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00040 00042 virtual ~DtWwwFederateStateReqMsg(); 00043 00045 virtual DtRtiMsg* clone(bool copy = true) const; 00046 00048 virtual unsigned long targetConnectionId() const; 00049 virtual void setTargetConnectionId( unsigned long connId ); 00050 00052 virtual unsigned long targetFederateHandle() const; 00053 virtual void setTargetFederateHandle( unsigned long handle ); 00054 00056 virtual unsigned long requestType() const; 00057 virtual void setRequestType( unsigned long handle ); 00058 00060 virtual bool isProxied() const; 00061 virtual void setProxied( bool val ); 00062 00064 virtual void printData(DtLogicalTimeFactory* logicalTimeFactory) const; 00065 00066 public: 00067 00069 static DtRtiMsg* create(const DtNetMsgHeader* initial, 00070 DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00071 00072 static DtRtiMsg* create(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00073 00075 static void addCallback(DtConnectionMgr* conn, DtWwwFederateStateRequestCb cb, void* usr); 00076 static void removeCallback(DtConnectionMgr* conn, DtWwwFederateStateRequestCb cb, void* usr); 00077 00078 protected: 00079 00081 virtual DtNetWwwFederateStateMsg* netWwwFederateStateMsg(); 00082 virtual const DtNetWwwFederateStateMsg* netWwwFederateStateMsg() const; 00083 00085 virtual DtRtiMsgKind internalDtRtiMsgKind(); 00086 00088 virtual int minSize() const; 00089 00090 }; 00091 00092 #endif //! DtWwwFederateStateReqMsg_H_ 00093