MAK RTIspy API Documentation for HLA Evolved
assistantForwarderStateMsg.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 2008 MaK Technologies, Inc.
00003 ** All rights reserved.
00004 *********************************************************************/
00005 /*********************************************************************
00006 ** $RCSfile: assistantForwarderStateMsg.h,v $ $Revision: 1.6 $ $State: Exp $
00007 *********************************************************************/
00008 
00009 #ifndef DtAssistantForwarderStateMsg_H_
00010 #define DtAssistantForwarderStateMsg_H_
00011 
00015 
00016 #include <vlutil/vlString.h>
00017 #include <vlutil/vlUtil.h>
00018 
00019 #include "assistantMsg.h"
00020 #include "federationInfo.h"
00021 #include "netAssistantForwarderStateMsg.h"
00022 #include "rtiVersion.h"
00023 
00024 class DtRtiAssistantPeer;
00025 class DtRtiAssistantServer;
00026 class DtAssistantForwarderStateMsg;
00027 
00028 typedef void (*DtAssistantForwarderStateCb)(const DtAssistantForwarderStateMsg& inter, void* usr);
00029 
00034 class DT_DLL_ASSISTANT DtAssistantForwarderStateMsg : public DtAssistantMsg
00035 {
00036 public:
00037 
00039    DtAssistantForwarderStateMsg(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00040 
00041    DtAssistantForwarderStateMsg(const DtNetAssistantForwarderStateMsg* netRepMsg,
00042       DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00043 
00045    virtual ~DtAssistantForwarderStateMsg();
00046 
00048    virtual DtAssistantMsg* clone(bool copy = true) const;
00049    
00051    virtual void printData() const;
00052 
00053 public:
00054 
00056    static DtAssistantMsg* create(const DtNetAssistantMsgHeader* initial,
00057       MAKRti::DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00058 
00059    static DtAssistantMsg* create(MAKRti::DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
00060 
00063    static void addCallback(DtRtiAssistantServer* conn, 
00064       DtAssistantForwarderStateCb cb, void* usr);
00065    static void removeCallback(DtRtiAssistantServer* conn, 
00066       DtAssistantForwarderStateCb cb, void* usr);
00067 
00070    static void addCallback(DtRtiAssistantPeer* conn, 
00071       DtAssistantForwarderStateCb cb, void* usr);
00072    static void removeCallback(DtRtiAssistantPeer* conn, 
00073       DtAssistantForwarderStateCb cb, void* usr);
00074    
00075    void getAllData(unsigned int& numForwarderToForwarderConns,
00076       std::vector<MAKRti::DtString>& forwarderIdentifiers,
00077       std::vector<MAKRti::DtString>& forwarderConnectionHostNames,
00078       std::vector<MAKRti::DtInetAddr>& forwarderConnectionAddrs,
00079       std::vector<int>& forwarderConnectionPorts,
00080       unsigned int& numExecConns,
00081       unsigned int& numForwarderClientConns,
00082       std::vector<MAKRti::DtString>& clientConnectionNames,
00083       std::vector<MAKRti::DtString>& clientConnectionTypeNames,
00084       std::vector<MAKRti::DtString>& clientConnectionProcessNames,
00085       std::vector<MAKRti::DtString>& clientConnectionPIDs,
00086       std::vector<MAKRti::DtString>& clientConnectionCommandArgs,
00087       std::vector<MAKRti::DtString>& clientConnectionHostNames,
00088       std::vector<MAKRti::DtInetAddr>& clientConnectionAddrs,
00089       std::vector<MAKRti::DtString>& clientConnectionFederationNames,
00090       std::vector<int>& clientConnectionHandles,
00091       std::vector<int>& clientConnectionQueueStatus,
00092       std::vector<DtHlaVersionId>& clientHlaVersions) const;
00093 
00094    bool setAllData(unsigned int numForwarderToForwarderConns,
00095       const std::vector<MAKRti::DtString>& forwarderIdentifiers,
00096       const std::vector<MAKRti::DtString>& forwarderConnectionHostNames,
00097       const std::vector<MAKRti::DtInetAddr>& forwarderConnectionAddrs,
00098       const std::vector<int>& forwarderConnectionPorts,
00099       unsigned int numExecConns,
00100       unsigned int numForwarderClientConns,
00101       const std::vector<MAKRti::DtString>& clientConnectionNames,
00102       const std::vector<MAKRti::DtString>& clientConnectionTypeNames,
00103       const std::vector<MAKRti::DtString>& clientConnectionProcessNames,
00104       const std::vector<MAKRti::DtString>& clientConnectionPIDs,
00105       const std::vector<MAKRti::DtString>& clientConnectionCommandArgs,
00106       const std::vector<MAKRti::DtString>& clientConnectionHostNames,
00107       const std::vector<MAKRti::DtInetAddr>& clientConnectionAddrs,
00108       const std::vector<MAKRti::DtString>& clientConnectionFederationNames,
00109       const std::vector<int>& clientConnectionHandles,
00110       const std::vector<int>& clientConnectionQueueStatus,
00111       const std::vector<DtHlaVersionId>& clientHlaVersions );
00112 
00113    MAKRti::DtString toString() const;
00114 
00115    virtual unsigned int numForwarderToForwarderConnections() const;
00116    virtual unsigned int numClientConnectionsThatAreExecs() const;
00117    virtual unsigned int numClientConnections() const;
00118       
00119 protected:
00120 
00122    virtual DtNetAssistantForwarderStateMsg* netAssistantForwarderStateMsg();
00123    virtual const DtNetAssistantForwarderStateMsg* netAssistantForwarderStateMsg() const;
00124 
00126    virtual DtAssistantMsgKind internalMsgKind();
00127 
00129    virtual int minSize() const;
00130 
00131    virtual void setNumForwarderToForwarderConnections(unsigned int num);
00132    virtual void setNumClientConnectionsThatAreExecs(unsigned int num);
00133    virtual void setNumClientConnections(unsigned int num);
00134 
00136    virtual DtInetUtils::DtInetAddrFamily addressFamily() const;
00137    virtual void setAddressFamily(DtInetUtils::DtInetAddrFamily fam);
00138 
00139 
00141    virtual void forwarderIds(std::vector<MAKRti::DtString>& ids) const;
00142    virtual bool setForwarderIds(const std::vector<MAKRti::DtString>& ids);
00143 
00145    virtual void forwarderHostNames(std::vector<MAKRti::DtString>& names) const;
00146    virtual bool setForwarderHostNames(const std::vector<MAKRti::DtString>& names);
00147 
00149    virtual void forwarderAddrs(std::vector<MAKRti::DtInetAddr>& addrs) const;
00150    virtual bool setForwarderAddrs(const std::vector<MAKRti::DtInetAddr>& addrs);
00151 
00153    virtual void forwarderPorts(std::vector<int>& ports) const;
00154    virtual bool setForwarderPorts(const std::vector<int>& ports);
00155 
00157    virtual void clientNames(std::vector<MAKRti::DtString>& names) const;
00158    virtual bool setClientNames(const std::vector<MAKRti::DtString>& names);
00159 
00161    virtual void clientTypes(std::vector<MAKRti::DtString>& strTypes ) const;
00162    virtual bool setClientTypes(const std::vector<MAKRti::DtString>& strTypes);
00163 
00165    virtual void clientProcessNames(std::vector<MAKRti::DtString>& processNames ) const;
00166    virtual bool setClientProcessNames(const std::vector<MAKRti::DtString>& processNames);
00167 
00169    virtual void clientPIDs(std::vector<MAKRti::DtString>& pids ) const;
00170    virtual bool setClientPIDs( const std::vector<MAKRti::DtString>& pids );
00171 
00173    virtual void clientCommandArgs(std::vector<MAKRti::DtString>& commandArgs ) const;
00174    virtual bool setClientCommandArgs(const std::vector<MAKRti::DtString>& commandArgs );
00175 
00177    virtual void clientHostNames(std::vector<MAKRti::DtString>& names) const;
00178    virtual bool setClientHostNames(const std::vector<MAKRti::DtString>& names);
00179 
00181    virtual void clientFederationNames(std::vector<MAKRti::DtString>& names) const;
00182    virtual bool setClientFederationNames(const std::vector<MAKRti::DtString>& names);
00183 
00185    virtual void clientAddrs(std::vector<MAKRti::DtInetAddr>& addrs) const;
00186    virtual bool setClientAddrs(const std::vector<MAKRti::DtInetAddr>& addrs);
00187 
00189    virtual void clientConnectionHandles(std::vector<int>& addrs) const;
00190    virtual bool setClientConnectionHandles(const std::vector<int>& handles);
00191 
00193    virtual void clientConnectionQueueStatus(std::vector<int>& queueStatus) const;
00194    virtual bool setClientConnectionQueueStatus(const std::vector<int>& queueStatus);
00195 
00197    virtual void clientHlaVersions(std::vector<DtHlaVersionId>& hlaVersions) const;
00198    virtual bool setClientHlaVersions(const std::vector<DtHlaVersionId>& hlaVersions);
00199 
00200 
00202    virtual unsigned int forwarderIdsSize() const;
00203    virtual void setForwarderIdsSize(unsigned int size);
00205    virtual const char* forwarderIdsPtr() const;
00206    virtual char* forwarderIdsPtr();
00207 
00209    virtual unsigned int forwarderHostNamesSize() const;
00210    virtual void setForwarderHostNamesSize(unsigned int size);
00212    virtual const char* forwarderHostNamesPtr() const;
00213    virtual char* forwarderHostNamesPtr();
00214    
00216    virtual const DtNetU128* forwarderAddrsPtr() const;
00217    virtual DtNetU128* forwarderAddrsPtr();
00218 
00220    virtual const DtNetU16* forwarderPortsPtr() const;
00221    virtual DtNetU16* forwarderPortsPtr();
00222 
00224    virtual unsigned int clientNamesSize() const;
00225    virtual void setClientNamesSize(unsigned int size);
00227    virtual const char* clientNamesPtr() const;
00228    virtual char* clientNamesPtr();
00229 
00231    virtual unsigned int clientTypesSize() const;
00232    virtual void setClientTypesSize(unsigned int size);
00234    virtual const char* clientTypesPtr() const;
00235    virtual char* clientTypesPtr();
00236 
00238    virtual unsigned int clientProcessNamesSize() const;
00239    virtual void setClientProcessNamesSize(unsigned int size);
00241    virtual const char* clientProcessNamesPtr() const;
00242    virtual char* clientProcessNamesPtr();
00243 
00245    virtual unsigned int clientPIDsSize() const;
00246    virtual void setClientPIDsSize(unsigned int size);
00248    virtual const char* clientPIDsPtr() const;
00249    virtual char* clientPIDsPtr();
00250 
00252    virtual unsigned int clientCommandArgsSize() const;
00253    virtual void setClientCommandArgsSize(unsigned int size);
00255    virtual const char* clientCommandArgsPtr() const;
00256    virtual char* clientCommandArgsPtr();
00257 
00259    virtual unsigned int clientHostNamesSize() const;
00260    virtual void setClientHostNamesSize(unsigned int size);
00262    virtual const char* clientHostNamesPtr() const;
00263    virtual char* clientHostNamesPtr();
00264 
00266    virtual unsigned int clientFederationNamesSize() const;
00267    virtual void setClientFederationNamesSize(unsigned int size);
00269    virtual const char* clientFederationNamesPtr() const;
00270    virtual char* clientFederationNamesPtr();
00271 
00273    virtual const DtNetU128* clientAddrsPtr() const;
00274    virtual DtNetU128* clientAddrsPtr();
00275 
00277    virtual const DtNetU16* clientConnectionHandlesPtr() const;
00278    virtual DtNetU16* clientConnectionHandlesPtr();
00279 
00281    const DtNetU16* clientConnectionQueueStatusPtr() const;
00282    DtNetU16* clientConnectionQueueStatusPtr();
00283 
00285    const DtNetU8* clientHlaVersionsPtr() const;
00286    DtNetU8* clientHlaVersionsPtr();
00287 };
00288 
00289 #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)