![]() |
MAK RTIspy API Documentation for HLA 1.3
|
00001 /********************************************************************* 00002 ** Copyright (c) 1998 MaK Technologies, Inc. 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 /********************************************************************* 00006 ** $RCSfile: resEndMsg.h,v $ $Revision: 1.9 $ $State: Exp $ 00007 *********************************************************************/ 00008 00011 00012 #ifndef DtRestoreEndMsg_H_ 00013 #define DtRestoreEndMsg_H_ 00014 00015 #include "saveMsg.h" 00016 00017 class DtConnectionMgr; 00018 class DtRestoreEndMsg; 00019 typedef void (*DtRestoreEndCb)(const DtRestoreEndMsg& msg, void* usr); 00020 00021 enum DtEndRestoreResult 00022 { 00023 DtRestoreResultSucess, 00024 DtRestoreResultUnableToRestore, 00025 DtRestoreResultFederateFailure, 00026 DtRestoreResultFederateResigned, 00027 DtRestoreResultFailureDetected, 00028 DtRestoreResultAborted 00029 }; 00030 00031 class DT_DLL_LRC DtRestoreEndMsg : public DtSaveMsg 00032 { 00033 public: 00034 00036 DtRestoreEndMsg(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00037 00039 DtRestoreEndMsg( 00040 const char* theLabel, 00041 DtEndRestoreResult theResult, 00042 DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00043 00045 DtRestoreEndMsg(const DtNetSaveMsg* netRepMsg, 00046 DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00047 00049 virtual ~DtRestoreEndMsg(); 00050 00052 virtual DtRtiMsg* clone(bool copy = true) const; 00053 00055 virtual void set(const char* theLabel, 00056 DtEndRestoreResult theResult); 00057 00059 virtual void setEndResult(DtEndRestoreResult theResult); 00060 virtual DtEndRestoreResult endResult() const; 00061 00062 public: 00063 00065 static DtRtiMsg* create(const DtNetMsgHeader* initial, 00066 DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00068 static DtRtiMsg* create(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00069 00071 static void addCallback(DtConnectionMgr *conn, 00072 DtRestoreEndCb cb, void *usr); 00073 static void removeCallback(DtConnectionMgr *conn, 00074 DtRestoreEndCb cb, void *usr); 00075 00076 protected: 00077 00078 00080 virtual DtRtiMsgKind internalDtRtiMsgKind(); 00081 00082 00083 protected: 00084 00085 }; 00086 00087 #endif