MAK RTIspy API Documentation for HLA 1.3
assistantSyncPtUpdateMsg.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 2008 MaK Technologies, Inc.
00003 ** All rights reserved.
00004 *********************************************************************/
00005 /*********************************************************************
00006 ** $RCSfile: assistantSyncPtUpdateMsg.h,v $ $Revision: 1.2 $ $State: Exp $
00007 *********************************************************************/
00008 
00009 #ifndef DtAssistantSyncPtUpdateMsg_H_
00010 #define DtAssistantSyncPtUpdateMsg_H_
00011 
00015 
00016 #include <vlutil/vlString.h>
00017 #include <vlutil/vlUtil.h>
00018 
00019 #include "assistantMsg.h"
00020 #include "federationInfo.h"
00021 #include "netAssistantSyncPtUpdateMsg.h"
00022 
00023 class DtRtiAssistantServer;
00024 class DtRtiAssistantPeer;
00025 class DtAssistantSyncPtUpdateMsg;
00026 
00027 typedef void (*DtAssistantSyncPtUpdateCb)(const DtAssistantSyncPtUpdateMsg& inter, void* usr);
00028 
00033 class DT_DLL_ASSISTANT DtAssistantSyncPtUpdateMsg : public DtAssistantMsg
00034 {
00035 public:
00036 
00038    DtAssistantSyncPtUpdateMsg(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00039 
00040    DtAssistantSyncPtUpdateMsg(const DtNetAssistantSyncPtUpdateMsg* netRepMsg,
00041       DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00042 
00044    virtual ~DtAssistantSyncPtUpdateMsg();
00045 
00047    virtual DtAssistantMsg* clone(bool copy = true) const;
00048 
00050    virtual bool isRemoval() const;
00051 
00053    virtual void setIsRemoval( bool remove );
00054 
00056    virtual void getPendingAndAchieved( DtPendingAchievedPair& pendAchieve ) const;
00057 
00059    virtual void setPendingAndAchieved( const DtPendingAchievedPair& pendAchieve );
00060 
00062    virtual MAKRti::DtString federationName() const;
00063 
00065    virtual void setFederationName( const MAKRti::DtString& name );
00066 
00068    virtual MAKRti::DtString syncPtName() const;
00069 
00071    virtual void setSyncPtName( const MAKRti::DtString& name );
00072 
00074    virtual void printData() const;
00075 
00076 public:
00077 
00079    static DtAssistantMsg* create(const DtNetAssistantMsgHeader* initial,
00080       DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00081 
00082    static DtAssistantMsg* create(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00083 
00086    static void addCallback(DtRtiAssistantServer* conn,
00087       DtAssistantSyncPtUpdateCb cb, void* usr);
00088    static void removeCallback(DtRtiAssistantServer* conn,
00089       DtAssistantSyncPtUpdateCb cb, void* usr);
00090 
00093    static void addCallback(DtRtiAssistantPeer* conn, 
00094       DtAssistantSyncPtUpdateCb cb, void* usr);
00095    static void removeCallback(DtRtiAssistantPeer* conn, 
00096       DtAssistantSyncPtUpdateCb cb, void* usr);
00097       
00098 protected:
00099 
00101    virtual DtNetAssistantSyncPtUpdateMsg* netAssistantSyncPtUpdateMsg();
00102    virtual const DtNetAssistantSyncPtUpdateMsg* netAssistantSyncPtUpdateMsg() const;
00103 
00105    virtual DtAssistantMsgKind internalMsgKind();
00106 
00108    virtual int minSize() const;
00109 
00111    virtual void setNumPending( unsigned num );
00112    virtual unsigned numPending() const;
00113 
00115    virtual const DtNetU32* pendingPtr() const;
00116    virtual DtNetU32* pendingPtr();
00117 
00119    virtual void setNumAchieved( unsigned num );
00120    virtual unsigned numAchieved() const;
00121 
00123    virtual const DtNetU32* achievedPtr() const;
00124    virtual DtNetU32* achievedPtr();
00125 
00127    virtual void setFederationNameSize( unsigned size );
00128    virtual unsigned federationNameSize() const;
00129 
00131    virtual const char* federationNamePtr() const;
00132    virtual char* federationNamePtr();
00133 
00135    virtual void setSyncPtNameSize( unsigned size );
00136    virtual unsigned syncPtNameSize() const;
00137 
00139    virtual const char* syncPtNamePtr() const;
00140    virtual char* syncPtNamePtr();
00141 
00142 };
00143 
00144 #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)