MAK RTIspy API Documentation for HLA 1.3
disableMsg.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 1998 MaK Technologies, Inc.
00003 ** All rights reserved.
00004 *********************************************************************/
00005 /*********************************************************************
00006 ** $RCSfile: disableMsg.h,v $ $Revision: 1.9 $ $State: Exp $
00007 *********************************************************************/
00008 
00011 
00012 #ifndef DtDisableMsg_H_
00013 #define DtDisableMsg_H_
00014 
00015 #ifdef DtTIME
00016 
00017 #include "rtiMsg.h"
00018 #include "netDisableMsg.h"
00019 
00020 enum DtTimeServiceType
00021 {
00022    DtTimeRegulation=0,
00023    DtTimeConstrained
00024 };
00025 
00026 class DtConnectionMgr;
00027 class DtDisableMsg;
00028 typedef void (*DtDisableCb)(const DtDisableMsg& msg, void* usr);
00029 
00030 class DT_DLL_LRC DtDisableMsg : public DtRtiMsg
00031 {
00032 public:
00033 
00035    DtDisableMsg(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00036 
00038    DtDisableMsg(
00039       DtTimeServiceType type,
00040       DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00041 
00043    DtDisableMsg(const DtNetDisable* netRepMsg,
00044       DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00045 
00047    virtual ~DtDisableMsg();
00048 
00050    virtual DtRtiMsg* clone(bool copy = true) const; 
00051 
00053    virtual void set(DtTimeServiceType type);
00054    
00056    virtual void setServiceType(DtTimeServiceType type);
00057    virtual DtTimeServiceType serviceType() const;
00058 
00060    virtual void printData(DtLogicalTimeFactory* logicalTimeFactory) const;
00061 
00062 public:
00063 
00065    static DtRtiMsg* create(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00066 
00068    static DtRtiMsg* create(const DtNetMsgHeader* initial,
00069       DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00070 
00072    static void addCallback(DtConnectionMgr *conn,
00073       DtDisableCb cb, void *usr);
00074    static void removeCallback(DtConnectionMgr *conn,
00075       DtDisableCb cb, void *usr);
00076 
00077 protected:
00078    
00080    DtRtiMsgKind internalDtRtiMsgKind();
00081 
00083    virtual DtNetDisable* netDisableMsg();
00084    virtual const DtNetDisable* netDisableMsg() const;
00085 
00087    virtual int minSize() const;
00088 
00090    virtual DtDisableMsg* self() const;
00091 };
00092 
00093 inline DtDisableMsg* DtDisableMsg::self() const
00094 {
00095    return const_cast<DtDisableMsg*>( this );
00096 }
00097 
00098 #endif
00099 #endif
00100 

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)