MAK RTIspy API Documentation for HLA 1.3
assistantConnectionInfo.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2008 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 /*********************************************************************
6 ** $RCSfile: assistantConnectionInfo.h,v $ $Revision: 1.35 $ $State: Exp $
7 *********************************************************************/
8 
9 #ifndef assistantConnectionInfo_H_
10 #define assistantConnectionInfo_H_
11 
14 
15 #include <rtiUtil.h>
16 #include <vlutil/vlString.h>
17 #include <vlutil/vlMutex.h>
18 #include "assistantUtil.h"
19 #include "assistantInfo.h"
21 #include <hostNameAddress.h>
22 
24 
26 typedef std::map<DtRtiConnectionInfo,DtRtiAssociatedConnectionData> DtRtiConnectionInfoDataMap;
27 
29 typedef std::pair<DtRtiConnectionInfo,DtRtiAssociatedConnectionData> DtRtiConnectionInfoDataPair;
30 
33  bool withOwner, bool withInterface );
34 
37 {
38 public:
39 
42 
44  DtRtiConnectionInfo( const MAKRti::DtString& hostname, int udpPort,
45  int tcpPort, const MAKRti::DtInetAddr& bestEffortAddress,
46  const MAKRti::DtInetAddr& interfaceAddr, int forwarderPort );
47  DtRtiConnectionInfo( const MAKRti::DtInetAddr& reliableAddress,
48  int udpPort, int tcpPort, const MAKRti::DtInetAddr& bestEffortAddress,
49  const MAKRti::DtInetAddr& interfaceAddr, int forwarderPort );
50 
52  DtRtiConnectionInfo( const MAKRti::DtInetAddr& bestEffortAddress, int port,
53  const MAKRti::DtInetAddr& interfaceAddr );
54 
56  DtRtiConnectionInfo( const DtHostNameAddress& host, int udpPort,
57  int tcpPort, const MAKRti::DtInetAddr& bestEffortAddress,
58  bool useRtiexec, const MAKRti::DtInetAddr& interfaceAddr,
59  int forwarderPort );
60 
62  virtual ~DtRtiConnectionInfo();
63 
71  virtual bool operator<(const DtRtiConnectionInfo& other) const;
72 
74  virtual bool operator==(const DtRtiConnectionInfo& other) const;
75 
77  virtual bool operator!=(const DtRtiConnectionInfo& other) const;
78 
81  virtual DtRtiConnectionInfo& operator=(const DtRtiConnectionInfo& other);
82 
85  virtual bool isEquivalentHost( const DtRtiConnectionInfo& other ) const;
86 
89  virtual bool isEquivalentHostAllInterfaces(const DtRtiConnectionInfo& other) const;
90 
93  virtual bool isLocalHost() const;
94 
97  virtual bool conflictsWith( const DtRtiConnectionInfo& other,
98  MAKRti::DtString& reason ) const;
99 
101  virtual MAKRti::DtString defaultName() const;
102 
104  virtual MAKRti::DtString description() const;
105 
107  virtual const MAKRti::DtInetAddr& reliableIp() const;
108 
110  virtual void setReliableIp( const MAKRti::DtInetAddr& ip );
111 
113  virtual const MAKRti::DtInetAddr& bestEffortIp() const;
114 
116  virtual void setBestEffortIp( const MAKRti::DtInetAddr& ip );
117 
119  virtual int udpPort() const;
120 
122  virtual void setUdpPort( int port );
123 
125  virtual int tcpPort() const;
126 
128  virtual void setTcpPort( int port );
129 
131  virtual MAKRti::DtString hostName() const;
132 
134  virtual void setHostName( const MAKRti::DtString& host );
135 
137  virtual const MAKRti::DtInetAddr& networkInterfaceAddr() const;
138 
140  virtual void setNetworkInterfaceAddr( const MAKRti::DtInetAddr& addr );
141 
143  virtual bool useRtiexec() const;
144 
146  virtual void setUseRtiexec( bool useExec );
147 
149  virtual int forwarderPort() const;
150 
152  virtual void setForwarderPort( int port );
153 
155  virtual bool isValid() const;
156 
157 public:
158 
160  static const DtRtiConnectionInfo& invalidConn();
161 
165  static void setLocalIpAddresses( bool reset = false );
166 
168  static const std::set< MAKRti::DtInetAddr >& localIpAddresses();
169 
171  static bool localSupportsIPv4(bool reset = false);
172 
174  static bool localSupportsIPv6(bool reset = false);
175 
177  static MAKRti::DtString constructConnName( const DtHostNameAddress& hostname,
178  int udpPort, int tcpPort, const MAKRti::DtInetAddr& bestEffortAddress,
179  bool useRtiexec, const MAKRti::DtInetAddr& interfaceAddr,
180  int forwarderPort );
181 
183  static MAKRti::DtString constructConnDescription( const DtHostNameAddress& hostname,
184  int udpPort, int tcpPort, const MAKRti::DtInetAddr& bestEffortAddress,
185  bool useRtiexec, const MAKRti::DtInetAddr& interfaceAddr,
186  int forwarderPort );
187 
189 
190  static const MAKRti::DtInetAddr& defaultReliableIp();
191  static const MAKRti::DtInetAddr& defaultBestEffortIp();
192  static int defaultLightweightPort();
193  static int defaultRtiexecPort();
194  static const MAKRti::DtString& defaultHostName();
195  static const MAKRti::DtInetAddr& defaultNetworkInterfaceAddr();
196  static int defaultForwarderPort();
198 
199 protected:
200 
202  MAKRti::DtInetAddr myBestEffortIp;
203 
206 
209 
212 
214  MAKRti::DtInetAddr myNetworkInterfaceAddr;
215 
218 
221 
228  static std::set< MAKRti::DtInetAddr > &theLocalIpAddresses();
229 
230 
231 };
232 
233 inline const std::set< MAKRti::DtInetAddr >& DtRtiConnectionInfo::localIpAddresses()
234 {
235  return theLocalIpAddresses();
236 }
237 
238 
239 
240 
241 #endif

Document ID: Generated on Fri Mar 14 19:08:55 EDT 2014 from SVN revision 137085
Copyright © 2005-2014 VT MÄK Inc. All Rights Reserved (www.mak.com)