![]() |
MAK RTIspy API Documentation for HLA 1.3
|
00001 /********************************************************************* 00002 ** Copyright (c) 1998 MaK Technologies, Inc. 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 /********************************************************************* 00006 ** $RCSfile: savReqMsg.h,v $ $Revision: 1.9 $ $State: Exp $ 00007 *********************************************************************/ 00008 00011 00012 #ifndef DtSaveRequestMsg_H_ 00013 #define DtSaveRequestMsg_H_ 00014 00015 #include "saveMsg.h" 00016 00017 00018 class DtConnectionMgr; 00019 class DtSaveRequestMsg; 00020 typedef void (*DtSaveRequestCb)(const DtSaveRequestMsg& msg, void* usr); 00021 00022 00023 class DT_DLL_LRC DtSaveRequestMsg : public DtSaveMsg 00024 { 00025 public: 00026 00028 DtSaveRequestMsg(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00029 00031 DtSaveRequestMsg(unsigned long requestIDValue, 00032 const char* theLabel, 00033 DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00034 00036 DtSaveRequestMsg(const DtNetSaveMsg* netRepMsg, 00037 DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00038 00040 virtual ~DtSaveRequestMsg(); 00041 00043 virtual DtRtiMsg* clone(bool copy = true) const; 00044 00046 virtual void set(unsigned long theRequestID, const char* theLabel); 00047 00049 virtual void printData(DtLogicalTimeFactory* logicalTimeFactory) const; 00050 00051 public: 00052 00054 static DtRtiMsg* create(const DtNetMsgHeader* initial, 00055 DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00056 00058 static DtRtiMsg* create(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00059 00061 static void addCallback(DtConnectionMgr *conn, 00062 DtSaveRequestCb cb, void *usr); 00063 static void removeCallback(DtConnectionMgr *conn, 00064 DtSaveRequestCb cb, void *usr); 00065 00066 protected: 00067 00069 virtual DtRtiMsgKind internalDtRtiMsgKind(); 00070 00071 protected: 00072 00073 char* myTag; 00074 }; 00075 00076 #endif