MAK RTIspy API Documentation for HLA Evolved
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>& forwarderConnectionHostNames,
75  std::vector<MAKRti::DtInetAddr>& forwarderConnectionAddrs,
76  std::vector<int>& forwarderConnectionPorts,
77  unsigned int& numExecConns,
78  unsigned int& numForwarderClientConns,
79  std::vector<MAKRti::DtString>& clientConnectionNames,
80  std::vector<MAKRti::DtString>& clientConnectionTypeNames,
81  std::vector<MAKRti::DtString>& clientConnectionProcessNames,
82  std::vector<MAKRti::DtString>& clientConnectionPIDs,
83  std::vector<MAKRti::DtString>& clientConnectionCommandArgs,
84  std::vector<MAKRti::DtString>& clientConnectionHostNames,
85  std::vector<MAKRti::DtInetAddr>& clientConnectionAddrs,
86  std::vector<MAKRti::DtString>& clientConnectionFederationNames,
87  std::vector<int>& clientFederateHandles,
88  std::vector<unsigned>& clientConnIds,
89  std::vector<int>& clientConnectionQueueStatus,
90  std::vector<DtHlaVersionId>& clientHlaVersions,
91  std::vector<DtAssistantMsgFederateStatus>& clientFederateStat) const;
92 
93  bool setAllData(unsigned int numForwarderToForwarderConns,
94  const std::vector<MAKRti::DtString>& forwarderIdentifiers,
95  const std::vector<MAKRti::DtString>& forwarderConnectionHostNames,
96  const std::vector<MAKRti::DtInetAddr>& forwarderConnectionAddrs,
97  const std::vector<int>& forwarderConnectionPorts,
98  unsigned int numExecConns,
99  unsigned int numForwarderClientConns,
100  const std::vector<MAKRti::DtString>& clientConnectionNames,
101  const std::vector<MAKRti::DtString>& clientConnectionTypeNames,
102  const std::vector<MAKRti::DtString>& clientConnectionProcessNames,
103  const std::vector<MAKRti::DtString>& clientConnectionPIDs,
104  const std::vector<MAKRti::DtString>& clientConnectionCommandArgs,
105  const std::vector<MAKRti::DtString>& clientConnectionHostNames,
106  const std::vector<MAKRti::DtInetAddr>& clientConnectionAddrs,
107  const std::vector<MAKRti::DtString>& clientConnectionFederationNames,
108  const std::vector<int>& clientFederateHandles,
109  const std::vector<unsigned>& clientConnIds,
110  const std::vector<int>& clientConnectionQueueStatus,
111  const std::vector<DtHlaVersionId>& clientHlaVersions,
112  const std::vector<DtAssistantMsgFederateStatus>& clientConnectionFederateStatus );
113 
114  MAKRti::DtString toString() const;
115 
116  virtual unsigned int numForwarderToForwarderConnections() const;
117  virtual unsigned int numClientConnectionsThatAreExecs() const;
118  virtual unsigned int numClientConnections() const;
119 
120 protected:
121 
123  virtual DtNetAssistantForwarderStateMsg* netAssistantForwarderStateMsg();
124  virtual const DtNetAssistantForwarderStateMsg* netAssistantForwarderStateMsg() const;
125 
128 
130  virtual int minSize() const;
131 
132  virtual void setNumForwarderToForwarderConnections(unsigned int num);
133  virtual void setNumClientConnectionsThatAreExecs(unsigned int num);
134  virtual void setNumClientConnections(unsigned int num);
135 
137  virtual DtInetUtils::DtInetAddrFamily addressFamily() const;
138  virtual void setAddressFamily(DtInetUtils::DtInetAddrFamily fam);
139 
140 
142  virtual void forwarderIds(std::vector<MAKRti::DtString>& ids) const;
143  virtual bool setForwarderIds(const std::vector<MAKRti::DtString>& ids);
144 
146  virtual void forwarderHostNames(std::vector<MAKRti::DtString>& names) const;
147  virtual bool setForwarderHostNames(const std::vector<MAKRti::DtString>& names);
148 
150  virtual void forwarderAddrs(std::vector<MAKRti::DtInetAddr>& addrs) const;
151  virtual bool setForwarderAddrs(const std::vector<MAKRti::DtInetAddr>& addrs);
152 
154  virtual void forwarderPorts(std::vector<int>& ports) const;
155  virtual bool setForwarderPorts(const std::vector<int>& ports);
156 
158  virtual void clientNames(std::vector<MAKRti::DtString>& names) const;
159  virtual bool setClientNames(const std::vector<MAKRti::DtString>& names);
160 
162  virtual void clientTypes(std::vector<MAKRti::DtString>& strTypes ) const;
163  virtual bool setClientTypes(const std::vector<MAKRti::DtString>& strTypes);
164 
166  virtual void clientProcessNames(std::vector<MAKRti::DtString>& processNames ) const;
167  virtual bool setClientProcessNames(const std::vector<MAKRti::DtString>& processNames);
168 
170  virtual void clientPIDs(std::vector<MAKRti::DtString>& pids ) const;
171  virtual bool setClientPIDs( const std::vector<MAKRti::DtString>& pids );
172 
174  virtual void clientCommandArgs(std::vector<MAKRti::DtString>& commandArgs ) const;
175  virtual bool setClientCommandArgs(const std::vector<MAKRti::DtString>& commandArgs );
176 
178  virtual void clientHostNames(std::vector<MAKRti::DtString>& names) const;
179  virtual bool setClientHostNames(const std::vector<MAKRti::DtString>& names);
180 
182  virtual void clientFederationNames(std::vector<MAKRti::DtString>& names) const;
183  virtual bool setClientFederationNames(const std::vector<MAKRti::DtString>& names);
184 
186  virtual void clientAddrs(std::vector<MAKRti::DtInetAddr>& addrs) const;
187  virtual bool setClientAddrs(const std::vector<MAKRti::DtInetAddr>& addrs);
188 
190  virtual void clientFederateHandles(std::vector<int>& handles) const;
191  virtual bool setClientFederateHandles(const std::vector<int>& handles);
192 
194  virtual void clientConnectionIds(std::vector<unsigned>& ids) const;
195  virtual bool setClientConnectionIds(const std::vector<unsigned>& ids);
196 
198  virtual void clientConnectionQueueStatus(std::vector<int>& queueStatus) const;
199  virtual bool setClientConnectionQueueStatus(const std::vector<int>& queueStatus);
200 
202  virtual void clientHlaVersions(std::vector<DtHlaVersionId>& hlaVersions) const;
203  virtual bool setClientHlaVersions(const std::vector<DtHlaVersionId>& hlaVersions);
204 
206  virtual void clientFederateStatus(std::vector<DtAssistantMsgFederateStatus>& federateStatus) const;
207  virtual bool setClientFederateStatus(const std::vector<DtAssistantMsgFederateStatus>& federateStatus);
208 
210  virtual unsigned int forwarderIdsSize() const;
211  virtual void setForwarderIdsSize(unsigned int size);
213  virtual const char* forwarderIdsPtr() const;
214  virtual char* forwarderIdsPtr();
215 
217  virtual unsigned int forwarderHostNamesSize() const;
218  virtual void setForwarderHostNamesSize(unsigned int size);
220  virtual const char* forwarderHostNamesPtr() const;
221  virtual char* forwarderHostNamesPtr();
222 
224  virtual const DtNetU128* forwarderAddrsPtr() const;
225  virtual DtNetU128* forwarderAddrsPtr();
226 
228  virtual const DtNetU16* forwarderPortsPtr() const;
229  virtual DtNetU16* forwarderPortsPtr();
230 
232  virtual unsigned int clientNamesSize() const;
233  virtual void setClientNamesSize(unsigned int size);
235  virtual const char* clientNamesPtr() const;
236  virtual char* clientNamesPtr();
237 
239  virtual unsigned int clientTypesSize() const;
240  virtual void setClientTypesSize(unsigned int size);
242  virtual const char* clientTypesPtr() const;
243  virtual char* clientTypesPtr();
244 
246  virtual unsigned int clientProcessNamesSize() const;
247  virtual void setClientProcessNamesSize(unsigned int size);
249  virtual const char* clientProcessNamesPtr() const;
250  virtual char* clientProcessNamesPtr();
251 
253  virtual unsigned int clientPIDsSize() const;
254  virtual void setClientPIDsSize(unsigned int size);
256  virtual const char* clientPIDsPtr() const;
257  virtual char* clientPIDsPtr();
258 
260  virtual unsigned int clientCommandArgsSize() const;
261  virtual void setClientCommandArgsSize(unsigned int size);
263  virtual const char* clientCommandArgsPtr() const;
264  virtual char* clientCommandArgsPtr();
265 
267  virtual unsigned int clientHostNamesSize() const;
268  virtual void setClientHostNamesSize(unsigned int size);
270  virtual const char* clientHostNamesPtr() const;
271  virtual char* clientHostNamesPtr();
272 
274  virtual unsigned int clientFederationNamesSize() const;
275  virtual void setClientFederationNamesSize(unsigned int size);
277  virtual const char* clientFederationNamesPtr() const;
278  virtual char* clientFederationNamesPtr();
279 
281  virtual const DtNetU128* clientAddrsPtr() const;
282  virtual DtNetU128* clientAddrsPtr();
283 
285  virtual const DtNetU16* clientFederateHandlesPtr() const;
286  virtual DtNetU16* clientFederateHandlesPtr();
287 
289  virtual const DtNetU32* clientConnectionIdsPtr() const;
290  virtual DtNetU32* clientConnectionIdsPtr();
291 
293  const DtNetU16* clientConnectionQueueStatusPtr() const;
294  DtNetU16* clientConnectionQueueStatusPtr();
295 
297  const DtNetU8* clientHlaVersionsPtr() const;
298  DtNetU8* clientHlaVersionsPtr();
299 
300  // Get the pointer to the client federate status data.
301  virtual const DtNetU8* clientFederateStatusPtr() const;
302  virtual DtNetU8* clientFederateStatusPtr();
303 };
304 
305 #endif

Document ID: Generated on Tue May 7 16:26:47 EDT 2013 from SVN revision 126903
Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (www.mak.com)