MAK RTIspy API Documentation for HLA 1.3
rtiAssistantForwarderClient.h
Go to the documentation of this file.
00001 /*********************************************************************
00002  ** Copyright (c) 2008 MaK Technologies, Inc.
00003  ** All rights reserved.
00004  *********************************************************************/
00005 /*******************************************************************************
00006  ** $RCSfile: rtiAssistantForwarderClient.h,v $ $Revision: 1.18 $ $State: Exp $
00007  *******************************************************************************/
00008 
00009 #ifndef rtiAssistantForwarderClient_H_
00010 #define rtiAssistantForwarderClient_H_
00011 
00015 
00016 #include "rtiVersion.h"
00017 #include "rtiAssistantClient.h"
00018 #include "assistantConnectionInfo.h"
00019 
00020 
00021 struct DtNameAndConnStatus
00022 {
00023    MAKRti::DtString name;
00024    bool isConnected;
00025 };
00026 typedef std::map<DtInetAddrAndPort, DtNameAndConnStatus> DtNeededFwConnMap;
00027 
00034 class DT_DLL_ASSISTANT DtRtiAssistantForwarderClient : public DtRtiAssistantClient
00035 {
00036 public:
00037 
00039    DtRtiAssistantForwarderClient( DtAssistantComponentType type, 
00040                                   int port = DtASSISTANT_DEFAULT_PORT );
00041 
00043    virtual ~DtRtiAssistantForwarderClient();
00044 
00048    virtual void updateForwarderInfo( const MAKRti::DtInetAddr& reliableIpAddr, 
00049       const MAKRti::DtInetAddr& bestEffortIpAddr, int udpPort, int tcpPort,
00050       bool fullCompliance, int forwarderPort,
00051       const MAKRti::DtInetAddr& additionalForwarder );
00052 
00057    virtual void updateExecConfirmed( bool confirmed, bool fullyCompliant );
00058 
00060    virtual void sendClientInfo();
00061 
00063    virtual void sendFullForwarderInfo(unsigned int numForwarderToForwarderConns,
00064       const std::vector<MAKRti::DtString>& forwarderIdentifiers,
00065       const std::vector<MAKRti::DtString>& forwarderConnectionHostNames,
00066       const std::vector<MAKRti::DtInetAddr>& forwarderConnectionAddrs,
00067       const std::vector<int>& forwarderConnectionPorts,
00068       unsigned int numForwarderExecConns,
00069       unsigned int numForwarderClientConns,
00070       const std::vector<MAKRti::DtString>& clientConnectionNames,
00071       const std::vector<MAKRti::DtString>& clientConnectionTypeNames,
00072       const std::vector<DtString>& clientConnectionProcessNames,
00073       const std::vector<DtString>& clientConnectionPIDs,
00074       const std::vector<DtString>& clientConnectionCommandArgs,
00075       const std::vector<MAKRti::DtString>& clientConnectionHostNames,
00076       const std::vector<MAKRti::DtInetAddr>& clientConnectionAddrs,
00077       const std::vector<MAKRti::DtString>& clientConnectionFederationNames,
00078       const std::vector<int>& clientConnectionHandles,
00079       const std::vector<int>& clientConnectionQueueStatus,
00080       const std::vector<DtHlaVersionId>& clientHlaVersions );
00081       
00084    virtual void sendWaitingForForwarders(bool isWaiting, const DtNeededFwConnMap& neededFws);
00085 
00086 protected:
00087 
00089    MAKRti::DtInetAddr myReliableAddr;
00090 
00092    MAKRti::DtInetAddr myBestEffortAddr;
00093 
00095    int myTcpPort;
00096 
00098    int myUdpPort;
00099 
00101    MAKRti::DtString myHostName;
00102 
00104    bool myFullCompliance;
00105 
00107    int myForwarderPort;
00108 
00111    MAKRti::DtInetAddr myAdditionalForwarder;
00112 
00115    bool myExecConfirmed;
00116 
00117 };
00118 
00119 
00120 #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)