MAK RTIspy API Documentation for HLA 1.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
assistantForwarderStateMsg.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2013 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 
6 #ifndef DtAssistantForwarderStateMsg_H_
7 #define DtAssistantForwarderStateMsg_H_
8 
12 
13 #include <vlutil/vlString.h>
14 #include <vlutil/vlUtil.h>
15 
16 #include "assistantMsg.h"
17 #include "federationInfo.h"
19 #include "rtiVersion.h"
20 
21 class DtRtiAssistantPeer;
24 
25 typedef void (*DtAssistantForwarderStateCb)(const DtAssistantForwarderStateMsg& inter, void* usr);
26 
32 {
33 public:
34 
36  DtAssistantForwarderStateMsg(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
37 
39  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
40 
43 
45  virtual DtAssistantMsg* clone(bool copy = true) const;
46 
48  virtual void printData() const;
49 
50 public:
51 
53  static DtAssistantMsg* create(const DtNetAssistantMsgHeader* initial,
54  MAKRti::DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
55 
56  static DtAssistantMsg* create(MAKRti::DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
57 
60  static void addCallback(DtRtiAssistantServer* conn,
61  DtAssistantForwarderStateCb cb, void* usr);
62  static void removeCallback(DtRtiAssistantServer* conn,
63  DtAssistantForwarderStateCb cb, void* usr);
64 
67  static void addCallback(DtRtiAssistantPeer* conn,
68  DtAssistantForwarderStateCb cb, void* usr);
69  static void removeCallback(DtRtiAssistantPeer* conn,
70  DtAssistantForwarderStateCb cb, void* usr);
71 
72  void getAllData(unsigned int& numForwarderToForwarderConns,
73  std::vector<MAKRti::DtString>& forwarderIdentifiers,
74  std::vector<MAKRti::DtString>& forwarderConnectionNames,
75  std::vector<MAKRti::DtString>& forwarderConnectionHostNames,
76  std::vector< std::pair< MAKRti::DtInetAddr, MAKRti::DtInetAddr > >& forwarderConnectionAddrs,
77  std::vector<int>& forwarderConnectionPorts,
78  unsigned int& numExecConns,
79  unsigned int& numForwarderClientConns,
80  std::vector<MAKRti::DtString>& clientConnectionNames,
81  std::vector<MAKRti::DtString>& clientConnectionTypeNames,
82  std::vector<MAKRti::DtString>& clientConnectionProcessNames,
83  std::vector<MAKRti::DtString>& clientConnectionPIDs,
84  std::vector<MAKRti::DtString>& clientConnectionCommandArgs,
85  std::vector<MAKRti::DtString>& clientConnectionHostNames,
86  std::vector<MAKRti::DtInetAddr>& clientConnectionAddrs,
87  std::vector<MAKRti::DtString>& clientConnectionFederationNames,
88  std::vector<int>& clientFederateHandles,
89  std::vector<unsigned>& clientConnIds,
90  std::vector<int>& clientConnectionQueueStatus,
91  std::vector<DtHlaVersionId>& clientHlaVersions,
92  std::vector<DtAssistantMsgFederateStatus>& clientFederateStat) const;
93 
94  bool setAllData(unsigned int numForwarderToForwarderConns,
95  const std::vector<MAKRti::DtString>& forwarderIdentifiers,
96  const std::vector<MAKRti::DtString>& forwarderConnectionNames,
97  const std::vector<MAKRti::DtString>& forwarderConnectionHostNames,
98  const std::vector< std::pair< MAKRti::DtInetAddr, MAKRti::DtInetAddr > >& forwarderConnectionAddrs,
99  const std::vector<int>& forwarderConnectionPorts,
100  unsigned int numExecConns,
101  unsigned int numForwarderClientConns,
102  const std::vector<MAKRti::DtString>& clientConnectionNames,
103  const std::vector<MAKRti::DtString>& clientConnectionTypeNames,
104  const std::vector<MAKRti::DtString>& clientConnectionProcessNames,
105  const std::vector<MAKRti::DtString>& clientConnectionPIDs,
106  const std::vector<MAKRti::DtString>& clientConnectionCommandArgs,
107  const std::vector<MAKRti::DtString>& clientConnectionHostNames,
108  const std::vector<MAKRti::DtInetAddr>& clientConnectionAddrs,
109  const std::vector<MAKRti::DtString>& clientConnectionFederationNames,
110  const std::vector<int>& clientFederateHandles,
111  const std::vector<unsigned>& clientConnIds,
112  const std::vector<int>& clientConnectionQueueStatus,
113  const std::vector<DtHlaVersionId>& clientHlaVersions,
114  const std::vector<DtAssistantMsgFederateStatus>& clientConnectionFederateStatus );
115 
116  MAKRti::DtString toString() const;
117 
118  virtual unsigned int numForwarderToForwarderConnections() const;
119  virtual unsigned int numClientConnectionsThatAreExecs() const;
120  virtual unsigned int numClientConnections() const;
121 
122 protected:
123 
125  virtual DtNetAssistantForwarderStateMsg* netAssistantForwarderStateMsg();
126  virtual const DtNetAssistantForwarderStateMsg* netAssistantForwarderStateMsg() const;
127 
130 
132  virtual int minSize() const;
133 
134  virtual void setNumForwarderToForwarderConnections(unsigned int num);
135  virtual void setNumClientConnectionsThatAreExecs(unsigned int num);
136  virtual void setNumClientConnections(unsigned int num);
137 
139  virtual DtInetUtils::DtInetAddrFamily addressFamily() const;
140  virtual void setAddressFamily(DtInetUtils::DtInetAddrFamily fam);
141 
142 
144  virtual void forwarderIds(std::vector<MAKRti::DtString>& ids) const;
145  virtual bool setForwarderIds(const std::vector<MAKRti::DtString>& ids);
146 
148  virtual void forwarderNames(std::vector<MAKRti::DtString>& names) const;
149  virtual bool setForwarderNames(const std::vector<MAKRti::DtString>& names);
150 
152  virtual void forwarderHostNames(std::vector<MAKRti::DtString>& names) const;
153  virtual bool setForwarderHostNames(const std::vector<MAKRti::DtString>& names);
154 
156  virtual void forwarderAddrs(std::vector< std::pair< DtInetAddr, DtInetAddr > >& addrs) const;
157  virtual bool setForwarderAddrs(const std::vector< std::pair< DtInetAddr, DtInetAddr > >& addrs);
158 
160  virtual void forwarderPorts(std::vector<int>& ports) const;
161  virtual bool setForwarderPorts(const std::vector<int>& ports);
162 
164  virtual void clientNames(std::vector<MAKRti::DtString>& names) const;
165  virtual bool setClientNames(const std::vector<MAKRti::DtString>& names);
166 
168  virtual void clientTypes(std::vector<MAKRti::DtString>& strTypes ) const;
169  virtual bool setClientTypes(const std::vector<MAKRti::DtString>& strTypes);
170 
172  virtual void clientProcessNames(std::vector<MAKRti::DtString>& processNames ) const;
173  virtual bool setClientProcessNames(const std::vector<MAKRti::DtString>& processNames);
174 
176  virtual void clientPIDs(std::vector<MAKRti::DtString>& pids ) const;
177  virtual bool setClientPIDs( const std::vector<MAKRti::DtString>& pids );
178 
180  virtual void clientCommandArgs(std::vector<MAKRti::DtString>& commandArgs ) const;
181  virtual bool setClientCommandArgs(const std::vector<MAKRti::DtString>& commandArgs );
182 
184  virtual void clientHostNames(std::vector<MAKRti::DtString>& names) const;
185  virtual bool setClientHostNames(const std::vector<MAKRti::DtString>& names);
186 
188  virtual void clientFederationNames(std::vector<MAKRti::DtString>& names) const;
189  virtual bool setClientFederationNames(const std::vector<MAKRti::DtString>& names);
190 
192  virtual void clientAddrs(std::vector<MAKRti::DtInetAddr>& addrs) const;
193  virtual bool setClientAddrs(const std::vector<MAKRti::DtInetAddr>& addrs);
194 
196  virtual void clientFederateHandles(std::vector<int>& handles) const;
197  virtual bool setClientFederateHandles(const std::vector<int>& handles);
198 
200  virtual void clientConnectionIds(std::vector<unsigned>& ids) const;
201  virtual bool setClientConnectionIds(const std::vector<unsigned>& ids);
202 
204  virtual void clientConnectionQueueStatus(std::vector<int>& queueStatus) const;
205  virtual bool setClientConnectionQueueStatus(const std::vector<int>& queueStatus);
206 
208  virtual void clientHlaVersions(std::vector<DtHlaVersionId>& hlaVersions) const;
209  virtual bool setClientHlaVersions(const std::vector<DtHlaVersionId>& hlaVersions);
210 
212  virtual void clientFederateStatus(std::vector<DtAssistantMsgFederateStatus>& federateStatus) const;
213  virtual bool setClientFederateStatus(const std::vector<DtAssistantMsgFederateStatus>& federateStatus);
214 
216  virtual unsigned int forwarderIdsSize() const;
217  virtual void setForwarderIdsSize(unsigned int size);
219  virtual const char* forwarderIdsPtr() const;
220  virtual char* forwarderIdsPtr();
221 
223  virtual unsigned int forwarderNamesSize() const;
224  virtual void setForwarderNamesSize(unsigned int size);
226  virtual const char* forwarderNamesPtr() const;
227  virtual char* forwarderNamesPtr();
228 
230  virtual unsigned int forwarderHostNamesSize() const;
231  virtual void setForwarderHostNamesSize(unsigned int size);
233  virtual const char* forwarderHostNamesPtr() const;
234  virtual char* forwarderHostNamesPtr();
235 
237  virtual const DtNetU128* forwarderAddrsPtr() const;
238  virtual DtNetU128* forwarderAddrsPtr();
239 
241  virtual const DtNetU16* forwarderPortsPtr() const;
242  virtual DtNetU16* forwarderPortsPtr();
243 
245  virtual unsigned int clientNamesSize() const;
246  virtual void setClientNamesSize(unsigned int size);
248  virtual const char* clientNamesPtr() const;
249  virtual char* clientNamesPtr();
250 
252  virtual unsigned int clientTypesSize() const;
253  virtual void setClientTypesSize(unsigned int size);
255  virtual const char* clientTypesPtr() const;
256  virtual char* clientTypesPtr();
257 
259  virtual unsigned int clientProcessNamesSize() const;
260  virtual void setClientProcessNamesSize(unsigned int size);
262  virtual const char* clientProcessNamesPtr() const;
263  virtual char* clientProcessNamesPtr();
264 
266  virtual unsigned int clientPIDsSize() const;
267  virtual void setClientPIDsSize(unsigned int size);
269  virtual const char* clientPIDsPtr() const;
270  virtual char* clientPIDsPtr();
271 
273  virtual unsigned int clientCommandArgsSize() const;
274  virtual void setClientCommandArgsSize(unsigned int size);
276  virtual const char* clientCommandArgsPtr() const;
277  virtual char* clientCommandArgsPtr();
278 
280  virtual unsigned int clientHostNamesSize() const;
281  virtual void setClientHostNamesSize(unsigned int size);
283  virtual const char* clientHostNamesPtr() const;
284  virtual char* clientHostNamesPtr();
285 
287  virtual unsigned int clientFederationNamesSize() const;
288  virtual void setClientFederationNamesSize(unsigned int size);
290  virtual const char* clientFederationNamesPtr() const;
291  virtual char* clientFederationNamesPtr();
292 
294  virtual const DtNetU128* clientAddrsPtr() const;
295  virtual DtNetU128* clientAddrsPtr();
296 
298  virtual const DtNetU16* clientFederateHandlesPtr() const;
299  virtual DtNetU16* clientFederateHandlesPtr();
300 
302  virtual const DtNetU32* clientConnectionIdsPtr() const;
303  virtual DtNetU32* clientConnectionIdsPtr();
304 
306  const DtNetU16* clientConnectionQueueStatusPtr() const;
307  DtNetU16* clientConnectionQueueStatusPtr();
308 
310  const DtNetU8* clientHlaVersionsPtr() const;
311  DtNetU8* clientHlaVersionsPtr();
312 
313  // Get the pointer to the client federate status data.
314  virtual const DtNetU8* clientFederateStatusPtr() const;
315  virtual DtNetU8* clientFederateStatusPtr();
316 };
317 
318 #endif

Document ID: Generated on Mon Jul 9 10:30:41 EDT 2018 from SVN revision 190224
Copyright © 2005-2018 VT MÄK Inc. All Rights Reserved (www.mak.com)