MAK RTIspy API Documentation for HLA 1.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
RIDparams.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2016 VT MAK
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #pragma once
11 
12 #include "rtiMsConfig.h"
13 
14 #include <mtl/mtlEnvironment.h>
15 #include <mtl/mtl.h>
16 
17 #include <vlutil/vlFilename.h>
18 #include <vlutil/vlList.h>
19 
20 #include "rtiUtil.h"
21 
22 #include <vector>
23 #include <map>
24 
26 
28 const long DtDefaultSpaceHandle = 0;
29 const long DtGlobalSpaceHandle = 1;
30 const long DtDefaultRegionHandle = 0;
31 const long DtDefaultRegionSetHandle = 0;
33 
34 
37 {
38  MAKRti::DtString className;
39  MAKRti::DtInetAddr address;
40  MAKRti::DtInetAddr devAddress;
41  bool inclusive;
42 };
43 
46 {
47  MAKRti::DtString className;
48  MAKRti::DtString rateName;
49  bool inclusive;
50 };
51 
53 typedef std::map<MAKRti::DtString,float> DtUpdateNameRateMap;
54 
56 #define DtDECLARE_INT_ACCESSOR_MUTATOR( varName, accessor, mutator ) \
57  int accessor() const; \
58  void mutator( int var ); \
59  mutable bool varName##Initialized; \
60  mutable IntParameterMap::const_iterator varName##mapHandle;
61 
63 #define DtDECLARE_BOOL_ACCESSOR_MUTATOR( varName, accessor, mutator ) \
64  bool accessor() const; \
65  void mutator( bool var ); \
66  mutable bool varName##Initialized; \
67  mutable IntParameterMap::const_iterator varName##mapHandle;
68 
70 #define DtDECLARE_FLOAT_ACCESSOR_MUTATOR( varName, accessor, mutator ) \
71  float accessor() const; \
72  void mutator( float var ); \
73  mutable bool varName##Initialized; \
74  mutable FloatParameterMap::const_iterator varName##mapHandle;
75 
77 #define DtDECLARE_STRING_ACCESSOR_MUTATOR( varName, accessor, mutator ) \
78  MAKRti::DtString accessor() const; \
79  void mutator( const char* var ); \
80  mutable bool varName##Initialized; \
81  mutable StringParameterMap::const_iterator varName##mapHandle;
82 
83 
84 
88 {
89 public:
90 
91  typedef std::vector<DtDMFilterStruct> DtDMFilterList;
92  typedef std::vector<MAKRti::DtString> DtStringList;
93  typedef std::vector<MAKRti::DtInetAddr> DtInetAddrList;
94 
95  typedef std::set<DtInetAddrAndPort> DtInetAddrAndPortSet;
96 
101  {
102  DtInconsistentRidDoNothing = 0,
104  DtInconsistentRidThrowException
105  };
106 
112  {
113  DtSynchronousMode = 0,
116  DtAsynchronousCallbacks
117  };
118 
123  {
124  DtFomTransportTypeUseFomSettings = 0,
126  DtFomTransportTypeUseReliable
127 
128  };
129 
135  {
136  DtLrcMinidumperLevelNotEnabled = 0,
137  DtLrcMinidumperLevelEnabled = 1,
138  DtLrcMinidumperLevelEnabledNoPrompt = 2,
139  DtLrcMinidumperLevelSilentExit = 3
140  };
141 
144  {
145  public:
146 
147  DtRidParameter( const MAKRti::DtString& label, const MAKRti::DtString& name,
148  const MAKRti::DtString& toolTip, const MAKRti::DtString& parentLabel,
149  bool editable, MAKRti::DtString rangeString )
150  : myLabel( label )
151  , myName( name )
152  , myToolTip( toolTip )
153  , myParentLabel( parentLabel )
154  , myEditable( editable )
155  , myRangeString( rangeString )
156  {
157  }
158 
159  const MAKRti::DtString& label() const { return myLabel; }
160  const MAKRti::DtString& name() const { return myName; }
161  const MAKRti::DtString& toolTip() const { return myToolTip; }
162  const MAKRti::DtString& parentLabel() const { return myParentLabel; }
163  bool isEditable() const { return myEditable; }
164  const MAKRti::DtString& rangeString() const { return myRangeString; }
165 
166  private:
167 
168  MAKRti::DtString myLabel;
169  MAKRti::DtString myName;
170  MAKRti::DtString myToolTip;
171  MAKRti::DtString myParentLabel;
173  MAKRti::DtString myRangeString;
174 
175  };
176 
177 
180  {
181  public:
182 
183  DtIntRidParameter( const MAKRti::DtString& label, const MAKRti::DtString& name,
184  const MAKRti::DtString& toolTip, const MAKRti::DtString& parentLabel, int value,
185  int* ref, bool editable, const MAKRti::DtString& rangeString )
186  : DtRidParameter( label, name, toolTip, parentLabel, editable, rangeString )
187  , myDefaultValue( value )
188  , myCurrVal( ref )
189  {
190  }
191 
193 
194  int currVal() const { return *myCurrVal; }
195  void setCurrVal( int val ) { *myCurrVal = val; }
196  void destroyStoredVar() { delete myCurrVal; }
197  int defaultVal() const { return myDefaultValue; }
198 
199  private:
200 
202  int* myCurrVal;
203 
204  };
205 
206 
209  {
210  public:
211 
212  DtFloatRidParameter( const MAKRti::DtString& label, const MAKRti::DtString& name,
213  const MAKRti::DtString& toolTip, const MAKRti::DtString& parentLabel, float value,
214  float* ref, bool editable, const MAKRti::DtString& rangeString )
215  : DtRidParameter( label, name, toolTip, parentLabel, editable, rangeString )
216  , myDefaultValue( value )
217  , myCurrVal( ref )
218  {
219  }
220 
222 
223  float currVal() const { return *myCurrVal; }
224  void setCurrVal( float val ) { *myCurrVal = val; }
225  void destroyStoredVar() { delete myCurrVal; }
226  float defaultVal() const { return myDefaultValue; }
227 
228  private:
229 
231  float* myCurrVal;
232 
233  };
234 
235 
238  {
239  public:
240  DtStringRidParameter( const MAKRti::DtString& label, const MAKRti::DtString& name,
241  const MAKRti::DtString& toolTip, const MAKRti::DtString& parent,
242  const MAKRti::DtString& value, MAKRti::DtString* ref,
243  bool editable, MAKRti::DtString rangeString )
244  : DtRidParameter( label, name, toolTip, parent, editable, rangeString )
245  , myDefaultValue( value )
246  , myCurrVal( ref )
247  {
248  }
249 
251 
252  const MAKRti::DtString& defaultVal() const { return myDefaultValue; }
253  const MAKRti::DtString& currVal() const { return *myCurrVal; }
254  void destroyStoredVar() { delete myCurrVal; }
255  void setCurrVal( const MAKRti::DtString& val ) { *myCurrVal = val; }
256 
257  private:
258 
259  MAKRti::DtString myDefaultValue;
260  MAKRti::DtString* myCurrVal;
261 
262  };
263 
266  {
267  DtUnInitialized = 0,
274  DtNoRidFileSpecified
275  };
276 
277  typedef std::map<MAKRti::DtString,DtIntRidParameter> IntParameterMap;
278  typedef std::map<MAKRti::DtString,DtFloatRidParameter> FloatParameterMap;
279  typedef std::map<MAKRti::DtString,DtStringRidParameter> StringParameterMap;
280 
281 public:
282 
284  DtRIDParameters();
285 
287  explicit DtRIDParameters( const MAKRti::DtFilename& fileIn );
288 
290  DtRIDParameters( int highestNotifyLevelDuringInitialization,
291  const std::vector<MAKRti::DtString>* const ridExpressions,
292  bool enableRtiExec );
293 
295  DtRIDParameters( const MAKRti::DtString& expression );
296 
298  DtRIDParameters( const DtRIDParameters& orig );
299 
301  virtual ~DtRIDParameters();
302 
305  virtual MAKRti::DtString compareRIDParameters( DtRIDParameters* ridParam ) const;
306 
309  virtual void compareRIDParameters( DtRIDParameters* ridParam,
310  std::map<MAKRti::DtString,int>& intMap,
311  std::map<MAKRti::DtString,float>& floatMap,
312  std::map<MAKRti::DtString,MAKRti::DtString>& stringMap ) const;
313 
316  virtual MAKRti::DtString ridsToConsistencyCheck();
317 
320  virtual void toLispString( MAKRti::DtString& lispString, bool versionHeader = false ) const;
321 
324  virtual bool ridMapFromLispString( const MAKRti::DtString& inputString,
325  std::map<MAKRti::DtString,int>& intMap,
326  std::map<MAKRti::DtString,float>& floatMap,
327  std::map<MAKRti::DtString,MAKRti::DtString>& stringMap ) const;
328 
330  virtual void applySpecifiedRidParameters( const MAKRti::DtString& expression );
331 
333  const StringParameterMap& stringRidParameters() const;
334 
336  const IntParameterMap& intRidParameters() const;
337 
339  const FloatParameterMap& floatRidParameters() const;
340 
342  bool isStringParameter( const MAKRti::DtString& ) const;
343 
345  bool isIntParameter( const MAKRti::DtString& ) const;
346 
348  bool isFloatParameter( const MAKRti::DtString& ) const;
349 
350 
353  virtual bool getParameter( const MAKRti::DtString& name, MAKRti::DtString& value,
354  StringParameterMap::const_iterator& iter ) const;
355  virtual bool getParameter( const MAKRti::DtString& name, MAKRti::DtString& value ) const;
356 
359  virtual bool getParameter( const MAKRti::DtString& name, int& value,
360  IntParameterMap::const_iterator& iter ) const;
361  virtual bool getParameter( const MAKRti::DtString& name, int& value ) const;
362 
365  virtual bool getParameter( const MAKRti::DtString& name, float& value,
366  FloatParameterMap::const_iterator& iter ) const;
367  virtual bool getParameter( const MAKRti::DtString& name, float& value ) const;
368 
369 
372  bool setParameter( const MAKRti::DtString& name, const MAKRti::DtString& val );
373 
376  bool setParameter( const MAKRti::DtString& name, int val );
377 
380  bool setParameter( const MAKRti::DtString& name, float val );
381 
383  const MAKRti::DtMtlEnvironment& mtlEnvironment() const;
384 
386  const MAKRti::DtFilename& ridName() const;
387 
389  const MAKRti::DtFilename forwarderRoutesFile() const;
390 
392  void setForwarderRoutesFile( const MAKRti::DtFilename& file );
393 
395  MAKRti::DtInetAddr destAddr() const;
396 
398  MAKRti::DtInetAddr udpNetworkInterfaceAddr() const;
399 
401  MAKRti::DtString udpNetworkInterfaceAddrString() const;
402 
404  void setUdpNetworkInterfaceAddr( const MAKRti::DtString& networkIFace );
405 
407  MAKRti::DtInetAddr tcpNetworkInterfaceAddr() const;
408 
410  MAKRti::DtString tcpNetworkInterfaceAddrString() const;
411 
413  void setTcpNetworkInterfaceAddr( const MAKRti::DtString& networkIFace );
414 
416  MAKRti::DtString tcpForwarderAddrString() const;
418  void setTcpForwarderAddr( const MAKRti::DtString& addr );
419 
421  MAKRti::DtInetAddr tcpForwarderAddr() const;
422 
424  MAKRti::DtInetAddr minChannel() const;
425 
427  MAKRti::DtInetAddr maxChannel() const;
428 
430  MAKRti::DtInetAddr mcastDiscoveryAddr() const;
431 
434  DtFixedGridConfiguration* fixedGridConfiguration() const;
435 
438  bool buildDdmGrid(const MAKRti::DtFilename& gridConfigFilename);
439 
442  MAKRti::DtInetAddr DMMulticastGroupInterface( MAKRti::DtInetAddr multicastGroup ) const;
443 
445  bool useGroupSocket() const;
446 
448  bool useDMFiltering() const;
449 
451  bool isPreconfiguredRid() const;
452 
454  MAKRti::DtString getRidConfigurationName() const;
455 
457  MAKRti::DtFilename getFullPathToRidFile() const;
458 
460  const std::string& getCreationFileName() const;
461 
463  bool isCreationFileOverriden() const;
464 
466  const MAKRti::DtString& getCreationLispExprs() const;
467 
469  MAKRti::DtFilename saveRestoreDirectoryPath();
470 
472  int maxObjectsPerFederate() const;
473 
475  void setMaxObjectsPerFederate( int val );
476 
478  int transmitLaggardLBTS() const;
479 
481  void setTransmitLaggardLBTS( int yesNo );
482 
485 
486  int enableBigMessage() const;
487  int asynchronousIO() const;
488  int asynchronousCallbacks() const;
489  int asynchronousProcessMessage() const;
490  MAKRti::DtString mcastDevAddrString() const;
491 
493 
498  DtInconsistentRidReaction ridConsistencyChecking() const;
499 
501  void setRidConsistencyChecking( DtInconsistentRidReaction value );
502 
504  DtAsynchronousIOModeEnum processingModel() const;
505 
507  void setProcessingModel( DtAsynchronousIOModeEnum value );
508 
510  const DtDMFilterList& objectMulticastDefinitions() const;
511 
513  const DtDMFilterList& interactionMulticastDefinitions() const;
514 
516  const DtStringList& createFomModules() const;
517 
519  const DtStringList& joinFomModules() const;
520 
522  MAKRti::DtU64 fomMergeTableEnabledMask();
523 
525  const DtInetAddrList& destinationAddrs() const;
526 
528  const DtInetAddrAndPortSet& forwarderGroupAddrs() const;
529 
531  unsigned int forwarderGroupSize();
532 
534  bool useRoutesFile() const;
535  void setUseRoutesFile( bool fileShouldBeUsed );
536 
538  void clearAncillaryForwarderGroupAddrs();
539 
541  const DtUpdateNameRateMap& updateRates() const;
542 
544  const std::vector<DtUpdateRateSubscriptionStruct>& updateRateSubscriptions() const;
545 
547 
548  void setCredentialsType(const std::wstring& type);
549  const std::wstring& credentialsType() const;
551 
553 
554  void setCredentialsData(const void* data, unsigned int size);
555  void setCredentialsData(const std::vector<char>& data);
556  const std::vector<char>& credentialsData() const;
558 
560  void clearCredentials();
561 
563 
564 
568  void fullyCompliantParameters( std::map<MAKRti::DtString,int>& parameters ) const;
569 
571  bool isFullyCompliant() const;
572 
574  bool requiredComplianceParameter( const MAKRti::DtString& parameter ) const;
575 
577  int compliantSettingForParameter( const MAKRti::DtString& parameter ) const;
578 
580  void forceParametersToCompliance();
581 
584  void saveOriginalCompliantSettings();
585 
587  void revertComplianceParametersToOriginalSettings();
588 
591  void sanityCheckRIDParameters();
592 
594  void sanityCheckReliableConnRIDParameters();
595 
598 
599  void sanityCheckAddressFamily();
600  void sanityCheckTcpAddressFamily();
601  void sanityCheckUdpAddressFamily();
602 
604 
606  void printParameters();
607 
612  static void overrideRidParameters( const std::map<std::string,std::string>& params );
613 
616  void applyParameterOverrides();
617 
622  void extractRidExpressions(const std::vector<MAKRti::DtString>& ridExpressions);
623 
627  void applyAmbassadorCreationArguments();
628 
630  void makeLogDirectory() const;
631 
634 
636  typedef std::map<MAKRti::DtString,DtRIDParameters> PreconfiguredRidMap;
637 
640  static const PreconfiguredRidMap& preconfiguredRids();
641 
644  static const DtRIDParameters* preconfiguredRid( const MAKRti::DtString& name );
645 
647 
649  static int maxObjectsPerFederateLimit();
650 
652  static int maxNumFederatesLimit();
653 
655  static const int numBitsInObjectInstanceHandle();
656 
659 
660  DtDECLARE_BOOL_ACCESSOR_MUTATOR( thePreferRidToFedSwitchTableName, preferRidToFedSwitchTable, setPreferRidToFedSwitchTable )
661  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theAutoProvideSwitchName, autoProvideSwitch, setAutoProvideSwitch )
662  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theConveyRegionDesignatorSwitchName, conveyRegionDesignatorSwitch, setConveyRegionDesignatorSwitch )
663  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theConveyProducingFederateSwitchName, conveyProducingFederateSwitch, setConveyProducingFederateSwitch )
664  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theAttributeScopeAdvisorySwitchName, attributeScopeAdvisorySwitch, setAttributeScopeAdvisorySwitch )
665  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theAttributeRelevanceAdvisorySwitchName, attributeRelevanceAdvisorySwitch, setAttributeRelevanceAdvisorySwitch )
666  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theObjectClassRelevanceAdvisorySwitchName, objectClassRelevanceAdvisorySwitch, setObjectClassRelevanceAdvisorySwitch )
667  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theInteractionRelevanceAdvisorySwitchName, interactionRelevanceAdvisorySwitch, setInteractionRelevanceAdvisorySwitch )
668  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theServiceReportingSwitchName, serviceReportingSwitch, setServiceReportingSwitch )
669  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theExceptionReportingSwitchName, exceptionReportingSwitch, setExceptionReportingSwitch )
670  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theDelaySubscriptionEvaluationSwitchName, delaySubscriptionEvaluationSwitch, setDelaySubscriptionEvaluationSwitch )
671 
672  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theAddressDelayRidName, addressDelay, setAddressDelay )
673  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theAutoProvideDelayRidName, autoProvideDelay, setAutoProvideDelay )
674  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theAllProvideUpdateRequestsDelayedRidName, allProvideUpdateRequestsDelayed, setAllProvideUpdateRequestsDelayed )
675  DtDECLARE_INT_ACCESSOR_MUTATOR( theBestEffortSendRetriesRidName, bestEffortSendRetries, setBestEffortSendRetries )
676  DtDECLARE_INT_ACCESSOR_MUTATOR( theBestEffortSendRetryWaitUsecRidName, bestEffortSendRetryWaitUsec, setBestEffortSendRetryWaitUsec )
677  DtDECLARE_INT_ACCESSOR_MUTATOR( theCatchFedAmbExceptionsRidName, catchFedAmbExceptions, setCatchFedAmbExceptions )
678  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theCheckFlagRidName, errorChecking, setErrorChecking )
679  DtDECLARE_INT_ACCESSOR_MUTATOR( theConveyOnlyAvailableDimensionsRidName, conveyOnlyAvailableDimensions, setConveyOnlyAvailableDimensions )
680  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theCrcCheckFedFileRidName, crcCheckFedFile, setCrcCheckFedFile )
681  DtDECLARE_INT_ACCESSOR_MUTATOR( theDataDistMgmtRidName, dataDistMgmt, setDataDistMgmt )
682  DtDECLARE_STRING_ACCESSOR_MUTATOR( theDdmFixedGridFilenameRidName, ddmFixedGridFilename, setDdmFixedGridFilename )
683  DtDECLARE_INT_ACCESSOR_MUTATOR( theDdmFixedGridRidName, ddmFixedGrid, setDdmFixedGrid )
684  DtDECLARE_STRING_ACCESSOR_MUTATOR( theDefaultTimeImplementationRidName, defaultTimeImplementation, setDefaultTimeImplementation )
685  DtDECLARE_STRING_ACCESSOR_MUTATOR( theDefaultFedFileRidName, defaultFedFile, setDefaultFedFile )
686  DtDECLARE_INT_ACCESSOR_MUTATOR( theDeleteOrphansRidName, deleteOrphans, setDeleteOrphans )
687  DtDECLARE_STRING_ACCESSOR_MUTATOR( theDestAddrStringRidName, destAddrString, setDestAddrString )
688  DtDECLARE_INT_ACCESSOR_MUTATOR( theDetachNotifyLevelFromStdOutRidName, detachNotifyLevelFromStdOut, setDetachNotifyLevelFromStdOut )
689  DtDECLARE_INT_ACCESSOR_MUTATOR( theDisableUnlicensedForTwoRidName, disableUnlicensedForTwo, setDisableUnlicensedForTwo )
690  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theDiscoveryMsgBundlingDelayRidName, discoveryMsgBundlingDelay, setDiscoveryMsgBundlingDelay )
691  DtDECLARE_INT_ACCESSOR_MUTATOR( theDistributedForwarderPortRidName, distributedForwarderPort, setDistributedForwarderPort )
692  DtDECLARE_INT_ACCESSOR_MUTATOR( theDistributedUdpForwarderModeRidName, distributedUdpForwarderMode, setDistributedUdpForwarderMode )
693  DtDECLARE_INT_ACCESSOR_MUTATOR( theDistributeFedFileAsynchronouslyRidName, distributeFedFileAsynchronously, setDistributeFedFileAsynchronously )
694  DtDECLARE_INT_ACCESSOR_MUTATOR( theDistributeFedFileRidName, distributeFedFile, setDistributeFedFile )
695  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theFullFedFileDistributionName, fullFedFileDistribution, setFullFedFileDistribution )
696  DtDECLARE_INT_ACCESSOR_MUTATOR( theDualTransmitFirstInteractionRegionsRidName, dualTransmitFirstInteractionRegions, setDualTransmitFirstInteractionRegions )
697  DtDECLARE_INT_ACCESSOR_MUTATOR( theDumpFedRidName, dumpFed, setDumpFed )
698  DtDECLARE_INT_ACCESSOR_MUTATOR( theDumpRidRidName, dumpRid, setDumpRid )
699  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theAutomaticNameReserveEnabledRidName, automaticNameReserveEnabled, setAutomaticNameReserveEnabled )
700  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableBestEffortSendRetryRidName, enableBestEffortSendRetry, setEnableBestEffortSendRetry )
701  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableCheckVersionRidName, enableCheckVersion, setEnableCheckVersion )
702  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableFederateHeartbeatRidName, enableFederateHeartbeat, setEnableFederateHeartbeat )
703  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableFedexMsgRoutingRidName, enableFedexMsgRouting, setEnableFedexMsgRouting )
704  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableFomComponentSortingRidName, enableFomComponentSorting, setEnableFomComponentSorting)
705  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableHlaObjectNamePrefixRidName, enableHlaObjectNamePrefix, setEnableHlaObjectNamePrefix )
706  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableMessageThrottlingRidName, enableMessageThrottling, setEnableMessageThrottling )
707  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableNameReservationRidName, enableNameReservation, setEnableNameReservation )
708  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableLRCNetworkStatisticsMonitoringRidName, lrcNetworkStatisticsMonitoringEnabled, setLrcNetworkStatisticsMonitoringEnabled )
709  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableNetworkTestingRidName, enableNetworkTesting, setEnableNetworkTesting )
710  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnablePacketBundlingRidName, enablePacketBundling, setEnablePacketBundling )
711  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableSaveRestoreWhenUsingRtiexecRidName, enableSaveRestoreWhenUsingRtiexec, setEnableSaveRestoreWhenUsingRtiexec )
712  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableSharedMemoryExecEventLogRidName, enableSharedMemoryExecEventLog, setEnableSharedMemoryExecEventLog )
713  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableTcpCompressionRidName, isTcpCompressionEnabled, setTcpCompressionEnabled )
714  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableTcpSmartForwardingRidName, isTcpSmartForwardingEnabled, setTcpSmartForwardingEnabled )
715  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableUdpCompressionRidName, isUdpCompressionEnabled, setUdpCompressionEnabled )
716  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableUdpSmartForwardingRidName, isUdpSmartForwardingEnabled, setUdpSmartForwardingEnabled )
717  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableUpdateRateReductionRidName, enableUpdateRateReduction, setEnableUpdateRateReduction )
718  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theExecMcastDiscoveryDelayRidName, execMcastDiscoveryDelay, setExecMcastDiscoveryDelay )
719  DtDECLARE_INT_ACCESSOR_MUTATOR( theExtend13and1516interopRidName, extend13and1516interop, setExtend13and1516interop )
720  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theFederateHeartbeatIntervalRidName, federateHeartbeatInterval, setFederateHeartbeatInterval )
721  DtDECLARE_INT_ACCESSOR_MUTATOR( theFederateReconnectPauseRidName, federateReconnectPause, setFederateReconnectPause )
722  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theFederateTimeoutIntervalRidName, federateTimeoutInterval, setFederateTimeoutInterval )
723  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theFlushTimeoutIntervalRidName, flushTimeoutInterval, setFlushTimeoutInterval )
724  DtDECLARE_INT_ACCESSOR_MUTATOR( theFomDataTransportTypeControlRidName, fomDataTransportTypeControl, setFomDataTransportTypeControl )
725  DtDECLARE_INT_ACCESSOR_MUTATOR( theFomModuleMergingRidName, fomModuleMerging, setFomModuleMerging )
726  DtDECLARE_INT_ACCESSOR_MUTATOR( theFomModuleSortingRidName, fomModuleSorting, setFomModuleSorting )
727  DtDECLARE_INT_ACCESSOR_MUTATOR( theForceFullComplianceRidName, forceFullCompliance, setForceFullCompliance )
728  DtDECLARE_INT_ACCESSOR_MUTATOR( theForceUnlicensedForTwoRidName, forceUnlicensedForTwo, setForceUnlicensedForTwo )
729  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theForwardingDelayRidName, forwardingDelay, setForwardingDelay )
730  DtDECLARE_STRING_ACCESSOR_MUTATOR( theImplicitDdmParamsFileRidName, implicitDdmParamsFile, setImplicitDdmParamsFile )
731  DtDECLARE_INT_ACCESSOR_MUTATOR( theInternalMsgReliableWhenUsingRtiexecRidName, internalMsgReliableWhenUsingRtiexec, setInternalMsgReliableWhenUsingRtiexec )
732  DtDECLARE_INT_ACCESSOR_MUTATOR( theInternalMsgSmartForwardingWhenUsingRtiexecRidName, internalMsgSmartForwardingWhenUsingRtiexec, setInternalMsgSmartForwardingWhenUsingRtiexec )
733  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theIOPeriodRidName, IOPeriod, setIOPeriod )
734  DtDECLARE_STRING_ACCESSOR_MUTATOR( theLogFileDirectoryName, logFileDirectory, setLogFileDirectoryName );
735  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theTickWaitPeriodRidName, tickWaitPeriod, setTickWaitPeriod )
736  DtDECLARE_STRING_ACCESSOR_MUTATOR( theLogFileNameRidName, logFileName, setLogFileName )
737  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theLrcMcastDiscoveryDelayRidName, lrcMcastDiscoveryDelay, setLrcMcastDiscoveryDelay )
738  DtDECLARE_STRING_ACCESSOR_MUTATOR( theMaxChannelAddrRidName, maxChannelAddr, setMaxChannelAddr )
739  DtDECLARE_INT_ACCESSOR_MUTATOR( theMaxForwarderQueueRidName, maxForwarderQueue, setMaxForwarderQueue )
740  DtDECLARE_INT_ACCESSOR_MUTATOR( theMaxIOCountRidName, maxIOCount, setMaxIOCount )
741  DtDECLARE_INT_ACCESSOR_MUTATOR( theMaxIOQueueRidName, maxIOQueue, setMaxIOQueue )
742  DtDECLARE_INT_ACCESSOR_MUTATOR( theIOQueueIndicatorRidName, ioQueueIndicator, setIOQueueIndicator)
743  DtDECLARE_INT_ACCESSOR_MUTATOR( theMaxNumFederatesRidName, maxNumFederates, setMaxNumFederates )
744  DtDECLARE_INT_ACCESSOR_MUTATOR( theMaxUdpPacketSizeRidName, maxUdpPacketSize, setMaxUdpPacketSize )
745  DtDECLARE_STRING_ACCESSOR_MUTATOR( theMcastDiscoveryAddrStringRidName, mcastDiscoveryAddrString, setMcastDiscoveryAddrString )
746  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theMcastDiscoveryEnabledRidName, mcastDiscoveryEnabled, setMcastDiscoveryEnabled )
747  DtDECLARE_INT_ACCESSOR_MUTATOR( theMcastDiscoveryPortRidName, mcastDiscoveryPort, setMcastDiscoveryPort )
748  DtDECLARE_INT_ACCESSOR_MUTATOR( theMcastDiscoveryTriesRidName, mcastDiscoveryTries, setMcastDiscoveryTries )
749  DtDECLARE_INT_ACCESSOR_MUTATOR( theMcastTtlRidName, mcastTtl, setMcastTtl )
750  DtDECLARE_STRING_ACCESSOR_MUTATOR( theMinChannelAddrRidName, minChannelAddr, setMinChannelAddr )
751  DtDECLARE_INT_ACCESSOR_MUTATOR( theMomExceptionLoggingRidName, momExceptionLogging, setMomExceptionLogging )
752  DtDECLARE_INT_ACCESSOR_MUTATOR( theMomFederateUpdateIntervalRidName, momFederateUpdateInterval, setMomFederateUpdateInterval )
753  DtDECLARE_STRING_ACCESSOR_MUTATOR( theMomModuleExtensionFileNameRidName, momModuleExtensionFileName, setMomModuleExtensionFileName )
754  DtDECLARE_INT_ACCESSOR_MUTATOR( theMomServiceAvailableRidName, momServiceAvailable, setMomServiceAvailable )
755  DtDECLARE_INT_ACCESSOR_MUTATOR( theNotifyLevelRidName, notifyLevel, setNotifyLevel )
756  DtDECLARE_INT_ACCESSOR_MUTATOR( thePacketBundlingSizeRidName, packetBundlingSize, setPacketBundlingSize )
757  DtDECLARE_INT_ACCESSOR_MUTATOR( theTcpPacketBundlingSizeRidName, tcpPacketBundlingSize, setTcpPacketBundlingSize )
758  DtDECLARE_INT_ACCESSOR_MUTATOR( theUdpPacketBundlingSizeRidName, udpPacketBundlingSize, setUdpPacketBundlingSize )
759  DtDECLARE_BOOL_ACCESSOR_MUTATOR( thePreferLocalFomModulesRidName, preferLocalFomModules, setPreferLocalFomModules )
760  DtDECLARE_INT_ACCESSOR_MUTATOR( theProcessUnknownUpdatesForDiscoveryRidName, processUnknownUpdatesForDiscovery, setProcessUnknownUpdatesForDiscovery )
761  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theReceiveToleranceRidName, receiveTolerance, setReceiveTolerance )
762  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theReconnectEnabledRidName, reconnectEnabled, setReconnectEnabled )
763  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theResignResponseEnabledRidName, resignResponseEnabled, setResignResponseEnabled )
764  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theResponseIntervalRidName, responseInterval, setResponseInterval )
765  DtDECLARE_INT_ACCESSOR_MUTATOR( theReuseLogFileRidName, reuseLogFile, setReuseLogFile )
766  DtDECLARE_INT_ACCESSOR_MUTATOR( theReuseReleasedObjectHandlesRidName, reuseReleasedObjectHandles, setReuseReleasedObjectHandles )
767  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theRouteToAllByDefaultRidName, routeToAllByDefault, setRouteToAllByDefault )
768  DtDECLARE_STRING_ACCESSOR_MUTATOR( theRtiExecLogFileNameRidName, rtiExecLogFileName, setRtiExecLogFileName )
769  DtDECLARE_INT_ACCESSOR_MUTATOR( theRtiExecPerformsLicensingRidName, rtiExecPerformsLicensing, setRtiExecPerformsLicensing )
770  DtDECLARE_INT_ACCESSOR_MUTATOR( theRtiExecReconnectPauseRidName, rtiExecReconnectPause, setRtiExecReconnectPause )
771  DtDECLARE_STRING_ACCESSOR_MUTATOR( theRtiForwarderLogFileNameRidName, rtiForwarderLogFileName, setRtiForwarderLogFileName )
772  DtDECLARE_STRING_ACCESSOR_MUTATOR( theRtiFederationShadowLogFileNameRidName, rtiFederationShadowLogFileName, setRtiFederationShadowLogFileName)
773  DtDECLARE_STRING_ACCESSOR_MUTATOR( theSaveRestoreDirectoryRidName, saveRestoreDirectory, setSaveRestoreDirectory )
774  DtDECLARE_INT_ACCESSOR_MUTATOR( theSaveRestoreTimeoutRidName, saveRestoreTimeout, setSaveRestoreTimeout )
775  DtDECLARE_INT_ACCESSOR_MUTATOR( theSaveTransientMessagesRidName, saveTransientMessages, setSaveTransientMessages )
776  DtDECLARE_INT_ACCESSOR_MUTATOR( theSendDiscoveredClassRidName, sendDiscoveredClass, setSendDiscoveredClass )
777  DtDECLARE_STRING_ACCESSOR_MUTATOR( theSharedMemExecLogFileNameRidName, sharedMemExecLogFileName, setSharedMemExecLogFileName )
778  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theSharedMemoryMgrMaxWaitRidName, sharedMemMgrMaxWait, setSharedMemMgrMaxWait )
779  DtDECLARE_INT_ACCESSOR_MUTATOR( theSharedMemoryModeRidName, useSharedMem, setSharedMemoryMode )
780  DtDECLARE_STRING_ACCESSOR_MUTATOR( theSharedMemoryNameRidName, sharedMemName, setSharedMemName )
781  DtDECLARE_INT_ACCESSOR_MUTATOR( theSharedMemoryQueueLengthRidName, sharedMemLength, setSharedMemLength )
782  DtDECLARE_INT_ACCESSOR_MUTATOR( theSingleCallbackPerTickRidName, singleCallbackPerTick, setSingleCallbackPerTick )
783  DtDECLARE_INT_ACCESSOR_MUTATOR( theSocketReceiveBufferSizeRidName, socketReceiveBufferSize, setSocketReceiveBufferSize )
784  DtDECLARE_INT_ACCESSOR_MUTATOR( theSmartForwardingLevelRidName, smartForwardingLevel, setSmartForwardingLevel )
785  DtDECLARE_INT_ACCESSOR_MUTATOR( theSocketSendBufferSizeRidName, socketSendBufferSize, setSocketSendBufferSize )
786  DtDECLARE_INT_ACCESSOR_MUTATOR( theStrictFomCheckingRidName, strictFomChecking, setStrictFomChecking )
787  DtDECLARE_INT_ACCESSOR_MUTATOR( theStrictNameReservationRidName, strictNameReservation, setStrictNameReservation )
788  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theStrictHLA1516eAttributeOwnershipUnavailableCallbackRidName, strictHLA1516eAttributeOwnershipUnavailableCallback, setStrictHLA1516eAttributeOwnershipUnavailableCallback )
789  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theWaitIOPeriodForBundlingRidName, waitIOPeriodForBundling, setWaitIOPeriodForBundling )
790  DtDECLARE_INT_ACCESSOR_MUTATOR( theTcpBufferSizeRidName, tcpBufferSize, setTcpBufferSize )
791  DtDECLARE_INT_ACCESSOR_MUTATOR( theTcpCompressionLevelRidName, tcpCompressionLevel, setTcpCompressionLevel )
792  DtDECLARE_INT_ACCESSOR_MUTATOR( theTcpNoDelayRidName, tcpNoDelay, setTcpNoDelay )
793  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theThrowExceptionForDisabledServiceRidName, throwExceptionForDisabledService, setThrowExceptionForDisabledService )
794  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theThrowExceptionOnConcurrentAccessRidName, throwExceptionOnConcurrentAccess, setThrowExceptionOnConcurrentAccess )
795  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theThrowExceptionCallNotAllowedFromWithinCallbackRidName, throwExceptionCallNotAllowedFromWithinCallback, setThrowExceptionCallNotAllowedFromWithinCallback )
796  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableWarningsForDisabledServicesRidName, enableWarningsForDisabledServices, setEnableWarningsForDisabledServices )
797  DtDECLARE_INT_ACCESSOR_MUTATOR( theTickFavorsNetworkRidName, tickFavorsNetwork, setTickFavorsNetwork )
798  DtDECLARE_INT_ACCESSOR_MUTATOR( theTimeMgmtRidName, timeMgmt, setTimeMgmt )
799  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theTransmitDelayRidName, transmitDelay, setTransmitDelay )
800  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theTransmitRateRidName, transmitRate, setTransmitRate )
801  DtDECLARE_INT_ACCESSOR_MUTATOR( theUdpCompressionLevelRidName, udpCompressionLevel, setUdpCompressionLevel )
802  DtDECLARE_INT_ACCESSOR_MUTATOR( theUdpPortRidName, udpPort, setUdpPort )
803  DtDECLARE_INT_ACCESSOR_MUTATOR( theTcpPortRidName, tcpPort, setTcpPort )
804  DtDECLARE_INT_ACCESSOR_MUTATOR( theUse32BitsForValueSizeRidName, use32BitsForValueSize, setUse32BitsForValueSize )
805  DtDECLARE_INT_ACCESSOR_MUTATOR( theUseBusyWaitForTickMinMaxRidName, useBusyWaitForTickMinMax, setUseBusyWaitForTickMinMax )
806  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theUseRandomNumberForFedHandleRidName, useRandomNumberForFedHandle, setUseRandomNumberForFedHandle )
807  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theUseRtiExecRidName, useRtiExec, setUseRtiExec )
808  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theConfigureConnectionWithRidRidName, configureConnectionWithRid, setConfigureConnectionWithRid )
809  DtDECLARE_INT_ACCESSOR_MUTATOR( theMomVerboseLevelRidName, momVerboseLevel, setMomVerboseLevel )
810  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theNextEventRequestAndRetractServiceEnabledRidName, nextEventRequestAndRetractServiceEnabled, setNextEventRequestAndRetractServiceEnabled )
811  DtDECLARE_INT_ACCESSOR_MUTATOR(theTestConnectionThresholdRidName, testConnectionThreshold, setTestConnectionThreshold)
812  DtDECLARE_INT_ACCESSOR_MUTATOR(thePeerForwarderReconnectNumberOfTriesRidName, peerForwarderReconnectNumberOfTries, setPeerForwarderReconnectNumberOfTries)
813  DtDECLARE_FLOAT_ACCESSOR_MUTATOR(thePeerForwarderReconnectDelayRidName, peerForwarderReconnectDelay, setPeerForwarderReconnectDelay)
814  DtDECLARE_INT_ACCESSOR_MUTATOR(theLrcMinidumperLevelRidName, lrcMinidumperLevel, setLrcMinidumperLevel)
815  DtDECLARE_BOOL_ACCESSOR_MUTATOR(theMomEvokeCallbackObserverEnabledRidName, momEvokeCallbackObserverEnabled, setMomEvokeCallbackObserverEnabled)
816  DtDECLARE_BOOL_ACCESSOR_MUTATOR(theProfilingEnabledRidName, profilingEnabled, setProfilingEnabled)
817  DtDECLARE_BOOL_ACCESSOR_MUTATOR(theFederationShadowEnabledRidName, federationShadowEnabled, setFederationShadowEnabled)
818  DtDECLARE_STRING_ACCESSOR_MUTATOR(thePlainTextPasswordRidName, plainTextPassword, setPlainTextPassword)
819  DtDECLARE_STRING_ACCESSOR_MUTATOR(theAuthorizerNameRidName, authorizerName, setAuthorizerName)
821 
823 
824 protected:
825 
828  void registerParameters();
829 
832  void loadLispFile( const MAKRti::DtFilename& fileName );
833 
836  void loadLispExpressions();
837 
839  MAKRti::DtMtlEnvironment& mtlEnvironment();
840 
842  virtual void accessorError( const char* parameterName ) const;
843 
845  virtual void mutatorError( const char* parameterName ) const;
846 
855 
856  virtual int* createRidParameter( const MAKRti::DtString& label, const MAKRti::DtString& name, const MAKRti::DtString& toolTip,
857  const MAKRti::DtString& parent, int defaultValue, bool editable, const MAKRti::DtString& range );
858  virtual MAKRti::DtString* createRidParameter( const MAKRti::DtString& label, const MAKRti::DtString& name, const MAKRti::DtString& toolTip,
859  const MAKRti::DtString& parent, const MAKRti::DtString& defaultValue, bool editable, const MAKRti::DtString& range );
860  virtual float* createRidParameter( const MAKRti::DtString& label, const MAKRti::DtString& name, const MAKRti::DtString& toolTip,
861  const MAKRti::DtString& parent, float defaultValue, bool editable, const MAKRti::DtString& range );
862 
864 
867  void copyRidParameters( const DtRIDParameters& orig );
868 
871  void destroyAllRidParameters();
872 
875  void destroyRidParameter( const MAKRti::DtString& name );
876 
884  MAKRti::DtFilename findLispFile();
885 
889  bool extractRidFileName( const MAKRti::DtString& arg );
890 
892  void buildDmFilterList( bool forObjectsElseInteractions );
893 
895  void buildFomModulesList();
896 
899  void initializeParameters( bool forceEnableRtiExec,
900  const MAKRti::DtString& expression, const MAKRti::DtFilename& fileName );
901 
904  void checkUseRtiExec( bool forceEnableRtiExec );
905 
907  void initializeFixedGrid();
908 
910  void populateRidGroups();
911 
913  void initializeFomTableMap();
914 
916  void initializeDestAddrs();
917 
919  void initializeForwarderGroups();
920 
922  void initializeUpdateRates();
923 
926  void verifyPortsAreUnique() const;
927 
929  void verifyIpAddresses() const;
930 
932  void verifyIpAddress( const MAKRti::DtString& ip, const MAKRti::DtString& name = MAKRti::DtString::nullString() ) const;
933 
934  //End initialization Routines.
935 
936 protected:
937 
940 
941  int RTI_maxObjectsPerFederate;
942  int RTI_transmitLaggardLBTS;
943  int RTI_enableBigMessage;
944  int RTI_asynchronousIO;
945  int RTI_asynchronousProcessMessage;
946  int RTI_asynchronousCallbacks;
947  MAKRti::DtString RTI_mcastDevAddrString;
948 
950 
952  MAKRti::DtMtlEnvironment* myEnv;
953 
955  DtInetAddrList myDestAddr;
956 
958  DtInetAddrAndPortSet myForwarderGroupAddrs;
959 
961  DtDMFilterList myIntMulticastDefinition;
962 
964  DtDMFilterList myObjMulticastDefinition;
965 
967  DtStringList myPluginNames;
968 
970  MAKRti::DtFilename myName;
971 
973  MAKRti::DtFilename myForwarderRoutesFile;
974 
976  bool myIsPreconfiguredRidFlag;
977 
980  MAKRti::DtString myPreconfiguredRidName;
981 
983  MAKRti::DtFilename myFullPathToRidFile;
984 
986  DtRidFileSearchStatus myRidFileSearchStatus;
987 
989  MAKRti::DtString myCreationLispExprs;
990 
992  std::string myCreationFileName;
993  bool myIsCreationFileOverriden;
994 
996  DtStringList myCreateFedExFomModules;
997 
999  DtStringList myJoinFedExFomModules;
1000 
1002  DtFixedGridConfiguration* myFixedGridConfiguration;
1003 
1006  DtUpdateNameRateMap myUpdateRates;
1007 
1009  std::vector<DtUpdateRateSubscriptionStruct> myUpdateRateSubscriptions;
1010 
1012  FloatParameterMap myFloatRidParameterDefaults;
1013 
1015  IntParameterMap myIntRidParameterDefaults;
1016 
1018  StringParameterMap myStringRidParameterDefaults;
1019 
1022  std::map<MAKRti::DtString, std::pair<int, int> > myFullyCompliantParameters;
1023 
1025  bool myUseRoutesFile;
1026 
1028  std::wstring myCredentialsType;
1029 
1031  std::vector<char> myCredentials;
1032 
1033  std::map<MAKRti::DtString, MAKRti::DtMergeFomTableMask> myFomTableNameToEnum;
1034  MAKRti::DtU64 myMergeTableEnabledMask;
1035 
1036 protected:
1037 
1038  mutable bool theForwarderRoutesFileRidNameInitialized;
1039  mutable bool theProcessingModelRidNameInitialized;
1040  mutable bool theRidConsistencyCheckingRidNameInitialized;
1041  mutable bool theMaxObjectsPerFederateRidNameInitialized;
1042  mutable bool theTransmitLaggardLBTSRidNameInitialized;
1043  mutable bool theTcpForwarderAddrRidNameInitialized;
1044  mutable bool theUdpNetworkInterfaceAddrRidNameInitialized;
1045  mutable bool theTcpNetworkInterfaceAddrRidNameInitialized;
1046 
1049 
1050  static const int theCompliantUseRtiExec;
1051  static const int theCompliantInternalMsgReliableWhenUsingRtiexec;
1052  static const int theCompliantFomDataTransportTypeControl;
1053  static const int theCompliantTimeMgmt;
1054  static const int theCompliantDataDistMgmt;
1055  static const int theCompliantMomServiceAvailable;
1056  static const int theCompliantMomFederateUpdateInterval;
1057  static const int theCompliantStrictFomChecking;
1058  static const int theCompliantCheckFlag;
1059  static const int theCompliantEnableHlaObjectNamePrefix;
1060  static const int theCompliantSendDiscoveredClass;
1061  static const int theCompliantExtend13and1516interop;
1062  static const int theCompliantProcessUnknownUpdatesForDiscovery;
1063  static const int theCompliantEnableNameReservation;
1064  static const int theCompliantEnableSaveRestoreWhenUsingRtiexec;
1065  static const int theCompliantFomModuleMerging;
1066  static const int theCompliantFomModuleSorting;
1067  static const int theCompliantDistributeFedFile;
1068  static const int theCompliantPreferRidToFedSwitchTable;
1069  static const int theCompliantEnableUpdateRateReduction;
1070  static const int theCompliantThrowExceptionCallNotAllowedFromWithinCallback;
1071  static const int theResignResponseEnabled;
1072  static const int theCompliantUse32BitsForValueSize;
1073  static const int theCompliantDualTransmitFirstInteractionRegions;
1074  static const int theCompliantStrictHLA1516eAttributeOwnershipUnavailableCallback;
1075  static const int theCompliantNextEventRequestAndRetractServiceEnabled;
1076 
1078 
1079 
1082 
1083  const static MAKRti::DtString theOptionalServicesGroupName;
1084  const static MAKRti::DtString theFaultToleranceGroupName;
1085  const static MAKRti::DtString theMessageThrottlingGroupName;
1086  const static MAKRti::DtString theAdvanceConnectionGroupName;
1087  const static MAKRti::DtString theHlaGroupName;
1088  const static MAKRti::DtString theDiagnosticGroupName;
1089  const static MAKRti::DtString theAssistantGroupName;
1090  const static MAKRti::DtString theBundlingGroupName;
1091 
1092  const static MAKRti::DtString theAdvancedNetworkingGroupName;
1093  const static MAKRti::DtString theAdvisoriesGroupName;
1094  const static MAKRti::DtString theAsynchGroupName;
1095  const static MAKRti::DtString theCommunicationsGroupName;
1096  const static MAKRti::DtString theDdmGroupName;
1097  const static MAKRti::DtString theFomGroupName;
1098  const static MAKRti::DtString theForwarderGroupName;
1099  const static MAKRti::DtString theLicensingGroupName;
1100  const static MAKRti::DtString theMomGroupName;
1101  const static MAKRti::DtString theMulticastDiscoveryGroupName;
1102  const static MAKRti::DtString theNameReservationGroupName;
1103  const static MAKRti::DtString theRtiSpyGroupName;
1104  const static MAKRti::DtString theSaveRestoreGroupName;
1105  const static MAKRti::DtString theServiceImplGroupName;
1106  const static MAKRti::DtString theSharedMemoryGroupName;
1107 
1109 
1110 
1113 
1114  const static MAKRti::DtString thePreferRidToFedSwitchTableName;
1115  const static MAKRti::DtString theAutoProvideSwitchName;
1116  const static MAKRti::DtString theConveyRegionDesignatorSwitchName;
1117  const static MAKRti::DtString theConveyProducingFederateSwitchName;
1118  const static MAKRti::DtString theAttributeScopeAdvisorySwitchName;
1119  const static MAKRti::DtString theAttributeRelevanceAdvisorySwitchName;
1120  const static MAKRti::DtString theObjectClassRelevanceAdvisorySwitchName;
1121  const static MAKRti::DtString theInteractionRelevanceAdvisorySwitchName;
1122  const static MAKRti::DtString theServiceReportingSwitchName;
1123  const static MAKRti::DtString theExceptionReportingSwitchName;
1124  const static MAKRti::DtString theDelaySubscriptionEvaluationSwitchName;
1125 
1126  const static MAKRti::DtString theAddressDelayRidName;
1127  const static MAKRti::DtString theAutoProvideDelayRidName;
1128  const static MAKRti::DtString theAllProvideUpdateRequestsDelayedRidName;
1129  const static MAKRti::DtString theBestEffortSendRetriesRidName;
1130  const static MAKRti::DtString theBestEffortSendRetryWaitUsecRidName;
1131  const static MAKRti::DtString theCatchFedAmbExceptionsRidName;
1132  const static MAKRti::DtString theCheckFlagRidName;
1133  const static MAKRti::DtString theConfigureConnectionWithRidRidName;
1134  const static MAKRti::DtString theConveyOnlyAvailableDimensionsRidName;
1135  const static MAKRti::DtString theCrcCheckFedFileRidName;
1136  const static MAKRti::DtString theDataDistMgmtRidName;
1137  const static MAKRti::DtString theDdmFixedGridFilenameRidName;
1138  const static MAKRti::DtString theDdmFixedGridRidName;
1139  const static MAKRti::DtString theDefaultTimeImplementationRidName;
1140  const static MAKRti::DtString theDefaultFedFileRidName;
1141  const static MAKRti::DtString theDeleteOrphansRidName;
1142  const static MAKRti::DtString theDeprecatedAsynchronousIORidName; // PRIVATE RID VARIABLE
1143  const static MAKRti::DtString theDeprecatedEnableBigMessageRidName; // PRIVATE RID VARIABLE
1144  const static MAKRti::DtString theDeprecatedAsynchronousProcessMessageRidName; // PRIVATE RID VARIABLE
1145  const static MAKRti::DtString theDeprecatedAsynchronousCallbacksRidName; // PRIVATE RID VARIABLE
1146  const static MAKRti::DtString theDestAddrStringRidName;
1147  const static MAKRti::DtString theDetachNotifyLevelFromStdOutRidName;
1148  const static MAKRti::DtString theDisableUnlicensedForTwoRidName;
1149  const static MAKRti::DtString theDiscoveryMsgBundlingDelayRidName;
1150  const static MAKRti::DtString theDistributedForwarderPortRidName;
1151  const static MAKRti::DtString theDistributedUdpForwarderModeRidName;
1152  const static MAKRti::DtString theDistributeFedFileAsynchronouslyRidName;
1153  const static MAKRti::DtString theDistributeFedFileRidName;
1154  const static MAKRti::DtString theFullFedFileDistributionName;
1155  const static MAKRti::DtString theDualTransmitFirstInteractionRegionsRidName;
1156  const static MAKRti::DtString theDumpFedRidName;
1157  const static MAKRti::DtString theDumpRidRidName;
1158  const static MAKRti::DtString theEnableBestEffortSendRetryRidName;
1159  const static MAKRti::DtString theAutomaticNameReserveEnabledRidName;
1160  const static MAKRti::DtString theEnableCheckVersionRidName;
1161  const static MAKRti::DtString theEnableFederateHeartbeatRidName;
1162  const static MAKRti::DtString theEnableFedexMsgRoutingRidName;
1163  const static MAKRti::DtString theEnableFomComponentSortingRidName;
1164  const static MAKRti::DtString theEnableHlaObjectNamePrefixRidName;
1165  const static MAKRti::DtString theEnableMessageThrottlingRidName;
1166  const static MAKRti::DtString theEnableNameReservationRidName;
1167  const static MAKRti::DtString theEnableLRCNetworkStatisticsMonitoringRidName;
1168  const static MAKRti::DtString theEnableNetworkTestingRidName;
1169  const static MAKRti::DtString theEnablePacketBundlingRidName;
1170  const static MAKRti::DtString theEnableSaveRestoreWhenUsingRtiexecRidName;
1171  const static MAKRti::DtString theEnableSharedMemoryExecEventLogRidName;
1172  const static MAKRti::DtString theEnableTcpCompressionRidName;
1173  const static MAKRti::DtString theEnableTcpSmartForwardingRidName;
1174  const static MAKRti::DtString theEnableUdpCompressionRidName;
1175  const static MAKRti::DtString theEnableUdpSmartForwardingRidName;
1176  const static MAKRti::DtString theEnableUpdateRateReductionRidName;
1177  const static MAKRti::DtString theExecMcastDiscoveryDelayRidName;
1178  const static MAKRti::DtString theExtend13and1516interopRidName;
1179  const static MAKRti::DtString theFederateHeartbeatIntervalRidName;
1180  const static MAKRti::DtString theFederateReconnectPauseRidName;
1181  const static MAKRti::DtString theFederateTimeoutIntervalRidName;
1182  const static MAKRti::DtString theFlushTimeoutIntervalRidName;
1183  //const static MAKRti::DtString theFomDataReliableWhenUsingRtiexecRidName;
1184  const static MAKRti::DtString theFomDataTransportTypeControlRidName;
1185  const static MAKRti::DtString theFomModuleMergingRidName;
1186  const static MAKRti::DtString theFomModuleSortingRidName;
1187  //const static MAKRti::DtString theForceFomDataReliableRidName;
1188  const static MAKRti::DtString theForceFullComplianceRidName;
1189  const static MAKRti::DtString theForceUnlicensedForTwoRidName;
1190  const static MAKRti::DtString theForwarderRoutesFileRidName; // Doesn't use macro for accessor.
1191  const static MAKRti::DtString theForwardingDelayRidName;
1192  const static MAKRti::DtString theImplicitDdmParamsFileRidName;
1193  const static MAKRti::DtString theInternalMsgReliableWhenUsingRtiexecRidName;
1194  const static MAKRti::DtString theInternalMsgSmartForwardingWhenUsingRtiexecRidName;
1195  const static MAKRti::DtString theIOPeriodRidName;
1196  const static MAKRti::DtString theLogFileDirectoryName;
1197  const static MAKRti::DtString theTickWaitPeriodRidName;
1198  const static MAKRti::DtString theLogFileNameRidName;
1199  const static MAKRti::DtString theLrcMcastDiscoveryDelayRidName;
1200  const static MAKRti::DtString theMaxChannelAddrRidName;
1201  const static MAKRti::DtString theMaxForwarderQueueRidName;
1202  const static MAKRti::DtString theMaxIOCountRidName;
1203  const static MAKRti::DtString theMaxIOQueueRidName;
1204  const static MAKRti::DtString theIOQueueIndicatorRidName;
1205  const static MAKRti::DtString theMaxObjectsPerFederateRidName; // PRIVATE RID VARIABLE
1206  const static MAKRti::DtString theMaxNumFederatesRidName;
1207  const static MAKRti::DtString theMaxUdpPacketSizeRidName;
1208  const static MAKRti::DtString theDeprecatedMcastDevAddrStringRidName; // PRIVATE RID VARIABLE
1209  const static MAKRti::DtString theMcastDiscoveryAddrStringRidName;
1210  const static MAKRti::DtString theMcastDiscoveryEnabledRidName;
1211  const static MAKRti::DtString theMcastDiscoveryPortRidName;
1212  const static MAKRti::DtString theMcastDiscoveryTriesRidName;
1213  const static MAKRti::DtString theMcastTtlRidName;
1214  const static MAKRti::DtString theMinChannelAddrRidName;
1215  const static MAKRti::DtString theMomExceptionLoggingRidName;
1216  const static MAKRti::DtString theMomFederateUpdateIntervalRidName;
1217  const static MAKRti::DtString theMomModuleExtensionFileNameRidName;
1218  const static MAKRti::DtString theMomServiceAvailableRidName;
1219  const static MAKRti::DtString theUdpNetworkInterfaceAddrRidName; // Doesn't use macro for accessor.
1220  const static MAKRti::DtString theTcpNetworkInterfaceAddrRidName; // Doesn't use macro for accessor.
1221  const static MAKRti::DtString theNotifyLevelRidName;
1222  const static MAKRti::DtString thePacketBundlingSizeRidName;
1223  const static MAKRti::DtString theTcpPacketBundlingSizeRidName;
1224  const static MAKRti::DtString theUdpPacketBundlingSizeRidName;
1225  const static MAKRti::DtString thePreferLocalFomModulesRidName;
1226  const static MAKRti::DtString theProcessingModelRidName;
1227  const static MAKRti::DtString theProcessUnknownUpdatesForDiscoveryRidName;
1228  const static MAKRti::DtString theReceiveToleranceRidName;
1229  const static MAKRti::DtString theReconnectEnabledRidName;
1230  const static MAKRti::DtString theResignResponseEnabledRidName;
1231  const static MAKRti::DtString theResponseIntervalRidName;
1232  const static MAKRti::DtString theReuseLogFileRidName;
1233  const static MAKRti::DtString theReuseReleasedObjectHandlesRidName;
1234  const static MAKRti::DtString theRouteToAllByDefaultRidName;
1235  const static MAKRti::DtString theRidConsistencyCheckingRidName; // Doesn't use macro for accessor.
1236  const static MAKRti::DtString theRtiExecLogFileNameRidName;
1237  const static MAKRti::DtString theRtiExecPerformsLicensingRidName;
1238  const static MAKRti::DtString theRtiExecReconnectPauseRidName;
1239  const static MAKRti::DtString theRtiForwarderLogFileNameRidName;
1240  const static MAKRti::DtString theRtiFederationShadowLogFileNameRidName;
1241  const static MAKRti::DtString theSaveRestoreDirectoryRidName;
1242  const static MAKRti::DtString theSaveRestoreTimeoutRidName;
1243  const static MAKRti::DtString theSaveTransientMessagesRidName;
1244  const static MAKRti::DtString theSendDiscoveredClassRidName;
1245  const static MAKRti::DtString theSharedMemExecLogFileNameRidName;
1246  const static MAKRti::DtString theSharedMemoryMgrMaxWaitRidName;
1247  const static MAKRti::DtString theSharedMemoryModeRidName;
1248  const static MAKRti::DtString theSharedMemoryNameRidName;
1249  const static MAKRti::DtString theSharedMemoryQueueLengthRidName;
1250  const static MAKRti::DtString theSingleCallbackPerTickRidName;
1251  const static MAKRti::DtString theSocketReceiveBufferSizeRidName;
1252  const static MAKRti::DtString theSmartForwardingLevelRidName;
1253  const static MAKRti::DtString theSocketSendBufferSizeRidName;
1254  const static MAKRti::DtString theStrictFomCheckingRidName;
1255  const static MAKRti::DtString theStrictNameReservationRidName;
1256  const static MAKRti::DtString theStrictHLA1516eAttributeOwnershipUnavailableCallbackRidName;
1257  const static MAKRti::DtString theWaitIOPeriodForBundlingRidName;
1258  const static MAKRti::DtString theTcpBufferSizeRidName;
1259  const static MAKRti::DtString theTcpCompressionLevelRidName;
1260  const static MAKRti::DtString theTcpForwarderAddrRidName; // Doesn't use macro for accessor.
1261  const static MAKRti::DtString theTcpNoDelayRidName;
1262  const static MAKRti::DtString theThrowExceptionForDisabledServiceRidName;
1263  const static MAKRti::DtString theThrowExceptionOnConcurrentAccessRidName;
1264  const static MAKRti::DtString theThrowExceptionCallNotAllowedFromWithinCallbackRidName;
1265  const static MAKRti::DtString theEnableWarningsForDisabledServicesRidName;
1266  const static MAKRti::DtString theTickFavorsNetworkRidName;
1267  const static MAKRti::DtString theTimeMgmtRidName;
1268  const static MAKRti::DtString theTransmitDelayRidName;
1269  const static MAKRti::DtString theTransmitLaggardLBTSRidName; // PRIVATE RID VARIABLE
1270  const static MAKRti::DtString theTransmitRateRidName;
1271  const static MAKRti::DtString theUdpCompressionLevelRidName;
1272  const static MAKRti::DtString theUdpPortRidName;
1273  const static MAKRti::DtString theTcpPortRidName;
1274  const static MAKRti::DtString theUse32BitsForValueSizeRidName;
1275  const static MAKRti::DtString theUseBusyWaitForTickMinMaxRidName;
1276  const static MAKRti::DtString theUseRandomNumberForFedHandleRidName;
1277  const static MAKRti::DtString theUseRtiExecRidName;
1278  const static MAKRti::DtString theMomVerboseLevelRidName;
1279  const static MAKRti::DtString theNextEventRequestAndRetractServiceEnabledRidName;
1280  const static MAKRti::DtString theTestConnectionThresholdRidName;
1281  const static MAKRti::DtString thePeerForwarderReconnectNumberOfTriesRidName;
1282  const static MAKRti::DtString thePeerForwarderReconnectDelayRidName;
1283  const static MAKRti::DtString theLrcMinidumperLevelRidName;
1284  const static MAKRti::DtString theMomEvokeCallbackObserverEnabledRidName;
1285  const static MAKRti::DtString theProfilingEnabledRidName;
1286  const static MAKRti::DtString theFederationShadowEnabledRidName;
1287  const static MAKRti::DtString thePlainTextPasswordRidName;
1288  const static MAKRti::DtString theAuthorizerNameRidName;
1290 
1293 
1294  const static MAKRti::DtString theDefaultIpv4DestAddr;
1295  const static MAKRti::DtString theDefaultIpv6DestAddr;
1296 
1298 
1301 
1302  const static MAKRti::DtString theDefaultIpv4MinChannelAddr;
1303  const static MAKRti::DtString theDefaultIpv4MaxChannelAddr;
1304  const static MAKRti::DtString theDefaultIpv6MinChannelAddr;
1305  const static MAKRti::DtString theDefaultIpv6MaxChannelAddr;
1306  const static MAKRti::DtString theUseTheDefaultChannelAddrStr;
1307 
1309 
1311  const static int theMaxObjectsPerFederateLimit;
1312 
1314  const static int theMaxNumFederatesLimit;
1315 
1316 
1318  typedef std::map<MAKRti::DtString,MAKRti::DtString> ParameterOverridesMap;
1319  static ParameterOverridesMap theOverrideParameters;
1320 
1321 };
int currVal() const
Definition: RIDparams.h:194
float * myCurrVal
Definition: RIDparams.h:231
const long DtGlobalSpaceHandle
Definition: RIDparams.h:29
bool inclusive
Definition: RIDparams.h:49
MAKRti::DtString myRangeString
Definition: RIDparams.h:173
MAKRti::DtInetAddr address
Definition: RIDparams.h:39
DtRidParameter(const MAKRti::DtString &label, const MAKRti::DtString &name, const MAKRti::DtString &toolTip, const MAKRti::DtString &parentLabel, bool editable, MAKRti::DtString rangeString)
Definition: RIDparams.h:147
DtStringRidParameter(const MAKRti::DtString &label, const MAKRti::DtString &name, const MAKRti::DtString &toolTip, const MAKRti::DtString &parent, const MAKRti::DtString &value, MAKRti::DtString *ref, bool editable, MAKRti::DtString rangeString)
Definition: RIDparams.h:240
const MAKRti::DtString & currVal() const
Definition: RIDparams.h:253
DtFixedGridConfiguration loads and processes a DDM fixed grid configuration file. ...
Definition: fixedGridConfiguration.h:27
DtAsynchronousIOModeEnum
0 == no Async IO 1 == Asynchronous IO, (same as old parameter RTI_asynchronousIO ) 2 == Asynchronous ...
Definition: RIDparams.h:111
MAKRti::DtString myParentLabel
Definition: RIDparams.h:171
This class manages the RTI&#39;s start-up configuration using both MTL variables and functions.
Definition: RIDparams.h:87
MAKRti::DtString myToolTip
Definition: RIDparams.h:170
int defaultVal() const
Definition: RIDparams.h:197
std::map< MAKRti::DtString, DtFloatRidParameter > FloatParameterMap
Definition: RIDparams.h:278
MAKRti::DtString * myCurrVal
Definition: RIDparams.h:260
void setCurrVal(const MAKRti::DtString &val)
Definition: RIDparams.h:255
const MAKRti::DtString & name() const
Definition: RIDparams.h:160
void destroyStoredVar()
Definition: RIDparams.h:196
std::map< MAKRti::DtString, MAKRti::DtString > ParameterOverridesMap
Overridden RID parameters.
Definition: RIDparams.h:1318
DtRidFileSearchStatus
Status of RID file search.
Definition: RIDparams.h:265
float currVal() const
Definition: RIDparams.h:223
bool inclusive
Definition: RIDparams.h:41
std::map< MAKRti::DtString, DtStringRidParameter > StringParameterMap
Definition: RIDparams.h:279
const MAKRti::DtString & rangeString() const
Definition: RIDparams.h:164
~DtIntRidParameter()
Definition: RIDparams.h:192
void setCurrVal(int val)
Definition: RIDparams.h:195
Update rate subscription information.
Definition: RIDparams.h:45
Definition: RIDparams.h:114
DtFomDataTransportTypeControlEnum
0 == ( Default ) FOM data is sent either best effort or reliable based on FOM settings.
Definition: RIDparams.h:122
int myDefaultValue
Definition: RIDparams.h:201
bool isEditable() const
Definition: RIDparams.h:163
#define DtDECLARE_STRING_ACCESSOR_MUTATOR(varName, accessor, mutator)
Declare a string accessor &amp; mutator.
Definition: RIDparams.h:77
MAKRti::DtString className
Definition: RIDparams.h:47
std::map< MAKRti::DtString, DtIntRidParameter > IntParameterMap
Definition: RIDparams.h:277
const MAKRti::DtString & parentLabel() const
Definition: RIDparams.h:162
Generic Rid information.
Definition: RIDparams.h:143
#define DtDECLARE_INT_ACCESSOR_MUTATOR(varName, accessor, mutator)
Declare an integer accessor &amp; mutator.
Definition: RIDparams.h:56
const long DtDefaultPasRegionSetHandle
Definition: RIDparams.h:32
const MAKRti::DtString & label() const
Definition: RIDparams.h:159
DtFloatRidParameter(const MAKRti::DtString &label, const MAKRti::DtString &name, const MAKRti::DtString &toolTip, const MAKRti::DtString &parentLabel, float value, float *ref, bool editable, const MAKRti::DtString &rangeString)
Definition: RIDparams.h:212
DtIntRidParameter(const MAKRti::DtString &label, const MAKRti::DtString &name, const MAKRti::DtString &toolTip, const MAKRti::DtString &parentLabel, int value, int *ref, bool editable, const MAKRti::DtString &rangeString)
Definition: RIDparams.h:183
Int based Rid parameter.
Definition: RIDparams.h:179
std::vector< DtDMFilterStruct > DtDMFilterList
Definition: RIDparams.h:91
std::map< MAKRti::DtString, float > DtUpdateNameRateMap
Map from update rate name to its value.
Definition: RIDparams.h:53
MAKRti::DtInetAddr devAddress
Definition: RIDparams.h:40
MAKRti::DtString myLabel
Definition: RIDparams.h:168
~DtFloatRidParameter()
Definition: RIDparams.h:221
const MAKRti::DtString & toolTip() const
Definition: RIDparams.h:161
#define DtDECLARE_FLOAT_ACCESSOR_MUTATOR(varName, accessor, mutator)
Declare a float accessor &amp; mutator.
Definition: RIDparams.h:70
std::vector< MAKRti::DtInetAddr > DtInetAddrList
Definition: RIDparams.h:93
#define DtDECLARE_BOOL_ACCESSOR_MUTATOR(varName, accessor, mutator)
Declare a bool accessor &amp; mutator.
Definition: RIDparams.h:63
void destroyStoredVar()
Definition: RIDparams.h:225
Definition: RIDparams.h:268
Declaration management multicast filter information.
Definition: RIDparams.h:36
void destroyStoredVar()
Definition: RIDparams.h:254
DtLrcMinidumperLevelEnum
0 == ( Default ) Minidumper is not enabled 1 == Minidumper will prompt the user to generate a ...
Definition: RIDparams.h:134
String based Rid parameter.
Definition: RIDparams.h:237
Float based Rid parameter.
Definition: RIDparams.h:208
void setCurrVal(float val)
Definition: RIDparams.h:224
DtInconsistentRidReaction
0 == no RID consistency checking.
Definition: RIDparams.h:100
const long DtDefaultSpaceHandle
Configuration defaults.
Definition: RIDparams.h:28
const MAKRti::DtString & defaultVal() const
Definition: RIDparams.h:252
MAKRti::DtString rateName
Definition: RIDparams.h:48
bool myEditable
Definition: RIDparams.h:172
Definition: RIDparams.h:272
MAKRti::DtString className
Definition: RIDparams.h:38
int * myCurrVal
Definition: RIDparams.h:202
MAKRti::DtString myDefaultValue
Definition: RIDparams.h:259
#define DT_DLL_RTIUTIL
Definition: rtiMsConfig.h:160
const long DtDefaultRegionSetHandle
Definition: RIDparams.h:31
float defaultVal() const
Definition: RIDparams.h:226
~DtStringRidParameter()
Definition: RIDparams.h:250
std::map< MAKRti::DtString, DtRIDParameters > PreconfiguredRidMap
Returns a const reference to the map of preconfigured RIDs.
Definition: RIDparams.h:636
const long DtDefaultRegionHandle
Definition: RIDparams.h:30
float myDefaultValue
Definition: RIDparams.h:230
std::vector< MAKRti::DtString > DtStringList
Definition: RIDparams.h:92
std::set< DtInetAddrAndPort > DtInetAddrAndPortSet
Definition: RIDparams.h:95
Definition: RIDparams.h:273
MAKRti::DtString myName
Definition: RIDparams.h:169

Document ID: Generated on Sun Jul 20 16:15:30 EDT 2025 from SVN revision 277985
Copyright © 2005-2025 MAK Technologies Inc. All Rights Reserved (www.mak.com)