MAK RTIspy API Documentation for HLA 1.3
savFinMsg.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 1998 MaK Technologies, Inc.
00003 ** All rights reserved.
00004 *********************************************************************/
00005 /*********************************************************************
00006 ** $RCSfile: savFinMsg.h,v $ $Revision: 1.10 $ $State: Exp $
00007 *********************************************************************/
00008 
00011 
00012 #ifndef DtSaveFinishMsg_H_
00013 #define DtSaveFinishMsg_H_
00014 
00015 #include "saveMsg.h"
00016 
00017 class DtConnectionMgr;
00018 class DtSaveFinishedMsg;
00019 typedef void (*DtSaveFinishedCb)(const DtSaveFinishedMsg& msg, void* usr);
00020 
00021 enum DtSaveFinishedResult
00022 {
00023    DtSaveFinishedSuccess,
00024    DtSaveFinishedRtiUnableToSave,
00025    DtSaveFinishedFederateFailure,
00026    DtSaveFinishedFederateResigned,
00027    DtSaveFinishedFailureDetected,
00028    DtSaveFinishedInvalidSaveTime,
00029    DtSaveFinishedAborted
00030 };
00031 
00032 class DT_DLL_LRC DtSaveFinishedMsg : public DtSaveMsg
00033 {
00034 public:
00035 
00037    DtSaveFinishedMsg(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00038 
00040    DtSaveFinishedMsg(
00041       const char* theLabel,
00042       DtSaveFinishedResult result,
00043       DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00044 
00046    DtSaveFinishedMsg(const DtNetSaveMsg* netRepMsg,
00047       DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00048 
00050    virtual ~DtSaveFinishedMsg();
00051 
00053    virtual DtRtiMsg* clone(bool copy = true) const; 
00054 
00056    virtual void set(const char* theLabel, DtSaveFinishedResult theResult);
00057 
00059    virtual void setFinishedResult(DtSaveFinishedResult theResult);
00060    virtual DtSaveFinishedResult finishedResult() const;
00061 
00062 public:
00063 
00065    static DtRtiMsg* create(const DtNetMsgHeader* initial,
00066                            DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);    
00067 
00069    static DtRtiMsg* create(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00070 
00072    static void addCallback(DtConnectionMgr *conn, 
00073       DtSaveFinishedCb cb, void *usr);
00074    static void removeCallback(DtConnectionMgr *conn, 
00075       DtSaveFinishedCb cb, void *usr);
00076    
00077 protected:
00078    
00080    virtual DtRtiMsgKind internalDtRtiMsgKind();
00081 
00082 protected:
00083 
00084 };
00085 
00086 #endif

Document ID: Generated on Thu Jun 14 14:15:04 EDT 2012 from SVN revision 116116
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)