MAK RTIspy API Documentation for HLA 1516
aliveMsg.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 1998 MaK Technologies, Inc.
00003 ** All rights reserved.
00004 *********************************************************************/
00005 /*********************************************************************
00006 ** $RCSfile: aliveMsg.h,v $ $Revision: 1.14 $ $State: Exp $
00007 *********************************************************************/
00008 
00011 
00012 #ifndef DtAliveMsg_H_
00013 #define DtAliveMsg_H_
00014 
00015 #include "rtiMsg.h"
00016 #include "netRtiMsgHdr.h"
00017 #include "netAliveMsg.h"
00018 #include <vlutil/vlString.h>
00019 
00020 class DtConnectionMgr;
00021 class DtAliveMsg;
00022 typedef void (*DtAliveCb)(const DtAliveMsg& inter, void* usr);
00023 
00024 class DT_DLL_LRC DtAliveMsg : public DtRtiMsg
00025 {
00026 public:
00027 
00029    DtAliveMsg(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00030 
00032    DtAliveMsg(const DtNetAliveMsg* netRep,
00033       DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00034 
00036    virtual ~DtAliveMsg();
00037 
00039    virtual DtRtiMsg* clone(bool copy = true) const; 
00040 
00042    virtual void printData(DtLogicalTimeFactory* logicalTimeFactory) const;
00043 
00044 public:
00045 
00047    static DtRtiMsg* create(const DtNetMsgHeader* initial,
00048       DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00049 
00050    static DtRtiMsg* create(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00051 
00053    static void addCallback(DtConnectionMgr* conn,
00054       DtAliveCb cb, void* usr, bool isMomCallback=false);
00055    static void removeCallback(DtConnectionMgr* conn,
00056       DtAliveCb cb, void* usr, bool isMomCallback=false);
00057 
00058 protected:
00059 
00061    virtual DtNetAliveMsg* netAliveMsg();
00062    virtual const DtNetAliveMsg* netAliveMsg() const;
00063 
00065    virtual DtRtiMsgKind internalDtRtiMsgKind();
00066 
00068    virtual int minSize() const;
00069 
00071    virtual DtAliveMsg* self() const;
00072 
00073 protected:
00074 
00075 };
00076 
00077 
00078 inline DtAliveMsg* DtAliveMsg::self() const
00079 {
00080    return const_cast<DtAliveMsg*>( this );
00081 }
00082 
00083 #endif
00084 

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)