VR-Exchange 2.10 API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
rprBrokerInitializer.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2016 MAK Technologies, Inc.
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #pragma once
11 
13 
15 
16 #include <mtl/multiConfigVariable.h>
17 #include <vlutil/vlStringUtil.h>
18 #include <vlutil/vlTime.h>
19 
20 #if DtHLA
21 #include <vl/exerciseConnInitializerHLA.h>
22 #endif
23 
24 #include <set>
25 
26 class DtFomMapper;
27 
28 namespace MAKVrExchange
29 {
30 
31  namespace DtRprBroker
32  {
33 
38  {
39  public:
40 
42  DtRprBrokerInitializer( int argc = 0, char** argv = 0,
43  const char* versionString = "1.0" );
44 
47 
49  virtual ~DtRprBrokerInitializer();
50 
52  DtRprBrokerInitializer& operator = ( const DtRprBrokerInitializer& other );
53 
56  virtual DtRprBrokerInitializer* clone() const;
57 
58  public:
59 
60  virtual DtRprDiscoverableCriteria* discoveryCriteria();
61 
64 
66  virtual void setExecName( const DtString& );
68  virtual DtString execName() const;
69 
71  virtual void setFedFileName( const DtString& );
73  virtual DtString fedFileName() const;
74 
76  virtual void setFederateType( const DtString& );
78  virtual DtString federateType() const;
79 
80 #ifdef DtHLA_1516_EVOLVED
81  virtual void setFederateName( const DtString& );
84  virtual DtString federateName() const;
85 
87  virtual void setLocalSettingsDesignator( const DtString& );
89  virtual DtString localSettingsDesignator() const;
90 #endif
91 
93  virtual void setUseCustomFom( bool );
95  virtual bool useCustomFom() const;
96 
98  virtual void setRprFomVersion( double );
100  virtual double rprFomVersion() const;
101 
103  virtual void setRprFomRevision( int );
105  virtual int rprFomRevision() const;
106 
108  virtual void setFomMapperLibName( const DtString& );
110  virtual DtString fomMapperLibName() const;
111 
113  virtual void setFomMapperInitData( const DtString& );
115  virtual DtString fomMapperInitData() const;
116 
118  virtual void setFomMapper( DtFomMapper* );
120  virtual const DtFomMapper* fomMapper() const;
121 
122 #ifdef DtHLA_1516_EVOLVED
123  virtual void setFomModules( const std::vector<DtString>& );
126  virtual std::vector<DtString> fomModules() const;
127 
129  virtual void setMimModule( const DtString& );
131  virtual DtString mimModule() const;
132 #endif
133 
135  virtual void setUseHlaAdvisories( bool );
137  virtual bool useHlaAdvisories() const;
138 
140 
143 
145  virtual void setFillOutgoingEntityIds( bool );
147  virtual bool fillOutgoingEntityIds() const;
148 
150  virtual void setUsePersistentEntityIds( bool );
152  virtual bool usePersistentEntityIds() const;
153 
155  virtual void setOutgoingSiteId( int );
157  virtual int outgoingSiteId() const;
158 
160  virtual void setOutgoingHostId( int );
162  virtual int outgoingHostId() const;
163 
165  virtual void setPopulateMissingStreamTags( bool );
167  virtual bool populateMissingStreamTags() const;
168 
170  virtual void setUseHlaObjectIdForMarkingText( bool );
172  virtual bool useHlaObjectIdForMarkingText() const;
173 
175  virtual void setUseMarkingTextForHlaObjectId( bool );
177  virtual bool useMarkingTextForHlaObjectId() const;
178 
180  virtual void setUseAbsoluteTimeStamping( bool );
182  virtual bool useAbsoluteTimeStamping() const;
183 
185  virtual void setUsePerfCounter(bool);
187  virtual bool usePerfCounter() const;
188 
190  virtual void setLocationThreshold( double );
192  virtual double locationThreshold() const;
193 
195  virtual void setRotationThreshold( double );
197  virtual double rotationThreshold() const;
198 
200  virtual void setDisableArticulatedParts( bool );
202  virtual bool disableArticulatedParts() const;
203 
205  virtual void setTranslateFom( bool );
207  virtual bool translateFom() const;
208 
210  virtual void setGenericHlaObjectsToTranslate( const std::vector<DtString>& );
212  virtual void addGenericHlaObjectsToTranslate( const DtString& addr );
214  virtual const std::vector<DtString>& genericHlaObjectsToTranslate() const;
215 
217  virtual void setGenericHlaInteractionsToTranslate( const std::vector<DtString>& );
219  virtual void addGenericHlaInteractionsToTranslate( const DtString& addr );
221  virtual const std::vector<DtString>& genericHlaInteractionsToTranslate() const;
222 
224  virtual void setProcessTimeouts( bool );
226  virtual bool processTimeouts() const;
227 
229  virtual void setTimeoutInterval( DtTime );
231  virtual DtTime timeoutInterval() const;
232 
234  virtual void setDiscoveryTimeoutThreshold( int threshold );
236  virtual int discoveryTimeoutThreshold() const;
237 
239  virtual void setDiscoveryTimeoutDuration( DtTime duration );
241  virtual DtTime discoveryTimeoutDuration() const;
242 
244 
247 
249  virtual void setHeartbeat( int );
251  virtual int heartbeat() const;
252 
254  virtual void setHlaMinTickTime( DtTime );
256  virtual DtTime hlaMinTickTime() const;
257 
259  virtual void setHlaMaxTickTime( DtTime );
261  virtual DtTime hlaMaxTickTime() const;
262 
263 #if DtHLA_1516
264 
266  virtual void setHlaNameReservationMinTickTime( DtTime );
268  virtual DtTime hlaNameReservationMinTickTime() const;
269 
271  virtual void setHlaNameReservationMaxTickTime( DtTime );
273  virtual DtTime hlaNameReservationMaxTickTime() const;
274 
276  virtual void setHlaNameReservationNumTicks( int );
278  virtual int hlaNameReservationNumTicks() const;
279 
280 #endif
281 
283 
286 
290  virtual void loadVrlConfigFile( const DtString& fileName );
291 
293  virtual void saveVrlConfigFile( const DtString& filename );
294 
295 #if DtHLA
296  DtVrlApplicationInitializer& vrlApplicationInitializer();
298 #endif
299 
301 
302  protected:
303 
306 
307  DtConfigVariable<DtString> myCmdLineExecName;
308  DtConfigVariable<DtString> myCmdLineFedFileName;
309  DtConfigVariable<DtString> myCmdLineFederateType;
310 #ifdef DtHLA_1516_EVOLVED
311  DtConfigVariable<DtString> myCmdLineFederateName;
312  DtConfigVariable<DtString> myCmdLineLocalSettingsDesignator;
313 #endif
314  DtConfigVariable<bool> myCmdLineUseCustomFom;
315  DtConfigVariable<double> myCmdLineRprFomVersion;
316  DtConfigVariable<int> myCmdLineRprFomRevision;
317  DtConfigVariable<DtString> myCmdLineFomMapperLibName;
318  DtConfigVariable<DtString> myCmdLineFomMapperInitData;
319  DtFomMapper* myFomMapperPointer;
320 #ifdef DtHLA_1516_EVOLVED
321  DtMultiConfigVariable<DtString> myCmdLineFomModules;
322  DtConfigVariable<DtString> myCmdLineMimModule;
323 #endif
324  DtConfigVariable<bool> myUseHlaAdvisories;
325 
327 
330 
331  DtConfigVariable<bool> myFillOutgoingEntityIds;
332  DtConfigVariable<bool> myUsePersistentEntityIds;
333  DtConfigVariable<int> myOutgoingSiteId;
334  DtConfigVariable<int> myOutgoingHostId;
335  DtConfigVariable<bool> myPopulateMissingStreamTags;
336  DtConfigVariable<bool> myUseHlaObjectIdForMarkingText;
337  DtConfigVariable<bool> myUseMarkingTextForHlaObjectId;
338  DtConfigVariable<bool> myUseAbsoluteTimeStamping;
339  DtConfigVariable<bool> myUsePerfCounter;
340  DtConfigVariable<double> myLocationThreshold;
341  DtConfigVariable<double> myRotationThreshold;
342  DtConfigVariable<bool> myDisableArticulatedParts;
343  DtConfigVariable<bool> myUseGenericTranslatorsForWholeFom;
344  DtMultiConfigVariable<DtString> myGenericHlaObjectsToTranslate;
345  DtMultiConfigVariable<DtString> myGenericHlaInteractionsToTranslate;
346  DtConfigVariable<bool> myProcessTimeouts;
347  DtConfigVariable<DtTime> myTimeoutInterval;
348  DtConfigVariable<DtTime> myDiscoveryTimeoutDuration;
349  DtConfigVariable<int> myDiscoveryTimeoutThreshold;
350 
352 
355 
356  DtConfigVariable<int> myHeartbeat;
357  DtConfigVariable<DtTime> myHlaMinTickTime;
358  DtConfigVariable<DtTime> myHlaMaxTickTime;
359 #ifdef DtHLA_1516
360  DtConfigVariable<DtTime> myHlaNameReservationMinTickTime;
361  DtConfigVariable<DtTime> myHlaNameReservationMaxTickTime;
362  DtConfigVariable<int> myHlaNameReservationNumTicks;
363 #endif
364 
366 
368 
371 
372 #if DtHLA
373  DtVrlApplicationInitializer myVrlInit;
376 #endif
377 
378  };
379 
380  }
381 }
DtConfigVariable< int > myOutgoingHostId
Definition: rprBrokerInitializer.h:334
DtMultiConfigVariable< DtString > myGenericHlaInteractionsToTranslate
Definition: rprBrokerInitializer.h:345
DtConfigVariable< DtTime > myDiscoveryTimeoutDuration
Definition: rprBrokerInitializer.h:348
DtConfigVariable< bool > myUseHlaObjectIdForMarkingText
Definition: rprBrokerInitializer.h:336
A class to initialize DtBroker instances.
Definition: brokerInitializer.h:35
DtConfigVariable< bool > myProcessTimeouts
Definition: rprBrokerInitializer.h:346
DtConfigVariable< double > myLocationThreshold
Definition: rprBrokerInitializer.h:340
Contains the DtRprDiscoverableCriteria class declaration.
DtMultiConfigVariable< DtString > myGenericHlaObjectsToTranslate
Definition: rprBrokerInitializer.h:344
DtFomMapper * myFomMapperPointer
Definition: rprBrokerInitializer.h:319
DtConfigVariable< double > myRotationThreshold
Definition: rprBrokerInitializer.h:341
DtConfigVariable< DtString > myCmdLineFederateType
Definition: rprBrokerInitializer.h:309
DtConfigVariable< DtString > myCmdLineFomMapperLibName
Definition: rprBrokerInitializer.h:317
DtConfigVariable< bool > myCmdLineUseCustomFom
Definition: rprBrokerInitializer.h:314
DtConfigVariable< bool > myFillOutgoingEntityIds
Definition: rprBrokerInitializer.h:331
DtConfigVariable< bool > myUsePersistentEntityIds
Definition: rprBrokerInitializer.h:332
DtConfigVariable< bool > myUseAbsoluteTimeStamping
Definition: rprBrokerInitializer.h:338
DtConfigVariable< int > myOutgoingSiteId
Definition: rprBrokerInitializer.h:333
DtConfigVariable< bool > myUsePerfCounter
Definition: rprBrokerInitializer.h:339
DtConfigVariable< DtTime > myHlaMinTickTime
Definition: rprBrokerInitializer.h:357
DtConfigVariable< bool > myPopulateMissingStreamTags
Definition: rprBrokerInitializer.h:335
DtConfigVariable< bool > myUseGenericTranslatorsForWholeFom
Definition: rprBrokerInitializer.h:343
DtConfigVariable< bool > myUseMarkingTextForHlaObjectId
Definition: rprBrokerInitializer.h:337
Contains the DtBrokerInitializer class declaration.
DtVariableGroup myDiscoverableCriteriaGroup
Definition: rprBrokerInitializer.h:367
DtConfigVariable< int > myDiscoveryTimeoutThreshold
Definition: rprBrokerInitializer.h:349
DtConfigVariable< bool > myDisableArticulatedParts
Definition: rprBrokerInitializer.h:342
DtConfigVariable< DtString > myCmdLineFedFileName
Definition: rprBrokerInitializer.h:308
DtRprDiscoverableCriteria * myDiscoverableCriteria
Helper class that manages discoverable criteria.
Definition: rprBrokerInitializer.h:370
DtConfigVariable< DtTime > myTimeoutInterval
Definition: rprBrokerInitializer.h:347
DtConfigVariable< bool > myUseHlaAdvisories
Definition: rprBrokerInitializer.h:324
#define DT_DLL_RPRBROKER
Definition: brokers/rprBroker/rprBroker/dllExport.h:22
Definition: rprDiscoverableCriteria.h:25
DtConfigVariable< double > myCmdLineRprFomVersion
Definition: rprBrokerInitializer.h:315
DtConfigVariable< DtTime > myHlaMaxTickTime
Definition: rprBrokerInitializer.h:358
DtConfigVariable< int > myHeartbeat
Definition: rprBrokerInitializer.h:356
Parses the MTL file, and reads command line input to produce a set of parameters useful for DtRprBrok...
Definition: rprBrokerInitializer.h:37
DtConfigVariable< DtString > myCmdLineFomMapperInitData
Definition: rprBrokerInitializer.h:318
DtConfigVariable< int > myCmdLineRprFomRevision
Definition: rprBrokerInitializer.h:316
DtConfigVariable< DtString > myCmdLineExecName
Definition: rprBrokerInitializer.h:307

Document ID: Generated on Mon May 25 18:45:12 EDT 2026 from SVN revision 289111
Copyright © 2005-2026 MAK Technologies. All Rights Reserved (www.mak.com)