VR-Link API Documentation for HLA 1.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
exerciseConnConfig.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 1992-2025 MAK Technologies, Inc
3  * All rights reserved.
4  ****************************************************************************/
5 
11 
12 #pragma once
13 
14 #include "vlutil/vlUtil.h"
15 #include "vlutil/vlTimeStampType.h"
16 #include <vlutil/vlMachineTypes.h>
17 
19 #include <mtl/configVariable.h>
22 
23 
24 #define DtDefaultConfigFile "MAK-ONE-2025-Config.xml"
25 
27 {
28 public:
30  DtExerciseConnConfig(const DtString& appName = "VR-Link",
31  const DtString& version = VR_LINK_VERSION_STRING);
32 
34  virtual ~DtExerciseConnConfig();
35 
36  // Copy constructor
38 
39  // Assignment operator
40  DtExerciseConnConfig& operator=(const DtExerciseConnConfig& orig);
41 
42  //virtual void parseCmdLine();
43 
47  virtual void loadFile(const DtString& fileName);
48 
49  //{@
51  virtual void setPort(int port);
52  virtual int port() const;
54 
55  //{@
57  virtual void setExerciseId(int id);
58  virtual int exerciseId() const;
60 
61  //{@
63  virtual void setSiteId(int id);
64  virtual int siteId() const;
66 
67  //{@
69  virtual void setApplicationNumber(int num);
70  virtual int applicationNumber() const;
72 
73  //{@
75  virtual void setDestinationAddress(const DtString& address);
76  virtual DtString destinationAddress() const;
78 
80  virtual void setNotifyLevel(int level);
81 
82  //{@
84  virtual void setNotifyFileLevel(int level);
85  virtual int notifyFileLevel() const;
87 
88  //{@
90  virtual void setNotifyFilename(const DtString& file);
91  virtual DtString notifyFilename() const;
93 
95  virtual int disVersionValue() const;
96 
97  virtual void setSendBufferSize(int numBytes);
98  virtual int sendBufferSize() const;
99 
100  virtual void setReceiveBufferSize(int numBytes);
101  virtual int receiveBufferSize() const;
102 
104  virtual void setUseAsynchIO(bool on);
106  virtual bool useAsynchIO() const;
107 
110  virtual void setMulticastTtl(int ttl);
113  virtual int multicastTtl() const;
114 
117  virtual void setTimeStampType(DtTimeStampType relOrAbs);
119  virtual DtTimeStampType timeStampType() const;
120 
122  virtual void setUseAbsoluteTimeStamp(bool useAbsoluteTimeStamp);
124  virtual bool useAbsoluteTimeStamp() const;
125 
126  virtual void setMulticastAddresses(const std::vector<DtString>& addresses);
127  virtual const std::vector<DtString>& multicastAddresses() const;
128 
129  virtual void setUseIpv6(bool val);
130  virtual bool useIpv6() const;
131 
132  //{@
134  virtual void setUseDis5Timestamps(bool onOff);
135  virtual bool useDis5TimeStamps() const;
137 
139  virtual void setSuppressSelfReflect(bool yesNo);
140 
142  virtual bool suppressSelfReflect() const;
143 
146  virtual void setDeviceAddress(const DtString& devAddr);
147 
149  virtual DtString deviceAddress() const;
150 
152  virtual void setSubnetMask(const DtString& mask);
153 
155  virtual DtString subnetMask() const;
156 
158  virtual void setAttributePduStrategy(DtAttributePduStrategy strat);
159 
161  virtual DtAttributePduStrategy attributePduStrategy() const;
162 
167  virtual void setOutputInterval(double period);
168 
170  virtual double outputInterval() const;
171 
172 
173  //{@
175  virtual void setExecName(const DtString& name);
176  virtual DtString execName() const;
178 
179  //{@
182  virtual void setFederateName(const DtString& name);
183  virtual DtString federateName() const;
185 
186 
187  //{@
190  virtual void setLocalSettingsDesignator(const DtString& name);
191  virtual std::wstring localSettingsDesignator() const;
192 
195  virtual void setMimModule(const DtString& mimFomModule);
196  virtual DtString mimModule() const;
198 
199  //{@
201  virtual void setFederateType(const DtString& type);
202  virtual DtString federateType() const;
204 
205  //{@
207  void setFedFileName(const DtString& name);
208  virtual DtString fedFileName() const;
210 
211  //{@
213  virtual void setFomMapperLibName(const DtString& name);
214  virtual DtString fomMapperLibName() const;
216 
217  //{@
219  virtual void setRprFomVersion(double version);
220  virtual double rprFomVersion() const;
222 
223  //{@
225  virtual void setNetnFomVersion(double version);
226  virtual double netnFomVersion() const;
228 
229  //{@
231  virtual void* fomMapperInitData() const;
232  virtual void setFomMapperInitData(void* data);
234 
235  //{@
237  virtual void setUseAdvisories(bool onOff);
238  virtual bool useAdvisories() const;
240 
241  //{@
243  virtual void setRequestClassUpdate(bool onOff);
244  virtual bool requestClassUpdate() const;
246 
247 
248  //{@
250  virtual void setRequestObjectUpdate(bool onOff);
251  virtual bool requestObjectUpdate() const;
253 
254  //{@
256  virtual void setRequestWhenInitialized(bool onOff);
257  virtual bool requestWhenInitialized() const;
259 
260  //{@
262  virtual void setDefaultRefreshWaitList(bool onOff);
263  virtual bool defaultRefreshWaitList() const;
265 
266  //{@
268  virtual void setDefaultWaitListRefreshPeriod(double period);
269  virtual double defaultWaitListRefreshPeriod() const;
271 
277  virtual void setDestroyFedExec(bool onOff);
278 
280  virtual bool destroyFedExec() const;
281 
286  virtual void setSendFedTime(bool onOff);
287 
289  virtual bool sendFedTime() const;
290 
291  virtual void setUseGeographicDdm(bool yesNo);
292 
293  virtual bool useGeographicDdm() const;
294 
296  virtual void setRprFomRevision(int val);
297 
299  virtual int rprFomRevision() const;
300 
302  virtual void setNetnFomRevision(int val);
303 
305  virtual int netnFomRevision() const;
306 
312  virtual void setGenericAttributes(bool yesNo);
313  virtual bool enabledGenericAttributes() const;
314 
316 
317  virtual bool pauseOnSaveRestore() const;
318  virtual void setPauseOnSaveRestore(bool yesNo);
319 
320  virtual void setExceptionOnRtiCompilerMismatch(bool yesNo);
321  virtual bool exceptionOnRtiCompilerMismatch() const;
323 
324  virtual void printFomModules();
325 
327  virtual void fomModules(std::vector<DtString>& fomModules) const;
328 
330 
332  virtual void initializeFileLogging();
333 
335  virtual void initializeDisConnectionConfigVariables();
336 
338  virtual void initializeDisConnectionConfigVariablesNames();
339 
341  virtual void initializeHlaConnectionConfigVariables();
342 
344  virtual void initializeHlaConnectionConfigVariablesNames();
345 
347 
349  virtual DtApplicationSettings& settings();
350 
352  virtual DtVariableGroup& disConnection();
353 
355  virtual DtVariableGroup& hlaConnection();
356 
358  virtual DtConfigVariable<int>& disVersion();
359 
361  virtual DtConfigVariable<int>& notifyLevel();
362 
364  virtual DtConfigVariable<int>& portConfigVar();
365 
367  virtual DtConfigVariable<int>& exerciseIdConfigVar();
368 
370  virtual DtConfigVariable<int>& siteIdConfigVar();
371 
373  virtual DtConfigVariable<int>& applicationNumberConfigVar();
374 
376  virtual DtConfigVariable<DtString>& destinationAddressConfigVar();
377 
379  virtual DtConfigVariable<int>& sendBufferSizeConfigVar();
380 
382  virtual DtConfigVariable<int>& receiveBufferSizeConfigVar();
383 
385  virtual DtMultiConfigVariable<DtString>& multicastAddressesConfigVar();
386 
388  virtual DtConfigVariable<bool>& useAsynchIOConfigVar();
389 
391  virtual DtConfigVariable<bool>& useIpv6ConfigVar();
392 
394  virtual DtConfigVariable<bool>& dis5TimeStampsConfigVar();
395 
397  virtual DtConfigVariable<bool>& useAbsoluteTimestampsConfigVar();
398 
400  virtual DtConfigVariable<int>& mutlicastTtlConfigVar();
401 
403  virtual DtConfigVariable<DtString>& deviceAddressConfigVar();
404 
406  virtual DtConfigVariable<DtString>& subnetMaskConfigVar();
407 
409  virtual DtConfigVariable<DtString>& notifyFilenameConfigVar();
410 
412  virtual DtConfigVariable<int>& notifyFileLevelConfigVar();
413 
415  virtual DtConfigVariable<int>& attributeStrategyConfigVar();
416 
418  virtual DtConfigVariable<double>& outputIntervalConfigVar();
419 
421  virtual DtMultiConfigVariable<DtString>& mutlicastAddressConfig();
422 
423 
424 
426  virtual DtConfigVariable<DtString>& execNameConfigVar();
427 
429  virtual DtConfigVariable<DtString>& federateNameConfigVar();
430 
432  virtual DtConfigVariable<DtString>& federateTypeConfigVar();
433 
435  virtual DtConfigVariable<DtString>& fedFileNameConfigVar();
436 
438  virtual DtMultiConfigVariable<DtString>& fomModulesConfigVar();
439 
441  virtual DtConfigVariable<DtString>& mimModuleConfigVar();
442 
444  virtual DtConfigVariable<DtString>& localSettingsDesignatorConfigVar();
445 
447  virtual DtConfigVariable<DtString>& fomMapperLibConfigVar();
448 
450  virtual DtConfigVariable<DtString>& fomMapperInitDataConfigVar();
451 
453  virtual DtConfigVariable<double>& rprFomVersionConfigVar();
454 
456  virtual DtConfigVariable<int>& rprFomRevisionConfigVar();
457 
459  virtual DtConfigVariable<double>& netnFomVersionConfigVar();
460 
462  virtual DtConfigVariable<int>& netnFomRevisionConfigVar();
463 
465  virtual DtConfigVariable<bool>& useAdvisoriesConfigVar();
466 
468  virtual DtConfigVariable<double>& defaultWaitListRefreshPeriodConfigVar();
469 
470 
471 protected:
497 
498  // If logging is turned on, this printer will remain in memory
499  // even after this class is destroyed. Otherwise we would
500  // have to stop logging prematurely.
502 
503 
505 
506 
511 
515 
516 
535 };
536 
DtConfigVariable< DtString > myConfigVarDestinationAddress
Definition: exerciseConnConfig.h:486
Contains the DtApplicationSettings class declaration.
DtConfigVariable< DtString > myConfigVarFederateName
Definition: exerciseConnConfig.h:510
DtConfigVariable< bool > myConfigVarPauseOnSaveRestore
Definition: exerciseConnConfig.h:533
DtConfigVariable< int > myConfigVarExerciseId
Definition: exerciseConnConfig.h:484
DtConfigVariable< DtString > myConfigVarFomMapperLibName
Definition: exerciseConnConfig.h:517
DtConfigVariable< bool > myConfigVarUseAsyncIo
Definition: exerciseConnConfig.h:489
Definition: applicationSettings.h:24
DtConfigVariable< int > myConfigVarRprFomRevision
Definition: exerciseConnConfig.h:520
DtFilePrinter is a subclass of DtPrinter which opens a file and dumps all information received from D...
Definition: vlPrint.h:80
DtConfigVariable< bool > myConfigVarUseGeographicDdm
Definition: exerciseConnConfig.h:529
DtConfigVariable< int > myConfigVarMulticastTtl
Definition: exerciseConnConfig.h:492
DtConfigVariable< double > myConfigVarNetnFomVersion
Definition: exerciseConnConfig.h:521
DtMultiConfigVariable< DtString > myConfigVarFomModules
Definition: exerciseConnConfig.h:512
DtConfigVariable< bool > myConfigVarRequestClassUpdate
Definition: exerciseConnConfig.h:524
DtConfigVariable< double > myConfigVarDefaultWaitListRefreshPeriod
Definition: exerciseConnConfig.h:528
DtConfigVariable< int > myConfigVarNetnFomRevision
Definition: exerciseConnConfig.h:522
DtConfigVariable< DtString > myConfigVarLocalSettingsDesignator
Definition: exerciseConnConfig.h:514
DtMultiConfigVariable< DtString > myConfigVarMulticastAddresses
Definition: exerciseConnConfig.h:493
Definition: exerciseConnConfig.h:26
Contains the DtMultiConfigVariable class declaration.
DtConfigVariable< bool > myConfigVarRequestObjectUpdate
Definition: exerciseConnConfig.h:525
DtConfigVariable< bool > myConfigVarSendFedTime
Definition: exerciseConnConfig.h:531
DtConfigVariable< DtString > myConfigVarNotifyFilename
Definition: exerciseConnConfig.h:479
DtConfigVariable< int > myConfigVarSendBufferSize
Definition: exerciseConnConfig.h:487
DtConfigVariable< int > myConfigVarNotifyFileLevel
Definition: exerciseConnConfig.h:478
DtVariableGroup myDisConnection
Definition: exerciseConnConfig.h:481
DtConfigVariable< bool > myConfigVarSuppressSelfReflect
Definition: exerciseConnConfig.h:491
DtApplicationSettings mySettings
Definition: exerciseConnConfig.h:472
DtVariableGroup myHlaConnection
Definition: exerciseConnConfig.h:482
DtConfigVariable< DtString > myConfigVarFomMapperInitData
Definition: exerciseConnConfig.h:518
DtConfigVariable< int > myConfigVarApplicationNumber
Definition: exerciseConnConfig.h:475
Contains the DtConfigVariable class declaration.
DtConfigVariable< int > myConfigVarDisVersion
Definition: exerciseConnConfig.h:485
DtConfigVariable< bool > myConfigVarGenericAttributes
Definition: exerciseConnConfig.h:532
DtConfigVariable< int > myConfigVarReceiveBufferSize
Definition: exerciseConnConfig.h:488
DtConfigVariable< bool > myConfigVarDefaultRefreshWaitList
Definition: exerciseConnConfig.h:527
DtConfigVariable< DtString > myConfigVarFedFileName
Definition: exerciseConnConfig.h:509
DtAttributePduStrategy
Definition: vlAttributePduStrategy.h:16
DtConfigVariable< DtString > myConfigVarFederateType
Definition: exerciseConnConfig.h:507
DtConfigVariable< bool > myConfigVarUseIpv6
Definition: exerciseConnConfig.h:490
DtConfigVariable< DtString > myConfigVarExecName
Definition: exerciseConnConfig.h:508
DtConfigVariable< double > myConfigVarOutputInterval
Definition: exerciseConnConfig.h:480
DtConfigVariable< bool > myConfigVarUseAdvisories
Definition: exerciseConnConfig.h:523
DtConfigVariable< bool > myConfigVarUseAbsoluteTimestamps
Definition: exerciseConnConfig.h:477
DtConfigVariable< bool > myConfigVarRtiCompilerCheck
Definition: exerciseConnConfig.h:534
DtConfigVariable< int > myConfigVarSiteNumber
Definition: exerciseConnConfig.h:474
#define DT_DLL_VLPROTIND
Definition: vlMachineTypes.h:110
DtConfigVariable< double > myConfigVarRprFomVersion
Definition: exerciseConnConfig.h:519
DtFilePrinter * myLogFilePrinter
Definition: exerciseConnConfig.h:501
DtConfigVariable< int > myConfigVarPort
Definition: exerciseConnConfig.h:483
DtConfigVariable< bool > myConfigVarRequestWhenInitialized
Definition: exerciseConnConfig.h:526
DtConfigVariable< DtString > myConfigVarMimModule
Definition: exerciseConnConfig.h:513
Represents a group of variables.
Definition: variableGroup.h:21
DtTimeStampType
Definition: vlTimeStampType.h:16
provides basic Operating Independent Methods useful to a federate
Instances of DtString are used to represent strings.
Definition: vlString.h:36
DtConfigVariable< DtString > myConfigVarSubnetMask
Definition: exerciseConnConfig.h:495
DtConfigVariable< DtString > myConfigVarDeviceAddress
Definition: exerciseConnConfig.h:494
#define VR_LINK_VERSION_STRING
Definition: vlVersion.h:12
DtConfigVariable< int > myConfigVarAttributeStrategy
Definition: exerciseConnConfig.h:496
DtConfigVariable< int > myNotifyLevel
Definition: exerciseConnConfig.h:473
This file contains typedefs for machine dependant types.
DtConfigVariable< bool > myConfigVarDis5TimeStamps
Definition: exerciseConnConfig.h:476
DtConfigVariable< bool > myConfigVarDestroyFedExec
Definition: exerciseConnConfig.h:530

Document ID: Generated on Thu Oct 16 00:12:25 EDT 2025 from SVN revision 280738
Copyright © 1992-2025 MAK Technologies. All Rights Reserved (www.mak.com)