VR-Exchange 2.10 API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
disBrokerInitializer.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2015 MAK Technologies, Inc.
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #pragma once
11 
14 #include <mtl/multiConfigVariable.h>
15 #include <vlutil/vlTime.h>
16 
17 #if DtDIS
18 #include <vl/exerciseConnInitializerDIS.h>
19 #endif
20 
21 namespace MAKVrExchange
22 {
23 
24  namespace DtDisBroker
25  {
26 
31  {
32  public:
33 
35  DtDisBrokerInitializer( int argc = 0, char** argv = 0,
36  const char* versionString = "1.0" );
37 
40 
42  virtual ~DtDisBrokerInitializer();
43 
45  DtDisBrokerInitializer& operator = ( const DtDisBrokerInitializer& other );
46 
49  virtual DtDisBrokerInitializer* clone() const;
50 
51  virtual DtDisDiscoverableCriteria* discoveryCriteria();
52 
55 
59  virtual int disPort() const;
60  virtual void setDisPort( int );
61 
63  virtual int exerciseId() const;
64  virtual void setExerciseId( int );
65 
67  virtual DtString destinationAddress() const;
68  virtual void setDestinationAddress( const DtString& );
69 
71  virtual DtString deviceAddress() const;
72  virtual void setDeviceAddress( const DtString& );
73 
78  virtual DtString subnetMask() const;
79  virtual void setSubnetMask( const DtString& );
80 
83  const std::vector<DtString>& mcastSubscriptionSet() const;
84  virtual void setMcastSubscriptionSet( const std::vector<DtString>& );
85  virtual void addMcastSubscriptionAddr( const DtString& addr );
86 
89  virtual int socketSendBufferSize() const;
90  virtual void setSocketSendBufferSize( int );
91 
94  virtual int socketReceiveBufferSize() const;
95  virtual void setSocketReceiveBufferSize( int );
96 
98  virtual int multicastTimeToLive() const;
99  virtual void setMulticastTimeToLive( int );
100 
102 
105 
109  virtual bool parseUnknownIds() const;
110  virtual void setParseUnknownIds( bool );
111 
118  virtual bool remapDisIds() const;
119  virtual void setRemapDisIds( bool );
120 
124  virtual bool usePersistentEntityIds() const;
125  virtual void setUsePersistentEntityIds( bool );
126 
128  virtual DtTime interactionWaitListTimeout() const;
129  virtual void setInteractionWaitListTimeout( DtTime );
130 
132  virtual bool sendExpiredWaitListInteractions() const;
133  virtual void setSendExpiredWaitListInteractions( bool );
134 
137  virtual int applicationNumber() const;
138  virtual void setApplicationNumber( int );
139 
141  virtual int siteId() const;
142  virtual void setSiteId( int );
143 
146  virtual bool useAbsoluteTimeStamping() const;
147  virtual void setUseAbsoluteTimeStamping( bool );
148 
151  virtual bool usePerfCounter() const;
152  virtual void setUsePerfCounter(bool);
153 
156  virtual int attributePduStrategy() const;
157  virtual void setAttributePduStrategy( int );
158 
160  virtual double locationThreshold() const;
161  virtual void setLocationThreshold( double );
162 
164  virtual double rotationThreshold() const;
165  virtual void setRotationThreshold( double );
166 
168  virtual int protocolVersionToSend() const;
169  virtual void setProtocolVersionToSend( int );
170 
173  virtual int protocolVersionToRecvMin() const;
174  virtual void setProtocolVersionToRecvMin( int );
175 
178  virtual int protocolVersionToRecvMax() const;
179  virtual void setProtocolVersionToRecvMax( int );
180 
182  virtual bool disableArticulatedParts() const;
183  virtual void setDisableArticulatedParts( bool );
184 
186  virtual bool splitUnderwaterAcousticPdus() const;
187  virtual void setSplitUnderwaterAcousticPdus( bool );
188 
189  // Returns whether or not to send DI-Guy information
190  virtual bool sendDiGuyInformation() const;
191  virtual void setSendDiGuyInformation( bool );
192 
194  virtual bool sendSeesPdus() const;
195  virtual void setSendSeesPdus( bool );
196 
198  virtual bool sendRelativeLocationPdus() const;
199  virtual void setSendRelativeLocationPdus( bool );
200 
202 
205 
208  virtual bool debugGlobalIdMapping() const;
209  virtual void setDebugGlobalIdMapping( bool );
210 
213  virtual bool debugEntityIdMapping() const;
214  virtual void setDebugEntityIdMapping( bool );
215 
218  virtual bool debugEventIdMapping() const;
219  virtual void setDebugEventIdMapping( bool );
220 
221  virtual bool dumpGuiToText() const;
222  virtual void setDumpGuiToText( bool );
223 
225 
228 
233  virtual DtTime heartbeatInterval() const;
234  virtual void setHeartbeatInterval( DtTime );
235 
240  virtual DtTime timeoutInterval() const;
241  virtual void setTimeoutInterval( DtTime );
242 
247  virtual DtTime drainTimeout() const;
248  virtual void setDrainTimeout( DtTime );
249 
251  virtual int numPdusReadPerTimeCheck() const;
252  virtual void setNumPdusReadPerTimeCheck( int );
253 
255 
258 
262  virtual void loadVrlConfigFile( const DtString& fileName );
263 
265  virtual void saveVrlConfigFile( const DtString& filename );
266 
267 #if DtDIS
268  DtVrlApplicationInitializer& vrlApplicationInitializer();
270 #endif
271 
273 
274  protected:
275 
278 
282  DtConfigVariable<int> myDisPort;
283 
287  DtConfigVariable<int> myExerciseId;
288 
294  DtConfigVariable<DtString> myDestinationAddress;
295 
301  DtConfigVariable<DtString> myDeviceAddress;
302 
307  DtConfigVariable<DtString> mySubnetMask;
308 
312  DtMultiConfigVariable<DtString> myMcastSubscriptionSet;
313 
318  DtConfigVariable<int> mySocketSendBufferSize;
319 
325  DtConfigVariable<int> mySocketReceiveBufferSize;
326 
330  DtConfigVariable<int> myMulticastTimeToLive;
331 
333 
336 
341  DtConfigVariable<int> myParseUnknownIdsFlag;
342 
347  DtConfigVariable<int> myRemapDisIds;
348 
354  DtConfigVariable<int> myUsePersistentEntityIds;
355 
359  DtConfigVariable<DtTime> myInteractionWaitListTimeout;
360 
364  DtConfigVariable<bool> mySendExpiredWaitListInteractions;
365 
369  DtConfigVariable<int> myApplicationNumber;
370 
374  DtConfigVariable<int> mySiteId;
375 
380  DtConfigVariable<int> myUseAbsoluteTimeStamping;
381 
386  DtConfigVariable<bool> myUsePerfCounter;
387 
393  DtConfigVariable<int> myAttributePduStrategy;
394 
397  DtConfigVariable<double> myLocationThreshold;
398 
401  DtConfigVariable<double> myRotationThreshold;
402 
406  DtConfigVariable<int> myProtocolVersionToSend;
407 
411  DtConfigVariable<int> myProtocolVersionToRecvMin;
412 
416  DtConfigVariable<int> myProtocolVersionToRecvMax;
417 
419  DtConfigVariable<bool> myDisableArticulatedParts;
420 
425  DtConfigVariable<bool> mySplitUnderwaterAcousticPdus;
426 
429  DtConfigVariable<bool> mySendDiGuyInformation;
430 
433  DtConfigVariable<bool> mySendSeesPdus;
434 
437  DtConfigVariable<bool> mySendRelativeLocationPdus;
438 
440 
443 
448  DtConfigVariable<int> myDebugGlobalIdMapping;
449 
454  DtConfigVariable<int> myDebugEntityIdMapping;
455 
460  DtConfigVariable<int> myDebugEventIdMapping;
461 
466  DtConfigVariable<int> myDumpGuiToText;
467 
469 
472 
476  DtConfigVariable<DtTime> myHeartbeatInterval;
477 
481  DtConfigVariable<DtTime> myTimeoutInterval;
482 
486  DtConfigVariable<DtTime> myDrainTimeout;
487 
491  DtConfigVariable<int> myNumPdusReadPerTimeCheck;
492 
494 
500 
503 
504 #if DtDIS
505  DtVrlApplicationInitializer myVrlInit;
508 #endif
509 
510  };
511 
512  }
513 }
DtConfigVariable< DtTime > myInteractionWaitListTimeout
The amount of time to wait for valid ID mappings for interactions.
Definition: disBrokerInitializer.h:359
A class to initialize DtBroker instances.
Definition: brokerInitializer.h:35
DtConfigVariable< int > myNumPdusReadPerTimeCheck
The max number of PDU&#39;s to read per drain.
Definition: disBrokerInitializer.h:491
DtVariableGroup myDiscoverableCriteriaGroup
Discoverable Criteria As defined by disDiscoverableCriteria.h, this contains the requirements for spe...
Definition: disBrokerInitializer.h:499
DtConfigVariable< int > myProtocolVersionToRecvMax
The maximum DIS protocol version to receive and process.
Definition: disBrokerInitializer.h:416
DtConfigVariable< bool > mySendRelativeLocationPdus
If enabled, outgoing entities and aggregates will publish relative location PDUs if they have a host ...
Definition: disBrokerInitializer.h:437
DtConfigVariable< int > myProtocolVersionToRecvMin
The minimum DIS protocol version to receive and process.
Definition: disBrokerInitializer.h:411
DtConfigVariable< int > mySocketReceiveBufferSize
The size of the receive socket buffer Specified by &quot;socketReceiveBufferSize&quot; in the MTL file...
Definition: disBrokerInitializer.h:325
DtConfigVariable< int > myMulticastTimeToLive
The time to live if using multicast.
Definition: disBrokerInitializer.h:330
DtConfigVariable< DtString > myDeviceAddress
The device address that the broker should use to send PDU&#39;s.
Definition: disBrokerInitializer.h:301
DtConfigVariable< int > myExerciseId
The exercise ID used by the broker.
Definition: disBrokerInitializer.h:287
DtConfigVariable< int > myDumpGuiToText
If enabled will print a line to the log file for every object update, creation and destruction...
Definition: disBrokerInitializer.h:466
DtConfigVariable< double > myLocationThreshold
The location threshold for determining when updates should be sent.
Definition: disBrokerInitializer.h:397
Provides discoverable criteria initialization parameters to the DIS Broker.
Definition: disDiscoverableCriteria.h:25
DtConfigVariable< DtTime > myHeartbeatInterval
The interval at which DIS objects are &quot;heartbeated&quot;.
Definition: disBrokerInitializer.h:476
DtMultiConfigVariable< DtString > myMcastSubscriptionSet
The multicast addresses to subscribe to.
Definition: disBrokerInitializer.h:312
Contains the DtBrokerInitializer class declaration.
DtConfigVariable< bool > myDisableArticulatedParts
Disable Articulated Parts translating flag.
Definition: disBrokerInitializer.h:419
DtConfigVariable< bool > mySendExpiredWaitListInteractions
Whether or not to send interactions from the wait list.
Definition: disBrokerInitializer.h:364
Contains the DtDisDiscoverableCriteria class declaration.
DtConfigVariable< int > myApplicationNumber
The application number used by the broker.
Definition: disBrokerInitializer.h:369
DtConfigVariable< int > mySocketSendBufferSize
Specified by &quot;socketSendBufferSize&quot; in the MTL file.
Definition: disBrokerInitializer.h:318
DtConfigVariable< int > myUseAbsoluteTimeStamping
Specifies whether the broker should use absolute time-stamping Specified by &quot;timeStampAbsolute&quot; in th...
Definition: disBrokerInitializer.h:380
DtConfigVariable< int > myAttributePduStrategy
Specifies whether the broker should drop (1), couple (2 [default]), de-couple (3) or de-couple + send...
Definition: disBrokerInitializer.h:393
DtConfigVariable< DtTime > myTimeoutInterval
The time it takes to timeout a remote DIS object.
Definition: disBrokerInitializer.h:481
DtConfigVariable< int > myDebugEntityIdMapping
Specifies whether the DtEntityIdMapper should print out debug statements.
Definition: disBrokerInitializer.h:454
DtConfigVariable< bool > mySplitUnderwaterAcousticPdus
If enabled, underwater acoustic objects will always be published in separate PDUs.
Definition: disBrokerInitializer.h:425
DtConfigVariable< int > myParseUnknownIdsFlag
Specifies whether the broker should parse unknown IDs.
Definition: disBrokerInitializer.h:341
DtConfigVariable< int > myDebugEventIdMapping
Specifies whether the DtEventIdMapper should print out debug statements.
Definition: disBrokerInitializer.h:460
DtConfigVariable< int > myUsePersistentEntityIds
Specifies whether the broker should keep remap DIS ID&#39;s from session to session.
Definition: disBrokerInitializer.h:354
DtConfigVariable< double > myRotationThreshold
The rotation threshold for determining when updates should be sent.
Definition: disBrokerInitializer.h:401
DtConfigVariable< DtTime > myDrainTimeout
Specifies the amount time to read from the network Specified by &quot;drainTimeout&quot; in the MTL file...
Definition: disBrokerInitializer.h:486
DtConfigVariable< int > myRemapDisIds
Specifies whether the broker should remap DIS ID&#39;s.
Definition: disBrokerInitializer.h:347
DtConfigVariable< DtString > mySubnetMask
The network mask or prefix length to use.
Definition: disBrokerInitializer.h:307
DtConfigVariable< bool > mySendDiGuyInformation
If enabled, outgoing DI-Guy entities will publish DI-Guy PDUs containing additional DI-Guy informatio...
Definition: disBrokerInitializer.h:429
#define DT_DLL_DISBROKER
Definition: brokers/disBroker/disBroker/dllExport.h:20
DtConfigVariable< int > myDisPort
The port number used to receive DIS PDU&#39;s.
Definition: disBrokerInitializer.h:282
DtConfigVariable< DtString > myDestinationAddress
The network address to send DIS PDU&#39;s to.
Definition: disBrokerInitializer.h:294
DtConfigVariable< bool > mySendSeesPdus
If enabled, outgoing entities will publish SEES PDUs containing additional emissions information...
Definition: disBrokerInitializer.h:433
DtConfigVariable< bool > myUsePerfCounter
Specifies whether the broker should use the performance counter Specified by &quot;perfCounter&quot; in the MTL...
Definition: disBrokerInitializer.h:386
DtConfigVariable< int > mySiteId
The site ID used by the broker.
Definition: disBrokerInitializer.h:374
DtConfigVariable< int > myDebugGlobalIdMapping
Specifies whether the DtGlobalIdMapper should print out debug statements.
Definition: disBrokerInitializer.h:448
DtDisDiscoverableCriteria * myDiscoverableCriteria
Helper class that manages discoverable criteria.
Definition: disBrokerInitializer.h:502
DtConfigVariable< int > myProtocolVersionToSend
The DIS protocol version to send PDU&#39;s as.
Definition: disBrokerInitializer.h:406
Provides initialization parameters to the DIS Broker.
Definition: disBrokerInitializer.h:30

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