VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtDisDriver.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2025 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvDis/vrvDis.h>
13 #include <vrvVrl/DtVrlinkDriver.h>
14 #include<string>
15 
17 class DtExerciseConnConfig;
18 
19 namespace makVrv
20 {
24  {
25  protected:
26  static const std::string theSubnetMask;
27  static const std::string thePort;
28  static const std::string theSuppressSelfReflect;
29  static const std::string theExerciseId;
30  static const std::string theSiteId;
31  static const std::string theApplicationNumber;
32  static const std::string theUseIpv6;
33  static const std::string theuseAsynchIO;
34  static const std::string theDestinationAddress;
35  static const std::string theDeviceAddress;
36  static const std::string theReceiveBufferSize;
37  static const std::string theSendBufferSize;
38  static const std::string theUseAbsoluteTimeStamps;
39  static const std::string theMulticastTtl;
40  static const std::string theMulticastAddresses;
41  static const std::string thePublishObservers;
42  static const std::string theViewControlEnabled;
43  static const std::string theOverrideGlobalViewControl;
44  static const std::string theTimeoutProcessing;
45  static const std::string theTimeoutInterval;
46  static const std::string theUseTopoForFlatEarthVectorConversion;
47  static const std::string theDisVersion;
48  static const std::string theConnectionFrameTime;
49 
50  public:
52  DtDisDriver(DtAgentManager& agentManager, const std::string& uniqueName,
53  const std::string& className = "DtDisDriver");
54 
56  virtual ~DtDisDriver();
57 
59  virtual void realizeConfiguration(const DtConfiguration& config);
60 
64  virtual DtConfiguration createConfiguration(bool saveAllParameters) const override;
65 
68  {
69  return *myLocalExConnInitializer;
70  }
71 
73  {
74  return *myLocalExConnInitializer;
75  }
76 
78  virtual bool timeoutProcessing() const;
79 
81  virtual void setTimeoutProcessing(bool enabled);
82 
84  virtual double timeoutInterval() const;
85 
87  virtual void setTimeoutInterval(double interval);
88 
90  static void getDeviceAddressList(std::vector<std::string>& deviceAddrs);
91 
92  protected:
94  virtual DtVrlinkBaseConnection* createConnection();
95 
96  protected:
97  //Local state.
99  DtExerciseConnConfig* myDefaultConfiguration;
102  };
103 
107  {
108  public:
111 
113  virtual ~DtDisDriverCreator();
114 
117  virtual const std::string& extension() const;
118 
120  virtual DtDriver* create(DtAgentManager& agentManager,
121  const std::string& instanceName) const;
122 
123  protected:
124  std::string myFileExtension;
125  };
126 }
static const std::string theSiteId
Definition: DtDisDriver.h:30
double myTimeoutInterval
Definition: DtDisDriver.h:101
static const std::string theDeviceAddress
Definition: DtDisDriver.h:35
const DtVrlApplicationInitializer & exerciseSettings() const
Get the exercise settings.
Definition: DtDisDriver.h:67
static const std::string theSuppressSelfReflect
Definition: DtDisDriver.h:28
The DtDriver for DIS.
Definition: DtDisDriver.h:23
DtVrlApplicationInitializer & exerciseSettings()
Definition: DtDisDriver.h:72
static const std::string thePublishObservers
Definition: DtDisDriver.h:41
std::string myFileExtension
Definition: DtDisDriver.h:124
static const std::string theOverrideGlobalViewControl
Definition: DtDisDriver.h:43
static const std::string theSendBufferSize
Definition: DtDisDriver.h:37
static const std::string theMulticastAddresses
Definition: DtDisDriver.h:40
static const std::string theTimeoutProcessing
Definition: DtDisDriver.h:44
static const std::string theDestinationAddress
Definition: DtDisDriver.h:34
static const std::string theViewControlEnabled
Definition: DtDisDriver.h:42
static const std::string theDisVersion
Definition: DtDisDriver.h:47
static const std::string theConnectionFrameTime
Definition: DtDisDriver.h:48
Contains DLL export macros.
The DtDriver is an abstract class. Developers derive from this to create logic that &quot;directs&quot; things ...
Definition: DtDriver.h:30
static const std::string theuseAsynchIO
Definition: DtDisDriver.h:33
static const std::string theUseAbsoluteTimeStamps
Definition: DtDisDriver.h:38
static const std::string theApplicationNumber
Definition: DtDisDriver.h:31
The DtAgentManager manages the distributed scene object framework. This includes the objects and upda...
Definition: DtAgentManager.h:38
static const std::string theReceiveBufferSize
Definition: DtDisDriver.h:36
bool myTimeoutProcessing
Definition: DtDisDriver.h:100
static const std::string theExerciseId
Definition: DtDisDriver.h:29
DtExerciseConnConfig * myDefaultConfiguration
Definition: DtDisDriver.h:99
DtVrlApplicationInitializer * myLocalExConnInitializer
Definition: DtDisDriver.h:98
static const std::string thePort
Definition: DtDisDriver.h:27
static const std::string theUseTopoForFlatEarthVectorConversion
Definition: DtDisDriver.h:46
The base implementation of a configuration.
Definition: DtConfiguration.h:24
#define DT_DLL_VRVDIS
Definition: vrvDis.h:21
Abstract DtDriver creator.
Definition: DtDriver.h:204
static const std::string theUseIpv6
Definition: DtDisDriver.h:32
Creator class for the DIS driver.
Definition: DtDisDriver.h:106
static const std::string theTimeoutInterval
Definition: DtDisDriver.h:45
static const std::string theSubnetMask
Definition: DtDisDriver.h:26
static const std::string theMulticastTtl
Definition: DtDisDriver.h:39

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)