MAK RTIspy API Documentation for HLA 1.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
assistantFederationStateMsg.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2013 VT MAK
3 ** All rights reserved.
4 *********************************************************************/
5 
6 #ifndef DtAssistantFederationStateMsg_H_
7 #define DtAssistantFederationStateMsg_H_
8 
12 
13 #include <vlutil/vlString.h>
14 #include <vlutil/vlUtil.h>
15 
16 #include "assistantMsg.h"
17 #include "federationInfo.h"
18 
19 class DtRtiAssistantPeer;
24 
25 typedef void (*DtAssistantFederationStateCb)(const DtAssistantFederationStateMsg& inter, void* usr);
26 
32 {
33 public:
34 
36  DtAssistantFederationStateMsg(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 bool noFederations() const;
49 
51  virtual void setNoFederations(bool val);
52 
54  virtual unsigned int federationHandle() const;
55 
57  virtual void setFederationHandle( unsigned int handle );
58 
60  virtual bool isTestEnabled() const;
61 
63  virtual void setIsTestEnabled( bool enabled );
64 
66  virtual bool isRemoval() const;
67 
69  virtual void setIsRemoval( bool remove );
70 
72  virtual MAKRti::DtString federationName() const;
73 
75  virtual void setFederationName( const MAKRti::DtString& name );
76 
78  virtual MAKRti::DtString fedFileName() const;
79 
81  virtual void setFedFileName( const MAKRti::DtString& name );
82 
84  virtual void getFomModules(std::list<MAKRti::DtString>& fomModules ) const;
85 
87  virtual void setFomModules( const std::list<MAKRti::DtString>& fomModules );
88 
92  virtual void getUpdatedFederateStates( DtFederateInfoByHandleMap& federates,
93  const MAKRti::DtString& federation = MAKRti::DtString::nullString(),
94  std::set<unsigned>* notUpdated = 0 ) const;
95 
97  virtual void setFederateStates( const DtFederateInfoByHandleMap& federates );
98 
101  virtual void getConnection( DtRtiConnectionInfo& conn,
102  const MAKRti::DtInetAddr& address,
103  const MAKRti::DtInetAddr& publicAddress) const;
104 
106  virtual void setConnection( const DtRtiConnectionInfo& conn );
107 
109  virtual void printData() const;
110 
111 public:
112 
114  static DtAssistantMsg* create(const DtNetAssistantMsgHeader* initial,
115  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
116 
117  static DtAssistantMsg* create(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
118 
121  static void addCallback(DtRtiAssistantServer* conn,
122  DtAssistantFederationStateCb cb, void* usr);
123  static void removeCallback(DtRtiAssistantServer* conn,
124  DtAssistantFederationStateCb cb, void* usr);
125 
128  static void addCallback(DtRtiAssistantPeer* conn,
129  DtAssistantFederationStateCb cb, void* usr);
130  static void removeCallback(DtRtiAssistantPeer* conn,
131  DtAssistantFederationStateCb cb, void* usr);
132 
133 protected:
134 
136  virtual DtNetAssistantFederationStateMsg* netAssistantFederationStateMsg();
137  virtual const DtNetAssistantFederationStateMsg* netAssistantFederationStateMsg() const;
138 
141 
143  virtual int minSize() const;
144 
146  virtual void setAddressFamily( DtInetUtils::DtInetAddrFamily fam );
147  virtual DtInetUtils::DtInetAddrFamily addressFamily() const;
148 
150  virtual void setFederationNameSize( unsigned size );
151  virtual unsigned federationNameSize() const;
152 
154  virtual void setFedFileNameSize( unsigned size );
155  virtual unsigned fedFileNameSize() const;
156 
158  virtual void setFomModulesSize( unsigned size );
159  virtual unsigned fomModulesSize() const;
160 
162  virtual void setNumFederates( unsigned num );
163  virtual unsigned numFederates() const;
164 
166  virtual void setFederateTypesSize( unsigned size );
167  virtual unsigned federateTypesSize() const;
168 
170  virtual void setFederateNamesSize( unsigned size );
171  virtual unsigned federateNamesSize() const;
172 
174  virtual void setFederateHostNamesSize( unsigned size );
175  virtual unsigned federateHostNamesSize() const;
176 
178  virtual void setLbtsStringsSize( unsigned size );
179  virtual unsigned lbtsStringsSize() const;
180 
182  virtual void setLookAheadStringsSize( unsigned size );
183  virtual unsigned lookAheadStringsSize() const;
184 
186  virtual void setTimeStringsSize( unsigned size );
187  virtual unsigned timeStringsSize() const;
188 
190  virtual DtNetU32* federateConnIdsPtr();
191  virtual const DtNetU32* federateConnIdsPtr() const;
192 
194  virtual DtNetU32* federateHdlsPtr();
195  virtual const DtNetU32* federateHdlsPtr() const;
196 
198  virtual DtNetU32* federateAstntCompIdsPtr();
199  virtual const DtNetU32* federateAstntCompIdsPtr() const;
200 
202  virtual DtNetU128* federateHostAddrsPtr();
203  virtual const DtNetU128* federateHostAddrsPtr() const;
204 
207  virtual DtNetU32* federateWebServerAddrsPtr();
208  virtual const DtNetU32* federateWebServerAddrsPtr() const;
209 
211  virtual DtNetU16* federateWebServerPortsPtr();
212  virtual const DtNetU16* federateWebServerPortsPtr() const;
213 
216  virtual DtNetU16* federateNumInitiatedTestsPtr();
217  virtual const DtNetU16* federateNumInitiatedTestsPtr() const;
218 
221  virtual DtNetU16* federateNumTestReportsPtr();
222  virtual const DtNetU16* federateNumTestReportsPtr() const;
223 
225  virtual DtNetU8* federateTestEnablePtr();
226  virtual const DtNetU8* federateTestEnablePtr() const;
227 
230  virtual DtNetU8* federateTestInProgressPtr();
231  virtual const DtNetU8* federateTestInProgressPtr() const;
232 
235  virtual DtNetU8* federateContTestPtr();
236  virtual const DtNetU8* federateContTestPtr() const;
237 
239  virtual DtNetU8* reconnectingPtr();
240  virtual const DtNetU8* reconnectingPtr() const;
241 
243  virtual DtNetU8* disconnectedPtr();
244  virtual const DtNetU8* disconnectedPtr() const;
245 
247  virtual DtNetU8* regulatingPtr();
248  virtual const DtNetU8* regulatingPtr() const;
249 
251  virtual DtNetU8* constrainedPtr();
252  virtual const DtNetU8* constrainedPtr() const;
253 
255  virtual DtNetU8* hlaVersionsPtr();
256  virtual const DtNetU8* hlaVersionsPtr() const;
257 
259  virtual const char* federationNamePtr() const;
260  virtual char* federationNamePtr();
261 
263  virtual const char* fedFileNamePtr() const;
264  virtual char* fedFileNamePtr();
265 
267  virtual const char* fomModulesPtr() const;
268  virtual char* fomModulesPtr();
269 
271  virtual const char* federateTypesPtr() const;
272  virtual char* federateTypesPtr();
273 
275  virtual const char* federateNamesPtr() const;
276  virtual char* federateNamesPtr();
277 
279  virtual const char* federateHostNamesPtr() const;
280  virtual char* federateHostNamesPtr();
281 
283  virtual const char* lbtsStringsPtr() const;
284  virtual char* lbtsStringsPtr();
285 
287  virtual const char* lookAheadStringsPtr() const;
288  virtual char* lookAheadStringsPtr();
289 
291  virtual const char* timeStringsPtr() const;
292  virtual char* timeStringsPtr();
293 };
294 
295 #endif
This file contains the declaration of DtAssistantFederationInfo.
The DtAssistantFederationStateMsg defines a wrapper for the RTI Assistant federation state message se...
Definition: assistantFederationStateMsg.h:31
Network representation for the RTI Assistant federation state message that contains information on th...
Definition: netAssistantFederationStateMsg.h:26
Definition: netAssistantMsgHdr.h:26
DtAssistantMsgKind
Definition: assistantMsg.h:52
Base class for assistant Messages.
Definition: assistantMsg.h:152
virtual DtAssistantMsgKind internalMsgKind()=0
#define DT_DLL_ASSISTANT
_WIN32
Definition: rtiMsConfig.h:121
void(* DtAssistantFederationStateCb)(const DtAssistantFederationStateMsg &inter, void *usr)
Definition: assistantFederationStateMsg.h:25
std::map< int, DtAssistantFederateInfo > DtFederateInfoByHandleMap
Map of federate handles to federate info.
Definition: federationInfo.h:28
DtRtiAssistantPeer manages the sharing of information between one Assistant to other Assistants using...
Definition: rtiAssistantPeer.h:82
Manages the server connections of the RTI Assistant.
Definition: rtiAssistantServer.h:45
virtual DtAssistantMsg * clone(bool copy=true) const =0
Return a copy/empty object of the same type as this.
virtual void printData() const
Stores the information on an RTI connection known by the Assistant.
Definition: assistantConnectionInfo.h:36

Document ID: Generated on Thu May 11 15:55:32 EDT 2023 from SVN revision 254743
Copyright © 2005-2020 MAK Technologies Inc. All Rights Reserved (www.mak.com)