VR-Link API Documentation for HLA 1.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
exerciseConnInitializerHLA.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 1992-2025 MAK Technologies, Inc
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #pragma once
11 
12 #if DtHLA
13 
14 #include "fomMapper.h"
15 
16 #include <vlutil/vlString.h>
17 
19 #include <mtl/configVariable.h>
21 
23 
24 #include <cmdLine/cmdLine.h>
25 
26 class DtMtlEnvironment;
27 
28 
29 #if defined (DtHLA_1516_EVOLVED)
30 #define DtDefaultRpr2Fom "RPR_FOM_v2.0_1516-2010.xml"
31 #define DtDefaultRpr1Fom "MAK-RPR1-1-10_evolved.xml"
32 #elif defined(DtHLA_1516)
33 #define DtDefaultRpr2Fom "MAK-RPR2-1-10.xml"
34 #define DtDefaultRpr1Fom "MAK-RPR1-1-10.xml"
35 #else //HLA 1.3
36 #define DtDefaultRpr2Fom "MAK-RPR2-1-10.fed"
37 #define DtDefaultRpr1Fom "MAK-RPR1-1-10.fed"
38 #endif
39 
44 {
45 public:
46 
50  {
53  DtGetValuePointerWhereAvailable
54  };
55 
56 public:
59 
61  virtual ~DtExerciseConnInitializer();
62 
65 
68 
70  virtual DtString execName() const;
71 
73  virtual void setExecName(const DtString& name);
74 
77  virtual DtString federateName() const;
78 
81  virtual void setFederateName(const DtString& name);
82 
84  virtual DtString federateType() const;
85 
88  virtual void setFederateType(const DtString& type);
89 
91  virtual DtString fedFileName() const;
92 
94  virtual void setFedFileName(const DtString& name);
95 
97  virtual DtFomMapper* fomMapper() const;
98 
100  virtual void setFomMapper(DtFomMapper* mapper);
101 
104  virtual DtString fomMapperLibName() const;
105 
107  virtual void setFomMapperLibName(const DtString& name);
108 
110  virtual void* fomMapperInitData() const;
111 
113  virtual void setFomMapperInitData(void* data);
114 
115 
116  //{@
118  virtual void setApplicationNumber(int id);
119  virtual int applicationNumber() const;
121 
122  //{@
124  virtual void setSiteId(int id);
125  virtual int siteId() const;
127 
134  virtual void setRprFomVersion(double version);
135 
137  virtual double rprFomVersion() const;
138 
144  virtual void setNetnFomVersion(double version);
145 
147  virtual double netnFomVersion() const;
148 
151  virtual void setReflecting(bool onOff);
152 
154  virtual bool reflecting() const;
155 
158  virtual void setPassiveMode(bool onOff);
159 
161  virtual bool passiveMode() const;
162 
176  virtual void setReflectRemoteUpdatesIntoPub(bool onOff);
177 
179  virtual bool reflectRemoteUpdatesIntoPub() const;
180 
187  virtual void setReflectThroughRti(bool onOff);
188 
190  virtual bool reflectThroughRti() const;
191 
199  virtual void setUseAdvisories(bool onOff);
200 
202  virtual bool useAdvisories() const;
203 
209  virtual void setReplyToSynchPoints(bool onOff);
210 
212  virtual bool replyToSynchPoints() const;
213 
219  virtual void setAutoSubscribe(bool onOff);
220 
222  virtual bool autoSubscribe() const;
223 
229  virtual void setRequestClassUpdate(bool onOff);
230 
232  virtual bool requestClassUpdate() const;
233 
238  virtual void setRequestObjectUpdate(bool onOff);
239 
241  virtual bool requestObjectUpdate() const;
242 
254  virtual void setRequestWhenInitialized(bool onOff);
255 
257  virtual bool requestWhenInitialized() const;
258 
270  virtual void setDefaultRefreshWaitList(bool onOff);
271 
273  virtual bool defaultRefreshWaitList() const;
274 
279  virtual void setDefaultWaitListRefreshPeriod(double period);
280 
282  virtual double defaultWaitListRefreshPeriod() const;
283 
287  virtual void setTimeStampType(DtTimeStampType relOrAbs);
288 
290  virtual DtTimeStampType timeStampType() const;
291 
293  virtual bool dis5Timestamps() const;
294 
296  virtual void setDis5Timestamps(bool onOff);
297 
303  virtual void setDestroyFedExec(bool onOff);
304 
306  virtual bool destroyFedExec() const;
307 
312  virtual void setSendFedTime(bool onOff);
313 
315  virtual bool sendFedTime() const;
316 
318  virtual void setNotifyLevel(int level);
319 
321  virtual void setUseGeographicDdm(bool yesNo);
322 
324  virtual bool useGeographicDdm() const;
325 
331  virtual void setRprFomRevision(int val);
334  virtual int rprFomRevision() const;
335 
337  virtual void setNetnFomRevision(int val);
339  virtual int netnFomRevision() const;
340 
346  virtual void setExceptionOnRtiCompilerMismatch( bool useException );
347 
348  virtual bool exceptionOnRtiCompilerMismatch() const;
349 
361 
362  virtual void setGetValueMethod( DtGetValueMethod getValueMethodChoice );
363  virtual DtGetValueMethod getValueMethod( ) const;
365 
371 
372  virtual void setGenericAttributes(bool yesNo);
373  virtual bool enabledGenericAttributes() const;
375 
376 
378 
379  virtual bool pauseOnSaveRestore() const;
380  virtual void setPauseOnSaveRestore(bool yesNo);
382 
383 #if DtHLA_1516_EVOLVED
384 
386  virtual void setMimModule(const DtString& mimFomModule);
388  virtual DtString mimModule() const;
389 
391  virtual void addFomModule(const DtString& module);
393  virtual void setFomModules(const std::vector<DtString>& fomModules);
394 
396  virtual void fomModules(std::vector<DtString>& fomModules) const;
398  virtual void fomModules(std::vector<std::wstring>& fomModules) const;
399 
401  virtual void clearFomModules();
402 
404  virtual void setLocalSettingsDesignator( const std::wstring & localSettingsDesignator );
406  virtual void setLocalSettingsDesignator( const DtString & localSettingsDesignator );
408  virtual std::wstring localSettingsDesignator() const;
409 
410 
411 #elif DtHLA_1516
412 
414  virtual void setRtiArguments(const std::vector<std::wstring>& args);
415 
417  virtual void setRtiArguments(const std::vector<DtString>& args);
418 
420  virtual void rtiArguments(std::vector<std::wstring>& args) const;
421 
422 #endif
423 
424 public:
425 
427  static DtString vrlinkVersion();
428 
431 private:
460  int mySiteId;
465 
466 
467 #if DtHLA_1516_EVOLVED
468  std::wstring myLocalSettingsDesignator;
469 #elif DtHLA_1516
470  std::vector<std::wstring> myRtiArguments;
471 #endif
472 
476 
479  std::vector<DtString> myFomModules;
480 
482 
483 };
484 
497 {
498 public:
500  DtVrlApplicationInitializer(int argc, char* argv[], const DtString& appName,
501  const DtString& defaultConfigFilePath = DtDefaultConfigFile,
503 #ifdef _WIN32
504  bool pressAnyKey = true);
505 #else
506  bool pressAnyKey = false);
507 #endif
508 
510  virtual ~DtVrlApplicationInitializer();
511 
514 
517 
519  virtual int argc() const;
520 
522  virtual char** argv() const;
523 
525  virtual DtExerciseConnConfig* exerciseConnectionConfig();
526 
528  virtual const DtExerciseConnConfig& exConnConfig() const;
529 
531  virtual DtApplicationSettings& settings();
532 
534  virtual const int disVersion() const;
535 
540  virtual void parseCmdLine();
541 
545  virtual void loadFile(const DtString& fileName);
546 
547 
549  virtual void saveFile(const DtString& filename);
550 
551  //{@
553  virtual void setExecName(const DtString& name);
554  virtual DtString execName() const;
556 
557  //{@
560  virtual void setFederateName(const DtString& name);
561  virtual DtString federateName() const;
563 
564 #if DtHLA_1516_EVOLVED
565  //{@
568  virtual void setLocalSettingsDesignator(const DtString& name);
569  virtual std::wstring localSettingsDesignator() const;
570 
573  virtual void setMimModule(const DtString& mimFomModule);
574  virtual DtString mimModule() const;
576 
577 #endif
578 
579  //{@
581  virtual void setNotifyFileLevel(int level);
582  virtual int notifyFileLevel() const;
584 
585  //{@
587  virtual void setNotifyFilename(const DtString& file);
588  virtual DtString notifyFilename() const;
590 
591  //{@
593  virtual void setFederateType(const DtString& type);
594  virtual DtString federateType() const;
596 
597  //{@
599  void setFedFileName(const DtString& name);
600  virtual DtString fedFileName() const;
602 
603  //{@
605  virtual void setSiteId(int id);
606  virtual int siteId() const;
608 
609  //{@
611  virtual void setApplicationNumber(int num);
612  virtual int applicationNumber() const;
614 
615  //{@
617  virtual void setFomMapperLibName(const DtString& name);
618  virtual DtString fomMapperLibName() const;
620 
621  //{@
623  virtual void setRprFomVersion(double version);
624  virtual double rprFomVersion() const;
626 
627  //{@
629  virtual void setNetnFomVersion(double version);
630  virtual double netnFomVersion() const;
632 
633  //{@
635  virtual void* fomMapperInitData() const;
636  virtual void setFomMapperInitData(void* data);
638 
639  //{@
641  virtual void setUseAdvisories(bool onOff);
642  virtual bool useAdvisories() const;
644 
645  //{@
647  virtual void setUseDis5Timestamps(bool onOff);
648  virtual bool useDis5TimeStamps() const;
650 
651  //{@
653  virtual void setRequestClassUpdate(bool onOff);
654  virtual bool requestClassUpdate() const;
656 
657 
658  //{@
660  virtual void setRequestObjectUpdate(bool onOff);
661  virtual bool requestObjectUpdate() const;
663 
664  //{@
666  virtual void setRequestWhenInitialized(bool onOff);
667  virtual bool requestWhenInitialized() const;
669 
670  //{@
672  virtual void setDefaultRefreshWaitList(bool onOff);
673  virtual bool defaultRefreshWaitList() const;
675 
676  //{@
678  virtual void setDefaultWaitListRefreshPeriod(double period);
679  virtual double defaultWaitListRefreshPeriod() const;
681 
685  virtual void setTimeStampType(DtTimeStampType relOrAbs);
686 
688  virtual DtTimeStampType timeStampType() const;
689 
695  virtual void setDestroyFedExec(bool onOff);
696 
698  virtual bool destroyFedExec() const;
699 
704  virtual void setSendFedTime(bool onOff);
705 
707  virtual bool sendFedTime() const;
708 
709  virtual void setUseGeographicDdm(bool yesNo);
710 
711  virtual bool useGeographicDdm() const;
712 
714  virtual void setRprFomRevision(int val);
715 
717  virtual int rprFomRevision() const;
718 
720  virtual void setNetnFomRevision(int val);
721 
723  virtual int netnFomRevision() const;
724 
730  virtual void setGenericAttributes(bool yesNo);
731  virtual bool enabledGenericAttributes() const;
732 
734 
735  virtual bool pauseOnSaveRestore() const;
736  virtual void setPauseOnSaveRestore(bool yesNo);
737 
738  virtual void setExceptionOnRtiCompilerMismatch(bool yesNo);
739  virtual bool exceptionOnRtiCompilerMismatch() const;
741 
746  virtual void setOutputInterval(double period);
747 
749  virtual double outputInterval() const;
750 
751 protected:
753  virtual void initializeFileLogging();
754 
756  virtual void initializeConnectionConfigVariables();
757 
759  virtual void initializeMtlParams();
760 
762  virtual void loadMtlFile(const DtString& fileName);
763 
764 protected:
765  int myArgc;
766  char** myArgv;
768 
770 
771  // used from command line to load in multiple config files
772  // merging and replacing properties as needed
776 
777  // MTL doesn't support boolean
788 
789 };
790 
791 #endif // DtHLA
command line support
Definition: mtlEnvironment.h:42
virtual void setDestroyFedExec(bool onOff)
Set the destroy fed exec flag.
bool myRequestObjectUpdate
Definition: exerciseConnInitializerHLA.h:446
DtMultiConfigVariable< DtString > myMultipleConfigFiles
Definition: exerciseConnInitializerHLA.h:773
Contains the DtApplicationSettings class declaration.
virtual void setRequestClassUpdate(bool onOff)
Set request class update flag.
virtual bool sendFedTime() const
Get the send fed time flag. See above description.
virtual void setFomMapperLibName(const DtString &name)
Get the FOM Mapper library name.
Definition: applicationSettings.h:24
bool myReplyToSynchPoints
Definition: exerciseConnInitializerHLA.h:443
virtual bool enabledGenericAttributes() const
Set the Generic attributes flag.
virtual bool destroyFedExec() const
Get the destroy fed exec flag. See above description.
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
int myMtlRequestObjectUpdate
Definition: exerciseConnInitializerHLA.h:785
bool myPassiveMode
Definition: exerciseConnInitializerHLA.h:441
#define DtDefaultConfigFile
Definition: exerciseConnConfig.h:24
Instances of DtExerciseConnInitializer are used to provide the DtExerciseConn with initialization dat...
Definition: exerciseConnInitializerHLA.h:43
Contains the DtString class declaration.
bool myReflectRemoteUpdatesIntoPub
Definition: exerciseConnInitializerHLA.h:450
virtual void setDefaultRefreshWaitList(bool onOff)
Set default wait list refresh flag.
DtString myMimModule
Definition: exerciseConnInitializerHLA.h:481
DtExerciseConnConfig myExConnConfig
Definition: exerciseConnInitializerHLA.h:769
int myMtlSendFedTime
Definition: exerciseConnInitializerHLA.h:782
char ** myArgv
Definition: exerciseConnInitializerHLA.h:766
int myRprFomRevision
Definition: exerciseConnInitializerHLA.h:458
DtTimeStampType myTimeStampType
Definition: exerciseConnInitializerHLA.h:452
virtual void * fomMapperInitData() const
Set the FOM mapper initialization data.
int myMtlUseGeographicDdm
Definition: exerciseConnInitializerHLA.h:779
virtual int siteId() const
int myMtlUseAbsoluteTimeStamps
Definition: exerciseConnInitializerHLA.h:780
bool myExceptionOnRtiCompilerMismatch
Definition: exerciseConnInitializerHLA.h:462
virtual void setRequestObjectUpdate(bool onOff)
Set request object update flag.
void * myFomMapperInitData
Definition: exerciseConnInitializerHLA.h:437
virtual int rprFomRevision() const
Returns the revision of the current FOM being used.
virtual DtString federateType() const
Get the federate type.
This file declares DtFomMapper.
bool myReflecting
Definition: exerciseConnInitializerHLA.h:440
int myNetnFomRevision
Definition: exerciseConnInitializerHLA.h:459
static DtString vrlinkVersion()
Returns a string indicating the VR-Link version number.
virtual DtTimeStampType timeStampType() const
Get the time stamp type.
DtString myFederateType
Definition: exerciseConnInitializerHLA.h:433
Definition: exerciseConnConfig.h:26
virtual bool exceptionOnRtiCompilerMismatch() const
Contains the DtMultiConfigVariable class declaration.
DtString myFomMapperLibName
Definition: exerciseConnInitializerHLA.h:436
virtual bool requestClassUpdate() const
Get request class update flag.
DtGetValueMethod myGetValueMethod
Definition: exerciseConnInitializerHLA.h:463
DtFomMapper * myFomMapper
Definition: exerciseConnInitializerHLA.h:435
double myRprFomVersion
Definition: exerciseConnInitializerHLA.h:438
DtConfigVariable< DtString > myConfigVarFomModuleList
Definition: exerciseConnInitializerHLA.h:775
DtExerciseConnInitializer & operator=(const DtExerciseConnInitializer &orig)
Assignment Operator.
virtual void setRprFomVersion(double version)
Set the RPR FOM Version.
virtual void setGenericAttributes(bool yesNo)
Set the Generic attributes flag.
virtual void setNetnFomRevision(int val)
Sets the revision of the NETN FOM Mapper currently used.
virtual DtString fedFileName() const
Set the fed file name.
std::vector< DtString > myFomModules
myFomModules represents the set of FOM Modules to be used to establish the Object Model of the Federa...
Definition: exerciseConnInitializerHLA.h:479
bool myRequestClassUpdate
Definition: exerciseConnInitializerHLA.h:445
bool myAutoSubscribe
Definition: exerciseConnInitializerHLA.h:444
bool myReflectThroughRti
Definition: exerciseConnInitializerHLA.h:451
virtual DtString federateName() const
Set the federate name In HLA Evolved, this is the same as federateType.
virtual bool useGeographicDdm() const
Get the use geographic DDM flag.
Contains the DtConfigVariable class declaration.
double myDefaultWaitListRefreshPeriod
Definition: exerciseConnInitializerHLA.h:449
DtMtlEnvironment * myMtlEnv
Definition: exerciseConnInitializerHLA.h:767
Instances of DtVrlApplicationInitializer are used to initialize the exercise connection with command ...
Definition: exerciseConnInitializerHLA.h:496
bool myDefaultRefreshWaitList
Definition: exerciseConnInitializerHLA.h:448
virtual void setUseGeographicDdm(bool yesNo)
Sets the use geographic DDM flag.
virtual double netnFomVersion() const
Returns the NETN FOM Version. See above description.
int myMtlDefaultRefreshWaitList
Definition: exerciseConnInitializerHLA.h:787
virtual void setFedFileName(const DtString &name)
Get the fed file name.
virtual void setDefaultWaitListRefreshPeriod(double period)
Set default wait list refresh period.
bool mySendFedTime
Definition: exerciseConnInitializerHLA.h:454
virtual bool requestObjectUpdate() const
Get request object update flag.
DtString myFedFileName
The following two variables are different representations of the same concept.
Definition: exerciseConnInitializerHLA.h:475
int mySiteId
Definition: exerciseConnInitializerHLA.h:460
DtString myFederateName
Definition: exerciseConnInitializerHLA.h:434
virtual void setNetnFomVersion(double version)
Set the NETN FOM Version.
Definition: exerciseConnInitializerHLA.h:52
This file declares the class DtCmdLine::CmdLine.
virtual DtString fomMapperLibName() const
Set the FOM Mapper library name.
virtual void setApplicationNumber(int id)
Sets the notify level for file output, if the filename has been set.
int myApplicationNumber
Definition: exerciseConnInitializerHLA.h:461
bool myDis5TimeStamps
Definition: exerciseConnInitializerHLA.h:464
double myNetnFomVersion
Definition: exerciseConnInitializerHLA.h:439
bool myRequestWhenInitialized
Definition: exerciseConnInitializerHLA.h:447
virtual void setUseAdvisories(bool onOff)
Set use of advisories.
bool myPauseOnSaveRestore
Definition: exerciseConnInitializerHLA.h:455
virtual double defaultWaitListRefreshPeriod() const
Get default wait list refresh period.
Definition: exerciseConnInitializerHLA.h:51
bool myUseGeographicDdm
Definition: exerciseConnInitializerHLA.h:457
virtual void setFederateName(const DtString &name)
Set the federate name In HLA Evolved, this is the same as setFederateType.
int myMtlDestroyFedExec
Definition: exerciseConnInitializerHLA.h:781
virtual bool useAdvisories() const
Get use of advisories.
virtual void setTimeStampType(DtTimeStampType relOrAbs)
Set the time stamp type (DtTimeStampAbsolute or DtTimeStampRelative).
virtual int applicationNumber() const
bool myUseAdvisories
Definition: exerciseConnInitializerHLA.h:442
virtual void setRprFomRevision(int val)
Sets the revision of the FOM Mapper currently used.
virtual double rprFomVersion() const
Returns the RPR FOM Version. See above description.
DtTimeStampType
Definition: vlTimeStampType.h:16
int myMtlUseAdvisories
Definition: exerciseConnInitializerHLA.h:778
bool myGenericAttributes
Definition: exerciseConnInitializerHLA.h:456
int myArgc
Definition: exerciseConnInitializerHLA.h:765
virtual void setRequestWhenInitialized(bool onOff)
Set request when initialized flag.
virtual bool defaultRefreshWaitList() const
Get request object update flag.
bool myDestroyFedExec
Definition: exerciseConnInitializerHLA.h:453
DtConfigVariable< bool > myConfigVarIgnoreAdvisories
Definition: exerciseConnInitializerHLA.h:774
Instances of DtString are used to represent strings.
Definition: vlString.h:36
virtual void setExceptionOnRtiCompilerMismatch(bool useException)
Set whether DtExerciseConn throws an exception when detecting a mismatched RTI compiler version...
Instances of DtFomMapper are used to provide FOM agility in VR-Link by mapping VR-Link classes and fu...
Definition: fomMapper.h:36
int myMtlRequestClassUpdate
Definition: exerciseConnInitializerHLA.h:784
virtual int netnFomRevision() const
Returns the revision of the current NETN FOM being used.
virtual bool requestWhenInitialized() const
Get request when initialized flag.
virtual void setSendFedTime(bool onOff)
Set the send fed time flag.
virtual void setFomMapperInitData(void *data)
Get the FOM mapper initialization data.
virtual void setPauseOnSaveRestore(bool yesNo)
Block the simulation if a save or a restore is in process.
virtual DtString execName() const
Set the federation execution name.
int myMtlPauseOnSaveRestore
Definition: exerciseConnInitializerHLA.h:783
virtual void setSiteId(int id)
Sets the notify level for file output, if the filename has been set.
int myMtlRequestWhenInitialized
Definition: exerciseConnInitializerHLA.h:786
virtual void setFederateType(const DtString &type)
Set the federate type.
virtual bool pauseOnSaveRestore() const
Block the simulation if a save or a restore is in process.
DtString myExecName
These values are private, because derived classes will be providing types of the same functionality...
Definition: exerciseConnInitializerHLA.h:432
DtGetValueMethod
Indicate if getValue or getValuePointer should be used to retrieve data from handleValuePairSets.
Definition: exerciseConnInitializerHLA.h:49
virtual void setExecName(const DtString &name)
Get the federation execution name.

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)