MAK RTIspy API Documentation for HLA 1.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
assistantInfoMsg.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2008 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 /*********************************************************************
6 ** $RCSfile: assistantInfoMsg.h,v $ $Revision: 1.25 $ $State: Exp $
7 *********************************************************************/
8 
9 #ifndef DtAssistantInfoMsg_H_
10 #define DtAssistantInfoMsg_H_
11 
14 
15 #include <vlutil/vlString.h>
16 #include <vlutil/vlUtil.h>
17 #include <rtiUtil.h>
18 
20 #include "assistantMsg.h"
22 
23 class DtAssistantInfoMsg;
24 class DtRtiAssistantPeer;
27 
28 typedef void (*DtAssistantInfoCb)(const DtAssistantInfoMsg& inter, void* usr);
29 
34 {
35 public:
36 
38  DtAssistantInfoMsg(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
39 
41  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
42 
44  virtual ~DtAssistantInfoMsg();
45 
47  virtual DtAssistantMsg* clone(bool copy = true) const;
48 
50  virtual void setRtiexecsAndForwarders(
51  const DtRtiConnectionAndConfiguration& rtiexecsAndForwarders );
52 
55  virtual void getRtiexecsAndForwarders(
56  DtRtiConnectionAndConfiguration& rtiexecsAndForwarders,
57  const MAKRti::DtInetAddr& interfaceReceivedOn, bool ignoreInterface=false ) const;
58 
60  virtual void setInterfaces(const DtInetAddrSet& localInterAddrs);
61 
63  virtual void getInterfaces(DtInetAddrSet& localInterAddrs) const;
64 
67  virtual bool isRemoval() const;
68  virtual void setRemoval( bool val );
69 
72  virtual bool remoteCmdsAccepted() const;
73  virtual void setRemoteCmdsAccepted( bool val );
74 
76  virtual unsigned int assistantInfoMemoryPeriod() const;
77  virtual void setAssistantInfoMemoryPeriod(unsigned int interval);
78 
80  virtual void setAssistantUuid(const DtAssistantUuid& assistantUuid);
81  virtual const DtAssistantUuid& assistantUuid() const;
82 
83  static void setSenderUuid(const DtAssistantUuid senderUuid);
84 
86  virtual void printData() const;
87 
88 public:
89 
91  static DtAssistantMsg* create(const DtNetAssistantMsgHeader* initial,
92  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
93 
94  static DtAssistantMsg* create(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
95 
98  static void addCallback(DtRtiAssistantPeer* conn,
99  DtAssistantInfoCb cb, void* usr);
100  static void removeCallback(DtRtiAssistantPeer* conn,
101  DtAssistantInfoCb cb, void* usr);
102 
103 protected:
104 
106  virtual DtNetAssistantInfoMsg* netAssistantInfoMsg();
107  virtual const DtNetAssistantInfoMsg* netAssistantInfoMsg() const;
108 
111 
113  virtual int minSize() const;
114 
116  virtual void setLocalIpv4InterfaceCount( unsigned long count );
117  virtual unsigned long localIpv4InterfaceCount() const;
118 
120  virtual void setLocalIpv6InterfaceCount( unsigned long count );
121  virtual unsigned long localIpv6InterfaceCount() const;
122 
124  virtual void setRtiexecForwarderCount( unsigned long count );
125  virtual unsigned long rtiexecForwarderCount() const;
126 
128  virtual const DtNetU128* localInterfaceAddressPtr() const;
129  virtual DtNetU128* localInterfaceAddressPtr();
130 
132  virtual const DtNetU128* tcpAddressPtr() const;
133  virtual DtNetU128* tcpAddressPtr();
134 
136  virtual const DtNetU128* udpAddressPtr() const;
137  virtual DtNetU128* udpAddressPtr();
138 
140  virtual const DtNetU128* udpIntferfacePtr() const;
141  virtual DtNetU128* udpIntferfacePtr();
142 
144  virtual const DtNetU32* addressFamiliesPtr() const;
145  virtual DtNetU32* addressFamiliesPtr();
146 
148  virtual const DtNetU32* rtiexecCompIdsPtr() const;
149  virtual DtNetU32* rtiexecCompIdsPtr();
150 
152  virtual const DtNetU32* forwarderCompIdsPtr() const;
153  virtual DtNetU32* forwarderCompIdsPtr();
154 
156  virtual const DtNetU16* tcpPortsPtr() const;
157  virtual DtNetU16* tcpPortsPtr();
158 
160  virtual const DtNetU16* udpPortsPtr() const;
161  virtual DtNetU16* udpPortsPtr();
162 
164  virtual const DtNetU16* forwarderPortsPtr() const;
165  virtual DtNetU16* forwarderPortsPtr();
166 
168  virtual const DtNetU8* fullCompliancePtr() const;
169  virtual DtNetU8* fullCompliancePtr();
170 
173  virtual const DtNetU8* rtiexecForwarderFlagPtr() const;
174  virtual DtNetU8* rtiexecForwarderFlagPtr();
175 
177  virtual void setRtiexecForwarderNamesSize( unsigned long size );
178  virtual unsigned long rtiexecForwarderNamesSize() const;
179 
181  virtual const char* rtiexecForwarderNamesPtr() const;
182  virtual char* rtiexecForwarderNamesPtr();
183 
185  virtual void setHostNamesSize( unsigned long size );
186  virtual unsigned long hostNamesSize() const;
187 
189  virtual const char* hostNamesPtr() const;
190  virtual char* hostNamesPtr();
191 
193  virtual void setOwnerHostSize( unsigned size );
194  virtual unsigned ownerHostSize() const;
195 
197  virtual const char* ownerHostsPtr() const;
198  virtual char* ownerHostsPtr();
199 
200  std::map<DtRtiConnectionInfo, DtRtiConnectionConfigurationInfo> myConfigurationsByConnectionMap;
201 
203  static const unsigned theRtiexecFlag;
204 
206  static const unsigned theForwarderFlag;
207 
210  static const unsigned theForwarderHasRtiexecFlag;
211 
214  static const unsigned theForwarderUsesRoutesFileFlag;
215 
218 };
219 
220 #endif // DtAssistantInfoMsg_H_
221 

Document ID: Generated on Fri Sep 27 00:57:56 EDT 2019 from SVN revision 201708
Copyright © 2005-2018 VT MÄK Inc. All Rights Reserved (www.mak.com)