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  MAKRti::DtInetAddr DMMulticastGroupInterface( MAKRti::DtInetAddr multicastGroup ) const;
439 
441  bool useGroupSocket() const;
442 
444  bool useDMFiltering() const;
445 
447  bool isPreconfiguredRid() const;
448 
450  MAKRti::DtString getRidConfigurationName() const;
451 
453  MAKRti::DtFilename getFullPathToRidFile() const;
454 
456  const std::string& getCreationFileName() const;
457 
459  bool isCreationFileOverriden() const;
460 
462  const MAKRti::DtString& getCreationLispExprs() const;
463 
465  MAKRti::DtFilename saveRestoreDirectoryPath();
466 
468  int maxObjectsPerFederate() const;
469 
471  void setMaxObjectsPerFederate( int val );
472 
474  int transmitLaggardLBTS() const;
475 
477  void setTransmitLaggardLBTS( int yesNo );
478 
481 
482  int enableBigMessage() const;
483  int asynchronousIO() const;
484  int asynchronousCallbacks() const;
485  int asynchronousProcessMessage() const;
486  MAKRti::DtString mcastDevAddrString() const;
487 
489 
494  DtInconsistentRidReaction ridConsistencyChecking() const;
495 
497  void setRidConsistencyChecking( DtInconsistentRidReaction value );
498 
500  DtAsynchronousIOModeEnum processingModel() const;
501 
503  void setProcessingModel( DtAsynchronousIOModeEnum value );
504 
506  const DtDMFilterList& objectMulticastDefinitions() const;
507 
509  const DtDMFilterList& interactionMulticastDefinitions() const;
510 
512  const DtStringList& createFomModules() const;
513 
515  const DtStringList& joinFomModules() const;
516 
518  const DtInetAddrList& destinationAddrs() const;
519 
521  const DtInetAddrAndPortSet& forwarderGroupAddrs() const;
522 
524  unsigned int forwarderGroupSize();
525 
527  bool useRoutesFile() const;
528  void setUseRoutesFile( bool fileShouldBeUsed );
529 
531  void clearAncillaryForwarderGroupAddrs();
532 
534  const DtUpdateNameRateMap& updateRates() const;
535 
537  const std::vector<DtUpdateRateSubscriptionStruct>& updateRateSubscriptions() const;
538 
542  void fullyCompliantParameters( std::map<MAKRti::DtString,int>& parameters ) const;
543 
545  bool isFullyCompliant() const;
546 
548  bool requiredComplianceParameter( const MAKRti::DtString& parameter ) const;
549 
551  int compliantSettingForParameter( const MAKRti::DtString& parameter ) const;
552 
554  void forceParametersToCompliance();
555 
558  void saveOriginalCompliantSettings();
559 
561  void revertComplianceParametersToOriginalSettings();
562 
565  void sanityCheckRIDParameters();
566 
568  void sanityCheckReliableConnRIDParameters();
569 
572 
573  void sanityCheckAddressFamily();
574  void sanityCheckTcpAddressFamily();
575  void sanityCheckUdpAddressFamily();
576 
578 
580  void printParameters();
581 
586  static void overrideRidParameters( const std::map<std::string,std::string>& params );
587 
590  void applyParameterOverrides();
591 
596  void extractRidExpressions(const std::vector<MAKRti::DtString>& ridExpressions);
597 
601  void applyAmbassadorCreationArguments();
602 
604  void makeLogDirectory() const;
605 
608 
610  typedef std::map<MAKRti::DtString,DtRIDParameters> PreconfiguredRidMap;
611 
614  static const PreconfiguredRidMap& preconfiguredRids();
615 
618  static const DtRIDParameters* preconfiguredRid( const MAKRti::DtString& name );
619 
621 
623  static int maxObjectsPerFederateLimit();
624 
626  static int maxNumFederatesLimit();
627 
629  static const int numBitsInObjectInstanceHandle();
630 
633 
634  DtDECLARE_BOOL_ACCESSOR_MUTATOR( thePreferRidToFedSwitchTableName, preferRidToFedSwitchTable, setPreferRidToFedSwitchTable )
635  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theAutoProvideSwitchName, autoProvideSwitch, setAutoProvideSwitch )
636  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theConveyRegionDesignatorSwitchName, conveyRegionDesignatorSwitch, setConveyRegionDesignatorSwitch )
637  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theConveyProducingFederateSwitchName, conveyProducingFederateSwitch, setConveyProducingFederateSwitch )
638  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theAttributeScopeAdvisorySwitchName, attributeScopeAdvisorySwitch, setAttributeScopeAdvisorySwitch )
639  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theAttributeRelevanceAdvisorySwitchName, attributeRelevanceAdvisorySwitch, setAttributeRelevanceAdvisorySwitch )
640  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theObjectClassRelevanceAdvisorySwitchName, objectClassRelevanceAdvisorySwitch, setObjectClassRelevanceAdvisorySwitch )
641  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theInteractionRelevanceAdvisorySwitchName, interactionRelevanceAdvisorySwitch, setInteractionRelevanceAdvisorySwitch )
642  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theServiceReportingSwitchName, serviceReportingSwitch, setServiceReportingSwitch )
643  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theExceptionReportingSwitchName, exceptionReportingSwitch, setExceptionReportingSwitch )
644  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theDelaySubscriptionEvaluationSwitchName, delaySubscriptionEvaluationSwitch, setDelaySubscriptionEvaluationSwitch )
645 
646  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theAddressDelayRidName, addressDelay, setAddressDelay )
647  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theAutoProvideDelayRidName, autoProvideDelay, setAutoProvideDelay )
648  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theAllProvideUpdateRequestsDelayedRidName, allProvideUpdateRequestsDelayed, setAllProvideUpdateRequestsDelayed )
649  DtDECLARE_INT_ACCESSOR_MUTATOR( theBestEffortSendRetriesRidName, bestEffortSendRetries, setBestEffortSendRetries )
650  DtDECLARE_INT_ACCESSOR_MUTATOR( theBestEffortSendRetryWaitUsecRidName, bestEffortSendRetryWaitUsec, setBestEffortSendRetryWaitUsec )
651  DtDECLARE_INT_ACCESSOR_MUTATOR( theCatchFedAmbExceptionsRidName, catchFedAmbExceptions, setCatchFedAmbExceptions )
652  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theCheckFlagRidName, errorChecking, setErrorChecking )
653  DtDECLARE_INT_ACCESSOR_MUTATOR( theConveyOnlyAvailableDimensionsRidName, conveyOnlyAvailableDimensions, setConveyOnlyAvailableDimensions )
654  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theCrcCheckFedFileRidName, crcCheckFedFile, setCrcCheckFedFile )
655  DtDECLARE_INT_ACCESSOR_MUTATOR( theDataDistMgmtRidName, dataDistMgmt, setDataDistMgmt )
656  DtDECLARE_STRING_ACCESSOR_MUTATOR( theDdmFixedGridFilenameRidName, ddmFixedGridFilename, setDdmFixedGridFilename )
657  DtDECLARE_INT_ACCESSOR_MUTATOR( theDdmFixedGridRidName, ddmFixedGrid, setDdmFixedGrid )
658  DtDECLARE_STRING_ACCESSOR_MUTATOR( theDefaultTimeImplementationRidName, defaultTimeImplementation, setDefaultTimeImplementation )
659  DtDECLARE_STRING_ACCESSOR_MUTATOR( theDefaultFedFileRidName, defaultFedFile, setDefaultFedFile )
660  DtDECLARE_INT_ACCESSOR_MUTATOR( theDeleteOrphansRidName, deleteOrphans, setDeleteOrphans )
661  DtDECLARE_STRING_ACCESSOR_MUTATOR( theDestAddrStringRidName, destAddrString, setDestAddrString )
662  DtDECLARE_INT_ACCESSOR_MUTATOR( theDetachNotifyLevelFromStdOutRidName, detachNotifyLevelFromStdOut, setDetachNotifyLevelFromStdOut )
663  DtDECLARE_INT_ACCESSOR_MUTATOR( theDisableUnlicensedForTwoRidName, disableUnlicensedForTwo, setDisableUnlicensedForTwo )
664  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theDiscoveryMsgBundlingDelayRidName, discoveryMsgBundlingDelay, setDiscoveryMsgBundlingDelay )
665  DtDECLARE_INT_ACCESSOR_MUTATOR( theDistributedForwarderPortRidName, distributedForwarderPort, setDistributedForwarderPort )
666  DtDECLARE_INT_ACCESSOR_MUTATOR( theDistributedUdpForwarderModeRidName, distributedUdpForwarderMode, setDistributedUdpForwarderMode )
667  DtDECLARE_INT_ACCESSOR_MUTATOR( theDistributeFedFileAsynchronouslyRidName, distributeFedFileAsynchronously, setDistributeFedFileAsynchronously )
668  DtDECLARE_INT_ACCESSOR_MUTATOR( theDistributeFedFileRidName, distributeFedFile, setDistributeFedFile )
669  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theFullFedFileDistributionName, fullFedFileDistribution, setFullFedFileDistribution )
670  DtDECLARE_INT_ACCESSOR_MUTATOR( theDualTransmitFirstInteractionRegionsRidName, dualTransmitFirstInteractionRegions, setDualTransmitFirstInteractionRegions )
671  DtDECLARE_INT_ACCESSOR_MUTATOR( theDumpFedRidName, dumpFed, setDumpFed )
672  DtDECLARE_INT_ACCESSOR_MUTATOR( theDumpRidRidName, dumpRid, setDumpRid )
673  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theAutomaticNameReserveEnabledRidName, automaticNameReserveEnabled, setAutomaticNameReserveEnabled )
674  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableBestEffortSendRetryRidName, enableBestEffortSendRetry, setEnableBestEffortSendRetry )
675  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableCheckVersionRidName, enableCheckVersion, setEnableCheckVersion )
676  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableFederateHeartbeatRidName, enableFederateHeartbeat, setEnableFederateHeartbeat )
677  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableFedexMsgRoutingRidName, enableFedexMsgRouting, setEnableFedexMsgRouting )
678  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableFomBackwardsCompatibilityRidName, enableFomBackwardsCompatibility, setEnableFomBackwardsCompatibility )
679  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableHlaObjectNamePrefixRidName, enableHlaObjectNamePrefix, setEnableHlaObjectNamePrefix )
680  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableMessageThrottlingRidName, enableMessageThrottling, setEnableMessageThrottling )
681  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableNameReservationRidName, enableNameReservation, setEnableNameReservation )
682  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableLRCNetworkStatisticsMonitoringRidName, lrcNetworkStatisticsMonitoringEnabled, setLrcNetworkStatisticsMonitoringEnabled )
683  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableNetworkTestingRidName, enableNetworkTesting, setEnableNetworkTesting )
684  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnablePacketBundlingRidName, enablePacketBundling, setEnablePacketBundling )
685  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableSaveRestoreWhenUsingRtiexecRidName, enableSaveRestoreWhenUsingRtiexec, setEnableSaveRestoreWhenUsingRtiexec )
686  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableSharedMemoryExecEventLogRidName, enableSharedMemoryExecEventLog, setEnableSharedMemoryExecEventLog )
687  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableTcpCompressionRidName, isTcpCompressionEnabled, setTcpCompressionEnabled )
688  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableTcpSmartForwardingRidName, isTcpSmartForwardingEnabled, setTcpSmartForwardingEnabled )
689  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableUdpCompressionRidName, isUdpCompressionEnabled, setUdpCompressionEnabled )
690  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableUdpSmartForwardingRidName, isUdpSmartForwardingEnabled, setUdpSmartForwardingEnabled )
691  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableUpdateRateReductionRidName, enableUpdateRateReduction, setEnableUpdateRateReduction )
692  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theExecMcastDiscoveryDelayRidName, execMcastDiscoveryDelay, setExecMcastDiscoveryDelay )
693  DtDECLARE_INT_ACCESSOR_MUTATOR( theExtend13and1516interopRidName, extend13and1516interop, setExtend13and1516interop )
694  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theFederateHeartbeatIntervalRidName, federateHeartbeatInterval, setFederateHeartbeatInterval )
695  DtDECLARE_INT_ACCESSOR_MUTATOR( theFederateReconnectPauseRidName, federateReconnectPause, setFederateReconnectPause )
696  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theFederateTimeoutIntervalRidName, federateTimeoutInterval, setFederateTimeoutInterval )
697  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theFlushTimeoutIntervalRidName, flushTimeoutInterval, setFlushTimeoutInterval )
698  DtDECLARE_INT_ACCESSOR_MUTATOR( theFomDataTransportTypeControlRidName, fomDataTransportTypeControl, setFomDataTransportTypeControl )
699  DtDECLARE_INT_ACCESSOR_MUTATOR( theFomModuleMergingRidName, fomModuleMerging, setFomModuleMerging )
700  DtDECLARE_INT_ACCESSOR_MUTATOR( theFomModuleSortingRidName, fomModuleSorting, setFomModuleSorting )
701  DtDECLARE_INT_ACCESSOR_MUTATOR( theForceFullComplianceRidName, forceFullCompliance, setForceFullCompliance )
702  DtDECLARE_INT_ACCESSOR_MUTATOR( theForceUnlicensedForTwoRidName, forceUnlicensedForTwo, setForceUnlicensedForTwo )
703  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theForwardingDelayRidName, forwardingDelay, setForwardingDelay )
704  DtDECLARE_STRING_ACCESSOR_MUTATOR( theImplicitDdmParamsFileRidName, implicitDdmParamsFile, setImplicitDdmParamsFile )
705  DtDECLARE_INT_ACCESSOR_MUTATOR( theInternalMsgReliableWhenUsingRtiexecRidName, internalMsgReliableWhenUsingRtiexec, setInternalMsgReliableWhenUsingRtiexec )
706  DtDECLARE_INT_ACCESSOR_MUTATOR( theInternalMsgSmartForwardingWhenUsingRtiexecRidName, internalMsgSmartForwardingWhenUsingRtiexec, setInternalMsgSmartForwardingWhenUsingRtiexec )
707  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theIOPeriodRidName, IOPeriod, setIOPeriod )
708  DtDECLARE_STRING_ACCESSOR_MUTATOR( theLogFileDirectoryName, logFileDirectory, setLogFileDirectoryName );
709  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theTickWaitPeriodRidName, tickWaitPeriod, setTickWaitPeriod )
710  DtDECLARE_STRING_ACCESSOR_MUTATOR( theLogFileNameRidName, logFileName, setLogFileName )
711  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theLrcMcastDiscoveryDelayRidName, lrcMcastDiscoveryDelay, setLrcMcastDiscoveryDelay )
712  DtDECLARE_STRING_ACCESSOR_MUTATOR( theMaxChannelAddrRidName, maxChannelAddr, setMaxChannelAddr )
713  DtDECLARE_INT_ACCESSOR_MUTATOR( theMaxForwarderQueueRidName, maxForwarderQueue, setMaxForwarderQueue )
714  DtDECLARE_INT_ACCESSOR_MUTATOR( theMaxIOCountRidName, maxIOCount, setMaxIOCount )
715  DtDECLARE_INT_ACCESSOR_MUTATOR( theMaxIOQueueRidName, maxIOQueue, setMaxIOQueue )
716  DtDECLARE_INT_ACCESSOR_MUTATOR( theIOQueueIndicatorRidName, ioQueueIndicator, setIOQueueIndicator)
717  DtDECLARE_INT_ACCESSOR_MUTATOR( theMaxNumFederatesRidName, maxNumFederates, setMaxNumFederates )
718  DtDECLARE_INT_ACCESSOR_MUTATOR( theMaxUdpPacketSizeRidName, maxUdpPacketSize, setMaxUdpPacketSize )
719  DtDECLARE_STRING_ACCESSOR_MUTATOR( theMcastDiscoveryAddrStringRidName, mcastDiscoveryAddrString, setMcastDiscoveryAddrString )
720  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theMcastDiscoveryEnabledRidName, mcastDiscoveryEnabled, setMcastDiscoveryEnabled )
721  DtDECLARE_INT_ACCESSOR_MUTATOR( theMcastDiscoveryPortRidName, mcastDiscoveryPort, setMcastDiscoveryPort )
722  DtDECLARE_INT_ACCESSOR_MUTATOR( theMcastDiscoveryTriesRidName, mcastDiscoveryTries, setMcastDiscoveryTries )
723  DtDECLARE_INT_ACCESSOR_MUTATOR( theMcastTtlRidName, mcastTtl, setMcastTtl )
724  DtDECLARE_STRING_ACCESSOR_MUTATOR( theMinChannelAddrRidName, minChannelAddr, setMinChannelAddr )
725  DtDECLARE_INT_ACCESSOR_MUTATOR( theMomExceptionLoggingRidName, momExceptionLogging, setMomExceptionLogging )
726  DtDECLARE_INT_ACCESSOR_MUTATOR( theMomFederateUpdateIntervalRidName, momFederateUpdateInterval, setMomFederateUpdateInterval )
727  DtDECLARE_STRING_ACCESSOR_MUTATOR( theMomModuleExtensionFileNameRidName, momModuleExtensionFileName, setMomModuleExtensionFileName )
728  DtDECLARE_INT_ACCESSOR_MUTATOR( theMomServiceAvailableRidName, momServiceAvailable, setMomServiceAvailable )
729  DtDECLARE_INT_ACCESSOR_MUTATOR( theNotifyLevelRidName, notifyLevel, setNotifyLevel )
730  DtDECLARE_INT_ACCESSOR_MUTATOR( thePacketBundlingSizeRidName, packetBundlingSize, setPacketBundlingSize )
731  DtDECLARE_INT_ACCESSOR_MUTATOR( theTcpPacketBundlingSizeRidName, tcpPacketBundlingSize, setTcpPacketBundlingSize )
732  DtDECLARE_INT_ACCESSOR_MUTATOR( theUdpPacketBundlingSizeRidName, udpPacketBundlingSize, setUdpPacketBundlingSize )
733  DtDECLARE_BOOL_ACCESSOR_MUTATOR( thePreferLocalFomModulesRidName, preferLocalFomModules, setPreferLocalFomModules )
734  DtDECLARE_INT_ACCESSOR_MUTATOR( theProcessUnknownUpdatesForDiscoveryRidName, processUnknownUpdatesForDiscovery, setProcessUnknownUpdatesForDiscovery )
735  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theReceiveToleranceRidName, receiveTolerance, setReceiveTolerance )
736  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theReconnectEnabledRidName, reconnectEnabled, setReconnectEnabled )
737  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theResignResponseEnabledRidName, resignResponseEnabled, setResignResponseEnabled )
738  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theResponseIntervalRidName, responseInterval, setResponseInterval )
739  DtDECLARE_INT_ACCESSOR_MUTATOR( theReuseLogFileRidName, reuseLogFile, setReuseLogFile )
740  DtDECLARE_INT_ACCESSOR_MUTATOR( theReuseReleasedObjectHandlesRidName, reuseReleasedObjectHandles, setReuseReleasedObjectHandles )
741  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theRouteToAllByDefaultRidName, routeToAllByDefault, setRouteToAllByDefault )
742  DtDECLARE_STRING_ACCESSOR_MUTATOR( theRtiExecLogFileNameRidName, rtiExecLogFileName, setRtiExecLogFileName )
743  DtDECLARE_INT_ACCESSOR_MUTATOR( theRtiExecPerformsLicensingRidName, rtiExecPerformsLicensing, setRtiExecPerformsLicensing )
744  DtDECLARE_INT_ACCESSOR_MUTATOR( theRtiExecReconnectPauseRidName, rtiExecReconnectPause, setRtiExecReconnectPause )
745  DtDECLARE_STRING_ACCESSOR_MUTATOR( theRtiForwarderLogFileNameRidName, rtiForwarderLogFileName, setRtiForwarderLogFileName )
746  DtDECLARE_STRING_ACCESSOR_MUTATOR( theSaveRestoreDirectoryRidName, saveRestoreDirectory, setSaveRestoreDirectory )
747  DtDECLARE_INT_ACCESSOR_MUTATOR( theSaveRestoreTimeoutRidName, saveRestoreTimeout, setSaveRestoreTimeout )
748  DtDECLARE_INT_ACCESSOR_MUTATOR( theSaveTransientMessagesRidName, saveTransientMessages, setSaveTransientMessages )
749  DtDECLARE_INT_ACCESSOR_MUTATOR( theSendDiscoveredClassRidName, sendDiscoveredClass, setSendDiscoveredClass )
750  DtDECLARE_STRING_ACCESSOR_MUTATOR( theSharedMemExecLogFileNameRidName, sharedMemExecLogFileName, setSharedMemExecLogFileName )
751  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theSharedMemoryMgrMaxWaitRidName, sharedMemMgrMaxWait, setSharedMemMgrMaxWait )
752  DtDECLARE_INT_ACCESSOR_MUTATOR( theSharedMemoryModeRidName, useSharedMem, setSharedMemoryMode )
753  DtDECLARE_STRING_ACCESSOR_MUTATOR( theSharedMemoryNameRidName, sharedMemName, setSharedMemName )
754  DtDECLARE_INT_ACCESSOR_MUTATOR( theSharedMemoryQueueLengthRidName, sharedMemLength, setSharedMemLength )
755  DtDECLARE_INT_ACCESSOR_MUTATOR( theSingleCallbackPerTickRidName, singleCallbackPerTick, setSingleCallbackPerTick )
756  DtDECLARE_INT_ACCESSOR_MUTATOR( theSocketReceiveBufferSizeRidName, socketReceiveBufferSize, setSocketReceiveBufferSize )
757  DtDECLARE_INT_ACCESSOR_MUTATOR( theSmartForwardingLevelRidName, smartForwardingLevel, setSmartForwardingLevel )
758  DtDECLARE_INT_ACCESSOR_MUTATOR( theSocketSendBufferSizeRidName, socketSendBufferSize, setSocketSendBufferSize )
759  DtDECLARE_INT_ACCESSOR_MUTATOR( theStrictFomCheckingRidName, strictFomChecking, setStrictFomChecking )
760  DtDECLARE_INT_ACCESSOR_MUTATOR( theStrictNameReservationRidName, strictNameReservation, setStrictNameReservation )
761  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theStrictHLA1516eAttributeOwnershipUnavailableCallbackRidName, strictHLA1516eAttributeOwnershipUnavailableCallback, setStrictHLA1516eAttributeOwnershipUnavailableCallback )
762  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theWaitIOPeriodForBundlingRidName, waitIOPeriodForBundling, setWaitIOPeriodForBundling )
763  DtDECLARE_INT_ACCESSOR_MUTATOR( theTcpBufferSizeRidName, tcpBufferSize, setTcpBufferSize )
764  DtDECLARE_INT_ACCESSOR_MUTATOR( theTcpCompressionLevelRidName, tcpCompressionLevel, setTcpCompressionLevel )
765  DtDECLARE_INT_ACCESSOR_MUTATOR( theTcpNoDelayRidName, tcpNoDelay, setTcpNoDelay )
766  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theThrowExceptionForDisabledServiceRidName, throwExceptionForDisabledService, setThrowExceptionForDisabledService )
767  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theThrowExceptionOnConcurrentAccessRidName, throwExceptionOnConcurrentAccess, setThrowExceptionOnConcurrentAccess )
768  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theThrowExceptionCallNotAllowedFromWithinCallbackRidName, throwExceptionCallNotAllowedFromWithinCallback, setThrowExceptionCallNotAllowedFromWithinCallback )
769  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theEnableWarningsForDisabledServicesRidName, enableWarningsForDisabledServices, setEnableWarningsForDisabledServices )
770  DtDECLARE_INT_ACCESSOR_MUTATOR( theTickFavorsNetworkRidName, tickFavorsNetwork, setTickFavorsNetwork )
771  DtDECLARE_INT_ACCESSOR_MUTATOR( theTimeMgmtRidName, timeMgmt, setTimeMgmt )
772  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theTransmitDelayRidName, transmitDelay, setTransmitDelay )
773  DtDECLARE_FLOAT_ACCESSOR_MUTATOR( theTransmitRateRidName, transmitRate, setTransmitRate )
774  DtDECLARE_INT_ACCESSOR_MUTATOR( theUdpCompressionLevelRidName, udpCompressionLevel, setUdpCompressionLevel )
775  DtDECLARE_INT_ACCESSOR_MUTATOR( theUdpPortRidName, udpPort, setUdpPort )
776  DtDECLARE_INT_ACCESSOR_MUTATOR( theTcpPortRidName, tcpPort, setTcpPort )
777  DtDECLARE_INT_ACCESSOR_MUTATOR( theUse32BitsForValueSizeRidName, use32BitsForValueSize, setUse32BitsForValueSize )
778  DtDECLARE_INT_ACCESSOR_MUTATOR( theUseBusyWaitForTickMinMaxRidName, useBusyWaitForTickMinMax, setUseBusyWaitForTickMinMax )
779  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theUseRandomNumberForFedHandleRidName, useRandomNumberForFedHandle, setUseRandomNumberForFedHandle )
780  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theUseRtiExecRidName, useRtiExec, setUseRtiExec )
781  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theConfigureConnectionWithRidRidName, configureConnectionWithRid, setConfigureConnectionWithRid )
782  DtDECLARE_INT_ACCESSOR_MUTATOR( theMomVerboseLevelRidName, momVerboseLevel, setMomVerboseLevel )
783  DtDECLARE_BOOL_ACCESSOR_MUTATOR( theNextEventRequestAndRetractServiceEnabledRidName, nextEventRequestAndRetractServiceEnabled, setNextEventRequestAndRetractServiceEnabled )
784  DtDECLARE_INT_ACCESSOR_MUTATOR(theTestConnectionThresholdRidName, testConnectionThreshold, setTestConnectionThreshold)
785  DtDECLARE_INT_ACCESSOR_MUTATOR(thePeerForwarderReconnectNumberOfTriesRidName, peerForwarderReconnectNumberOfTries, setPeerForwarderReconnectNumberOfTries)
786  DtDECLARE_FLOAT_ACCESSOR_MUTATOR(thePeerForwarderReconnectDelayRidName, peerForwarderReconnectDelay, setPeerForwarderReconnectDelay)
787  DtDECLARE_INT_ACCESSOR_MUTATOR(theLrcMinidumperLevelRidName, lrcMinidumperLevel, setLrcMinidumperLevel)
788  DtDECLARE_BOOL_ACCESSOR_MUTATOR(theMomEvokeCallbackObserverEnabledRidName, momEvokeCallbackObserverEnabled, setMomEvokeCallbackObserverEnabled)
790 
792 
793 protected:
794 
797  void registerParameters();
798 
801  void loadLispFile( const MAKRti::DtFilename& fileName );
802 
805  void loadLispExpressions();
806 
808  MAKRti::DtMtlEnvironment& mtlEnvironment();
809 
811  virtual void accessorError( const char* parameterName ) const;
812 
814  virtual void mutatorError( const char* parameterName ) const;
815 
824 
825  virtual int* createRidParameter( const MAKRti::DtString& label, const MAKRti::DtString& name, const MAKRti::DtString& toolTip,
826  const MAKRti::DtString& parent, int defaultValue, bool editable, const MAKRti::DtString& range );
827  virtual MAKRti::DtString* createRidParameter( const MAKRti::DtString& label, const MAKRti::DtString& name, const MAKRti::DtString& toolTip,
828  const MAKRti::DtString& parent, const MAKRti::DtString& defaultValue, bool editable, const MAKRti::DtString& range );
829  virtual float* createRidParameter( const MAKRti::DtString& label, const MAKRti::DtString& name, const MAKRti::DtString& toolTip,
830  const MAKRti::DtString& parent, float defaultValue, bool editable, const MAKRti::DtString& range );
831 
833 
836  void copyRidParameters( const DtRIDParameters& orig );
837 
840  void destroyAllRidParameters();
841 
844  void destroyRidParameter( const MAKRti::DtString& name );
845 
853  MAKRti::DtFilename findLispFile();
854 
858  bool extractRidFileName( const MAKRti::DtString& arg );
859 
861  void buildDmFilterList( bool forObjectsElseInteractions );
862 
864  void buildFomModulesList();
865 
868  bool buildDdmGrid( const MAKRti::DtFilename& gridConfigFilename );
869 
872  void initializeParameters( bool forceEnableRtiExec,
873  const MAKRti::DtString& expression, const MAKRti::DtFilename& fileName );
874 
877  void checkUseRtiExec( bool forceEnableRtiExec );
878 
880  void initializeFixedGrid();
881 
883  void populateRidGroups();
884 
886  void initializeDestAddrs();
887 
889  void initializeForwarderGroups();
890 
892  void initializeUpdateRates();
893 
896  void verifyPortsAreUnique() const;
897 
899  void verifyIpAddresses() const;
900 
902  void verifyIpAddress( const MAKRti::DtString& ip, const MAKRti::DtString& name = MAKRti::DtString::nullString() ) const;
903 
904  //End initialization Routines.
905 
906 protected:
907 
910 
911  int RTI_maxObjectsPerFederate;
912  int RTI_transmitLaggardLBTS;
913  int RTI_enableBigMessage;
914  int RTI_asynchronousIO;
915  int RTI_asynchronousProcessMessage;
916  int RTI_asynchronousCallbacks;
917  MAKRti::DtString RTI_mcastDevAddrString;
918 
920 
922  MAKRti::DtMtlEnvironment* myEnv;
923 
925  DtInetAddrList myDestAddr;
926 
928  DtInetAddrAndPortSet myForwarderGroupAddrs;
929 
931  DtDMFilterList myIntMulticastDefinition;
932 
934  DtDMFilterList myObjMulticastDefinition;
935 
937  DtStringList myPluginNames;
938 
940  MAKRti::DtFilename myName;
941 
943  MAKRti::DtFilename myForwarderRoutesFile;
944 
946  bool myIsPreconfiguredRidFlag;
947 
950  MAKRti::DtString myPreconfiguredRidName;
951 
953  MAKRti::DtFilename myFullPathToRidFile;
954 
956  DtRidFileSearchStatus myRidFileSearchStatus;
957 
959  MAKRti::DtString myCreationLispExprs;
960 
962  std::string myCreationFileName;
963  bool myIsCreationFileOverriden;
964 
966  DtStringList myCreateFedExFomModules;
967 
969  DtStringList myJoinFedExFomModules;
970 
972  DtFixedGridConfiguration* myFixedGridConfiguration;
973 
976  DtUpdateNameRateMap myUpdateRates;
977 
979  std::vector<DtUpdateRateSubscriptionStruct> myUpdateRateSubscriptions;
980 
982  FloatParameterMap myFloatRidParameterDefaults;
983 
985  IntParameterMap myIntRidParameterDefaults;
986 
988  StringParameterMap myStringRidParameterDefaults;
989 
992  std::map<MAKRti::DtString, std::pair<int, int> > myFullyCompliantParameters;
993 
995  bool myUseRoutesFile;
996 
997 protected:
998 
999  mutable bool theForwarderRoutesFileRidNameInitialized;
1000  mutable bool theProcessingModelRidNameInitialized;
1001  mutable bool theRidConsistencyCheckingRidNameInitialized;
1002  mutable bool theMaxObjectsPerFederateRidNameInitialized;
1003  mutable bool theTransmitLaggardLBTSRidNameInitialized;
1004  mutable bool theTcpForwarderAddrRidNameInitialized;
1005  mutable bool theUdpNetworkInterfaceAddrRidNameInitialized;
1006  mutable bool theTcpNetworkInterfaceAddrRidNameInitialized;
1007 
1010 
1011  static const int theCompliantUseRtiExec;
1012  static const int theCompliantInternalMsgReliableWhenUsingRtiexec;
1013  static const int theCompliantFomDataTransportTypeControl;
1014  static const int theCompliantTimeMgmt;
1015  static const int theCompliantDataDistMgmt;
1016  static const int theCompliantMomServiceAvailable;
1017  static const int theCompliantMomFederateUpdateInterval;
1018  static const int theCompliantStrictFomChecking;
1019  static const int theCompliantCheckFlag;
1020  static const int theCompliantEnableHlaObjectNamePrefix;
1021  static const int theCompliantSendDiscoveredClass;
1022  static const int theCompliantExtend13and1516interop;
1023  static const int theCompliantProcessUnknownUpdatesForDiscovery;
1024  static const int theCompliantEnableNameReservation;
1025  static const int theCompliantEnableSaveRestoreWhenUsingRtiexec;
1026  static const int theCompliantFomModuleMerging;
1027  static const int theCompliantFomModuleSorting;
1028  static const int theCompliantDistributeFedFile;
1029  static const int theCompliantPreferRidToFedSwitchTable;
1030  static const int theCompliantEnableUpdateRateReduction;
1031  static const int theCompliantThrowExceptionCallNotAllowedFromWithinCallback;
1032  static const int theResignResponseEnabled;
1033  static const int theCompliantUse32BitsForValueSize;
1034  static const int theCompliantDualTransmitFirstInteractionRegions;
1035  static const int theCompliantStrictHLA1516eAttributeOwnershipUnavailableCallback;
1036  static const int theCompliantNextEventRequestAndRetractServiceEnabled;
1037 
1039 
1040 
1043 
1044  const static MAKRti::DtString theOptionalServicesGroupName;
1045  const static MAKRti::DtString theFaultToleranceGroupName;
1046  const static MAKRti::DtString theMessageThrottlingGroupName;
1047  const static MAKRti::DtString theAdvanceConnectionGroupName;
1048  const static MAKRti::DtString theHlaGroupName;
1049  const static MAKRti::DtString theDiagnosticGroupName;
1050  const static MAKRti::DtString theAssistantGroupName;
1051  const static MAKRti::DtString theBundlingGroupName;
1052 
1053  const static MAKRti::DtString theAdvancedNetworkingGroupName;
1054  const static MAKRti::DtString theAdvisoriesGroupName;
1055  const static MAKRti::DtString theAsynchGroupName;
1056  const static MAKRti::DtString theCommunicationsGroupName;
1057  const static MAKRti::DtString theDdmGroupName;
1058  const static MAKRti::DtString theFomGroupName;
1059  const static MAKRti::DtString theForwarderGroupName;
1060  const static MAKRti::DtString theLicensingGroupName;
1061  const static MAKRti::DtString theMomGroupName;
1062  const static MAKRti::DtString theMulticastDiscoveryGroupName;
1063  const static MAKRti::DtString theNameReservationGroupName;
1064  const static MAKRti::DtString theRtiSpyGroupName;
1065  const static MAKRti::DtString theSaveRestoreGroupName;
1066  const static MAKRti::DtString theServiceImplGroupName;
1067  const static MAKRti::DtString theSharedMemoryGroupName;
1068 
1070 
1071 
1074 
1075  const static MAKRti::DtString thePreferRidToFedSwitchTableName;
1076  const static MAKRti::DtString theAutoProvideSwitchName;
1077  const static MAKRti::DtString theConveyRegionDesignatorSwitchName;
1078  const static MAKRti::DtString theConveyProducingFederateSwitchName;
1079  const static MAKRti::DtString theAttributeScopeAdvisorySwitchName;
1080  const static MAKRti::DtString theAttributeRelevanceAdvisorySwitchName;
1081  const static MAKRti::DtString theObjectClassRelevanceAdvisorySwitchName;
1082  const static MAKRti::DtString theInteractionRelevanceAdvisorySwitchName;
1083  const static MAKRti::DtString theServiceReportingSwitchName;
1084  const static MAKRti::DtString theExceptionReportingSwitchName;
1085  const static MAKRti::DtString theDelaySubscriptionEvaluationSwitchName;
1086 
1087  const static MAKRti::DtString theAddressDelayRidName;
1088  const static MAKRti::DtString theAutoProvideDelayRidName;
1089  const static MAKRti::DtString theAllProvideUpdateRequestsDelayedRidName;
1090  const static MAKRti::DtString theBestEffortSendRetriesRidName;
1091  const static MAKRti::DtString theBestEffortSendRetryWaitUsecRidName;
1092  const static MAKRti::DtString theCatchFedAmbExceptionsRidName;
1093  const static MAKRti::DtString theCheckFlagRidName;
1094  const static MAKRti::DtString theConfigureConnectionWithRidRidName;
1095  const static MAKRti::DtString theConveyOnlyAvailableDimensionsRidName;
1096  const static MAKRti::DtString theCrcCheckFedFileRidName;
1097  const static MAKRti::DtString theDataDistMgmtRidName;
1098  const static MAKRti::DtString theDdmFixedGridFilenameRidName;
1099  const static MAKRti::DtString theDdmFixedGridRidName;
1100  const static MAKRti::DtString theDefaultTimeImplementationRidName;
1101  const static MAKRti::DtString theDefaultFedFileRidName;
1102  const static MAKRti::DtString theDeleteOrphansRidName;
1103  const static MAKRti::DtString theDeprecatedAsynchronousIORidName; // PRIVATE RID VARIABLE
1104  const static MAKRti::DtString theDeprecatedEnableBigMessageRidName; // PRIVATE RID VARIABLE
1105  const static MAKRti::DtString theDeprecatedAsynchronousProcessMessageRidName; // PRIVATE RID VARIABLE
1106  const static MAKRti::DtString theDeprecatedAsynchronousCallbacksRidName; // PRIVATE RID VARIABLE
1107  const static MAKRti::DtString theDestAddrStringRidName;
1108  const static MAKRti::DtString theDetachNotifyLevelFromStdOutRidName;
1109  const static MAKRti::DtString theDisableUnlicensedForTwoRidName;
1110  const static MAKRti::DtString theDiscoveryMsgBundlingDelayRidName;
1111  const static MAKRti::DtString theDistributedForwarderPortRidName;
1112  const static MAKRti::DtString theDistributedUdpForwarderModeRidName;
1113  const static MAKRti::DtString theDistributeFedFileAsynchronouslyRidName;
1114  const static MAKRti::DtString theDistributeFedFileRidName;
1115  const static MAKRti::DtString theFullFedFileDistributionName;
1116  const static MAKRti::DtString theDualTransmitFirstInteractionRegionsRidName;
1117  const static MAKRti::DtString theDumpFedRidName;
1118  const static MAKRti::DtString theDumpRidRidName;
1119  const static MAKRti::DtString theEnableBestEffortSendRetryRidName;
1120  const static MAKRti::DtString theAutomaticNameReserveEnabledRidName;
1121  const static MAKRti::DtString theEnableCheckVersionRidName;
1122  const static MAKRti::DtString theEnableFederateHeartbeatRidName;
1123  const static MAKRti::DtString theEnableFedexMsgRoutingRidName;
1124  const static MAKRti::DtString theEnableFomBackwardsCompatibilityRidName;
1125  const static MAKRti::DtString theEnableHlaObjectNamePrefixRidName;
1126  const static MAKRti::DtString theEnableMessageThrottlingRidName;
1127  const static MAKRti::DtString theEnableNameReservationRidName;
1128  const static MAKRti::DtString theEnableLRCNetworkStatisticsMonitoringRidName;
1129  const static MAKRti::DtString theEnableNetworkTestingRidName;
1130  const static MAKRti::DtString theEnablePacketBundlingRidName;
1131  const static MAKRti::DtString theEnableSaveRestoreWhenUsingRtiexecRidName;
1132  const static MAKRti::DtString theEnableSharedMemoryExecEventLogRidName;
1133  const static MAKRti::DtString theEnableTcpCompressionRidName;
1134  const static MAKRti::DtString theEnableTcpSmartForwardingRidName;
1135  const static MAKRti::DtString theEnableUdpCompressionRidName;
1136  const static MAKRti::DtString theEnableUdpSmartForwardingRidName;
1137  const static MAKRti::DtString theEnableUpdateRateReductionRidName;
1138  const static MAKRti::DtString theExecMcastDiscoveryDelayRidName;
1139  const static MAKRti::DtString theExtend13and1516interopRidName;
1140  const static MAKRti::DtString theFederateHeartbeatIntervalRidName;
1141  const static MAKRti::DtString theFederateReconnectPauseRidName;
1142  const static MAKRti::DtString theFederateTimeoutIntervalRidName;
1143  const static MAKRti::DtString theFlushTimeoutIntervalRidName;
1144  //const static MAKRti::DtString theFomDataReliableWhenUsingRtiexecRidName;
1145  const static MAKRti::DtString theFomDataTransportTypeControlRidName;
1146  const static MAKRti::DtString theFomModuleMergingRidName;
1147  const static MAKRti::DtString theFomModuleSortingRidName;
1148  //const static MAKRti::DtString theForceFomDataReliableRidName;
1149  const static MAKRti::DtString theForceFullComplianceRidName;
1150  const static MAKRti::DtString theForceUnlicensedForTwoRidName;
1151  const static MAKRti::DtString theForwarderRoutesFileRidName; // Doesn't use macro for accessor.
1152  const static MAKRti::DtString theForwardingDelayRidName;
1153  const static MAKRti::DtString theImplicitDdmParamsFileRidName;
1154  const static MAKRti::DtString theInternalMsgReliableWhenUsingRtiexecRidName;
1155  const static MAKRti::DtString theInternalMsgSmartForwardingWhenUsingRtiexecRidName;
1156  const static MAKRti::DtString theIOPeriodRidName;
1157  const static MAKRti::DtString theLogFileDirectoryName;
1158  const static MAKRti::DtString theTickWaitPeriodRidName;
1159  const static MAKRti::DtString theLogFileNameRidName;
1160  const static MAKRti::DtString theLrcMcastDiscoveryDelayRidName;
1161  const static MAKRti::DtString theMaxChannelAddrRidName;
1162  const static MAKRti::DtString theMaxForwarderQueueRidName;
1163  const static MAKRti::DtString theMaxIOCountRidName;
1164  const static MAKRti::DtString theMaxIOQueueRidName;
1165  const static MAKRti::DtString theIOQueueIndicatorRidName;
1166  const static MAKRti::DtString theMaxObjectsPerFederateRidName; // PRIVATE RID VARIABLE
1167  const static MAKRti::DtString theMaxNumFederatesRidName;
1168  const static MAKRti::DtString theMaxUdpPacketSizeRidName;
1169  const static MAKRti::DtString theDeprecatedMcastDevAddrStringRidName; // PRIVATE RID VARIABLE
1170  const static MAKRti::DtString theMcastDiscoveryAddrStringRidName;
1171  const static MAKRti::DtString theMcastDiscoveryEnabledRidName;
1172  const static MAKRti::DtString theMcastDiscoveryPortRidName;
1173  const static MAKRti::DtString theMcastDiscoveryTriesRidName;
1174  const static MAKRti::DtString theMcastTtlRidName;
1175  const static MAKRti::DtString theMinChannelAddrRidName;
1176  const static MAKRti::DtString theMomExceptionLoggingRidName;
1177  const static MAKRti::DtString theMomFederateUpdateIntervalRidName;
1178  const static MAKRti::DtString theMomModuleExtensionFileNameRidName;
1179  const static MAKRti::DtString theMomServiceAvailableRidName;
1180  const static MAKRti::DtString theUdpNetworkInterfaceAddrRidName; // Doesn't use macro for accessor.
1181  const static MAKRti::DtString theTcpNetworkInterfaceAddrRidName; // Doesn't use macro for accessor.
1182  const static MAKRti::DtString theNotifyLevelRidName;
1183  const static MAKRti::DtString thePacketBundlingSizeRidName;
1184  const static MAKRti::DtString theTcpPacketBundlingSizeRidName;
1185  const static MAKRti::DtString theUdpPacketBundlingSizeRidName;
1186  const static MAKRti::DtString thePreferLocalFomModulesRidName;
1187  const static MAKRti::DtString theProcessingModelRidName;
1188  const static MAKRti::DtString theProcessUnknownUpdatesForDiscoveryRidName;
1189  const static MAKRti::DtString theReceiveToleranceRidName;
1190  const static MAKRti::DtString theReconnectEnabledRidName;
1191  const static MAKRti::DtString theResignResponseEnabledRidName;
1192  const static MAKRti::DtString theResponseIntervalRidName;
1193  const static MAKRti::DtString theReuseLogFileRidName;
1194  const static MAKRti::DtString theReuseReleasedObjectHandlesRidName;
1195  const static MAKRti::DtString theRouteToAllByDefaultRidName;
1196  const static MAKRti::DtString theRidConsistencyCheckingRidName; // Doesn't use macro for accessor.
1197  const static MAKRti::DtString theRtiExecLogFileNameRidName;
1198  const static MAKRti::DtString theRtiExecPerformsLicensingRidName;
1199  const static MAKRti::DtString theRtiExecReconnectPauseRidName;
1200  const static MAKRti::DtString theRtiForwarderLogFileNameRidName;
1201  const static MAKRti::DtString theSaveRestoreDirectoryRidName;
1202  const static MAKRti::DtString theSaveRestoreTimeoutRidName;
1203  const static MAKRti::DtString theSaveTransientMessagesRidName;
1204  const static MAKRti::DtString theSendDiscoveredClassRidName;
1205  const static MAKRti::DtString theSharedMemExecLogFileNameRidName;
1206  const static MAKRti::DtString theSharedMemoryMgrMaxWaitRidName;
1207  const static MAKRti::DtString theSharedMemoryModeRidName;
1208  const static MAKRti::DtString theSharedMemoryNameRidName;
1209  const static MAKRti::DtString theSharedMemoryQueueLengthRidName;
1210  const static MAKRti::DtString theSingleCallbackPerTickRidName;
1211  const static MAKRti::DtString theSocketReceiveBufferSizeRidName;
1212  const static MAKRti::DtString theSmartForwardingLevelRidName;
1213  const static MAKRti::DtString theSocketSendBufferSizeRidName;
1214  const static MAKRti::DtString theStrictFomCheckingRidName;
1215  const static MAKRti::DtString theStrictNameReservationRidName;
1216  const static MAKRti::DtString theStrictHLA1516eAttributeOwnershipUnavailableCallbackRidName;
1217  const static MAKRti::DtString theWaitIOPeriodForBundlingRidName;
1218  const static MAKRti::DtString theTcpBufferSizeRidName;
1219  const static MAKRti::DtString theTcpCompressionLevelRidName;
1220  const static MAKRti::DtString theTcpForwarderAddrRidName; // Doesn't use macro for accessor.
1221  const static MAKRti::DtString theTcpNoDelayRidName;
1222  const static MAKRti::DtString theThrowExceptionForDisabledServiceRidName;
1223  const static MAKRti::DtString theThrowExceptionOnConcurrentAccessRidName;
1224  const static MAKRti::DtString theThrowExceptionCallNotAllowedFromWithinCallbackRidName;
1225  const static MAKRti::DtString theEnableWarningsForDisabledServicesRidName;
1226  const static MAKRti::DtString theTickFavorsNetworkRidName;
1227  const static MAKRti::DtString theTimeMgmtRidName;
1228  const static MAKRti::DtString theTransmitDelayRidName;
1229  const static MAKRti::DtString theTransmitLaggardLBTSRidName; // PRIVATE RID VARIABLE
1230  const static MAKRti::DtString theTransmitRateRidName;
1231  const static MAKRti::DtString theUdpCompressionLevelRidName;
1232  const static MAKRti::DtString theUdpPortRidName;
1233  const static MAKRti::DtString theTcpPortRidName;
1234  const static MAKRti::DtString theUse32BitsForValueSizeRidName;
1235  const static MAKRti::DtString theUseBusyWaitForTickMinMaxRidName;
1236  const static MAKRti::DtString theUseRandomNumberForFedHandleRidName;
1237  const static MAKRti::DtString theUseRtiExecRidName;
1238  const static MAKRti::DtString theMomVerboseLevelRidName;
1239  const static MAKRti::DtString theNextEventRequestAndRetractServiceEnabledRidName;
1240  const static MAKRti::DtString theTestConnectionThresholdRidName;
1241  const static MAKRti::DtString thePeerForwarderReconnectNumberOfTriesRidName;
1242  const static MAKRti::DtString thePeerForwarderReconnectDelayRidName;
1243  const static MAKRti::DtString theLrcMinidumperLevelRidName;
1244  const static MAKRti::DtString theMomEvokeCallbackObserverEnabledRidName;
1245 
1247 
1250 
1251  const static MAKRti::DtString theDefaultIpv4DestAddr;
1252  const static MAKRti::DtString theDefaultIpv6DestAddr;
1253 
1255 
1258 
1259  const static MAKRti::DtString theDefaultIpv4MinChannelAddr;
1260  const static MAKRti::DtString theDefaultIpv4MaxChannelAddr;
1261  const static MAKRti::DtString theDefaultIpv6MinChannelAddr;
1262  const static MAKRti::DtString theDefaultIpv6MaxChannelAddr;
1263  const static MAKRti::DtString theUseTheDefaultChannelAddrStr;
1264 
1266 
1268  const static int theMaxObjectsPerFederateLimit;
1269 
1271  const static int theMaxNumFederatesLimit;
1272 
1273 
1275  typedef std::map<MAKRti::DtString,MAKRti::DtString> ParameterOverridesMap;
1276  static ParameterOverridesMap theOverrideParameters;
1277 
1278 };
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:1275
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:127
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:610
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 Thu May 11 15:55:32 EDT 2023 from SVN revision 254743
Copyright © 2005-2020 MAK Technologies Inc. All Rights Reserved (www.mak.com)