![]() |
MAK RTIspy API Documentation for HLA 1.3
|
00001 /************************************************************************** 00002 ** Copyright (c) 2006 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ***************************************************************************/ 00005 /************************************************************************** 00006 ** $RCSfile: transferRidParamsMsg.h,v $ $Revision: 1.6 $ $State: Exp $ 00007 ***************************************************************************/ 00008 00011 00012 #ifndef DtTransferRidParamsMsg_H_ 00013 #define DtTransferRidParamsMsg_H_ 00014 00015 #include "rtiMsConfig.h" 00016 #include "rtiMsg.h" 00017 #include <vlutil/vlString.h> 00018 #include "netTransferRidParamsMsg.h" 00019 #include "netRidTestReqMsg.h" 00020 00021 class DtConnectionMgr; 00022 class DtTransferRidParamsMsg; 00023 00024 typedef void (*DtRidTestRespCb)(const DtTransferRidParamsMsg& inter, void* usr); 00025 00030 class DT_DLL_LRC DtTransferRidParamsMsg : public DtRtiMsg 00031 { 00032 public: 00033 00035 DtTransferRidParamsMsg( DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER ); 00036 00038 DtTransferRidParamsMsg( const DtNetTransferRidParamsMsg* netRepMsg, 00039 DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER ); 00040 00042 virtual ~DtTransferRidParamsMsg(); 00043 00045 virtual DtRtiMsg* clone(bool copy = true) const; 00046 00047 virtual int minSize() const; 00048 00050 virtual void setDestinationID( const DtFederateHandle& destination ); 00051 virtual DtFederateHandle destinationID() const; 00052 00054 virtual void writeRidTestBlock( const char* ridTestBlock, unsigned int blockSize ); 00055 virtual const char* readRidTestBlock() const; 00056 00058 virtual void printData(DtLogicalTimeFactory* logicalTimeFactory) const; 00059 00060 public: 00061 00063 static DtRtiMsg* create( const DtNetMsgHeader* initial, 00064 DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER ); 00065 00067 static DtRtiMsg* create( DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER ); 00068 00070 static void addCallback(DtConnectionMgr* conn, 00071 DtRidTestRespCb cb, void* usr); 00072 static void removeCallback(DtConnectionMgr* conn, 00073 DtRidTestRespCb cb, void* usr); 00074 00075 protected: 00076 00078 virtual DtNetTransferRidParamsMsg* netTransferMsg(); 00079 virtual const DtNetTransferRidParamsMsg* netTransferMsg() const; 00080 00081 virtual char* fileBufferPtr() const; 00082 00084 virtual DtRtiMsgKind internalDtRtiMsgKind(); 00085 00087 virtual DtTransferRidParamsMsg* self() const; 00088 00089 }; 00090 00091 00092 inline DtTransferRidParamsMsg* DtTransferRidParamsMsg::self() const 00093 { 00094 return const_cast<DtTransferRidParamsMsg*>( this ); 00095 } 00096 00097 #endif //! DtTransferRidParamsMsg_H_ 00098