VR-Forces 4.6.1 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
backend.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2016 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
11 #include "vrfutil/vrfutilDefines.h"
12 #include "vrfutil/rwKeyValueList.h"
13 
15 
16 #include <vl/hostStructs.h>
17 #include <vlutil/vlUtil.h>
18 #include <vlutil/vlInetAddr.h>
19 
20 class DtSimTimeReport;
21 
22 #define DtKindFromKey(key) ((key & 0XFF00) >> 8)
23 #define DtDomainFromKey(key) (key & 0x00FF)
24 #define DtKeyFromKindDomain(kind, domain) ((kind << 8) | (0x00FF & domain))
25 
29 {
30 public:
31  typedef std::map<short, int> ObjectCounts;
32 
34  DtBackend(const DtSimulationAddress& addr, const DtInetAddr& ipAddr, int port,
35  int state, bool isLoaded, DtTime exerciseStartTime,
36  DtTime simTime, double timeMultiplier, DtClock* clock);
37  DtBackend(const DtSimulationAddress& addr);
38  DtBackend();
39  DtBackend(const DtBackend&);
40 
42  virtual ~DtBackend();
43 
44  DtBackend& operator=(const DtBackend&);
45 
47  virtual const DtSimulationAddress& address() const;
48 
50  virtual void printStatus();
51 
53  virtual DtInetAddr inetAddress() const;
55  virtual void setInetAddress(DtInetAddr address);
56 
58  virtual unsigned int port() const;
60  virtual void setPort(unsigned int port);
61 
63  virtual int controlState() const;
65  virtual void setControlState(int controlState);
66 
68  virtual void setScenarioRunId(int);
69  virtual int scenarioRunId() const;
70 
76  virtual DtU32 scenarioCapabilities() const;
77  virtual void setScenarioCapabilities(const DtU32&);
78 
80  virtual bool isLoaded() const;
82  virtual void setIsLoaded(bool b);
83 
85  virtual bool canSimulate() const;
86  virtual void setCanSimulate(bool);
87 
89  virtual bool loadingScenario() const;
90  virtual void setLoadingScenario(bool);
91 
93  virtual bool importingScenario() const;
94  virtual void setImportingScenario(bool);
95 
97  virtual bool hostingDynamicTerrainServer() const;
98  virtual void setHostingDynamicTerrainServer(bool);
99 
101  virtual bool creatingSimulationObjectGroup() const;
102  virtual void setCreatingSimulationObjectGroup(bool);
103 
105  virtual bool closingScenario() const;
106  virtual void setClosingScenario(bool);
107 
109  virtual bool rollingBackScenario() const;
110  virtual void setRollingBackScenario(bool);
111 
113  virtual bool loadedNewScenario() const;
114  virtual void setLoadedNewScenario(bool);
115 
117  virtual const DtTime& lastResponseTime() const;
119  virtual void setLastResponseTime(const DtTime& time);
120 
123  virtual double frameRateMean() const;
124  virtual void setFrameRateMean(double frameRateMean);
125 
128  virtual double frameRateMedian() const;
129  virtual void setFrameRateMedian(double frameRateMedian);
130 
133  virtual double frameRateStandardDeviation() const;
134  virtual void setFrameRateStandardDeviation(double
135  frameRateStandardDeviation);
136 
139  virtual double minFrameRate() const;
140  virtual void setMinFrameRate(double minFrameRate);
141 
144  virtual double maxFrameRate() const;
145  virtual void setMaxFrameRate(double maxFrameRate);
146 
149  virtual double simTimeToRealTimeRatio() const;
150  virtual void setSimTimeToRealTimeRatio(double ratio);
152 
154  virtual void setExericseStartTime(DtTime time);
155  virtual DtTime exerciseStartTime();
156 
159  virtual void setSimTime(DtTime time);
160  virtual DtTime simTime();
161 
163  virtual void setRunDurationTime(DtTime);
164  virtual DtTime runDurationTime() const;
165 
167  virtual void setSimStartSimTime(DtTime time);
168  virtual DtTime simStartSimTime() const;
169 
172  virtual void setTimeMultiplier(double multiplier);
173  virtual double timeMultiplier() const;
174 
177  //virtual void setIsOldParameterDb(bool flag);
178  //virtual bool isOldParameterDb() const;
179 
182  virtual void setIsCurrentParameterDb(bool flag);
183  virtual bool isCurrentParameterDb() const;
184 
185  virtual void setResourceMonitorEnabled(bool flag);
186  virtual bool resourceMonitorEnabled() const;
187 
189  virtual void setIsTimeManaged(bool);
190  virtual bool isTimeManaged() const;
191 
193 
194  virtual void setScenarioName(const DtString& name);
195  virtual const DtString& scenarioName() const;
197 
200 
201  virtual void setScenarioFilename(const DtFilename& name);
202  virtual const DtFilename& scenarioFilename() const;
204 
206 
207  virtual void setSimulationModelSets(const std::vector<DtFilename>&);
208  virtual const std::vector<DtFilename>& simulationModelSets() const;
210 
212 
213  virtual void setTerrainName(const DtFilename& name);
214  virtual const DtFilename& terrainName() const;
216 
218  virtual double dT() const;
219 
222 
223  virtual void setGuiTerrainName(const DtFilename& name);
224  virtual const DtFilename& guiTerrainName() const;
226 
228 
229  virtual void setSimEngineId(DtU32 id);
230  virtual DtU32 simEngineId() const;
232 
236  virtual const DtSettingsObject* lookupSetting(std::string name) const;
237 
242  virtual void setSetting(const DtSettingsObject* object);
243 
245  virtual void copySettingsMap(const DtSettingsMap&);
246 
250  virtual void setObjectCounts(const std::map<DtU16, int>&);
251  virtual void setObjectCounts(const ObjectCounts&);
252  virtual int totalLocalObjects() const;
253  const ObjectCounts& objectCounts() const
254  {
255  return myObjectCounts;
256  }
258 
264 
265  virtual DtRwKeyValueList& scenarioData();
266  virtual const DtRwKeyValueList& scenarioData() const;
268 
269 protected:
270 
271  DtSimulationAddress myAddress;
272  DtInetAddr myInetAddr;
273  DtU32 myPort;
278 
286 
291 
295 
298 
299  //bool myIsOldParameterDb;
301 
303 
305 
307  DtFilename myScenarioFilename;
308 
309  DtFilename myTerrainName;
310  DtFilename myGuiTerrainName;
311 
313 
316 
318 
326 
328 
329  std::vector<DtFilename> mySimulationModelSets;
330 
332 
334 
336 };

Document ID: Generated on Wed Jul 25 16:57:45 EDT 2018 from SVN revision 190790
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)