VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ifStatus.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2014 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
12 #include <vlpi/netStructs.h>
13 #include <vlutil/vlUtil.h>
14 #include <vlutil/vlInetAddr.h>
15 #include "vrfmsgs/vrfmsgsDefines.h"
16 #include <vrfutil/backend.h>
17 
18 const int DtIfStatusVersion = 10;
19 
27 
34 {
52 };
53 
54 DT_DLL_vrfmsgs bool hasCapability(const DtU32& capabilitiesBitfield, DtScenarioCapabilities bitNumber);
55 DT_DLL_vrfmsgs void setCapability(DtU32& capabilitiesBitfield, DtScenarioCapabilities bitNumber, bool value);
56 
57 const DtU32 DtScenarioCapabilities_All = 0xffff;
58 
60 {
61 public:
62  typedef std::map<DtU16, int> ObjectCounts;
63 
65  DtIfStatus();
66 
68  virtual ~DtIfStatus() override;
69 
71  DtIfStatus(const DtIfStatus& orig);
72 
74  DtIfStatus& operator=(const DtIfStatus& orig);
75 
77  virtual int type() const override;
78 
79  virtual DtSimInterfaceContent * clone() const override;
80 
82  virtual DtTime exerciseStartTime() const;
83  virtual void setExerciseStartTime(DtTime time);
84 
87  virtual DtTime simTime() const;
88  virtual void setSimTime(DtTime time);
89 
91  virtual DtTime simStartSimTime() const;
92  virtual void setSimStartSimTime(DtTime time);
93 
96  virtual void setRunDurationTime(double);
97  virtual double runDurationTime() const;
98 
101  virtual double timeMultiplier() const;
102  virtual void setTimeMultiplier(double timeMultiplier);
103 
106  virtual int controlState() const;
107  virtual void setControlState(int state);
108 
109  virtual DtInetAddr ipAddress() const;
110  virtual void setIpAddress(DtInetAddr ipAddr);
111 
112  virtual unsigned int port() const;
113  virtual void setPort(unsigned int port);
114 
115  virtual int appIdRangeMax() const;
116  virtual void setAppIdRangeMax(int);
117 
118  virtual bool isFinalStatusMsg() const;
119  virtual void setIsFinalStatusMsg(bool finalMsg);
120 
124  virtual void addLocalObject(int kind, int domain);
125  virtual void removeLocalObject(int kind, int domain);
126  virtual int totalLocalObjects() const;
127  const ObjectCounts& objectCounts() const
128  {
129  return myObjectCounts;
130  }
131 
133  virtual void clear();
134 
136 
137  //virtual bool isOldParameterDb() const;
138  //virtual void setIsOldParameterDb(bool isOldParameterDb);
139 
141  virtual int scenarioRunId() const;
142  virtual void setScenarioRunId(int);
143 
144  virtual bool isCurrentParameterDb() const;
145  virtual void setIsCurrentParameterDb(bool isCurrentParameterDb);
146 
147  virtual bool isResourceMonitorEnabled() const;
148  virtual void setIsResourceMonitorEnabled(bool isCurrentParameterDb);
149 
153  virtual bool isLoaded() const;
154  virtual void setIsLoaded(const bool loaded);
155 
158 
159  virtual unsigned int simEngineId() const;
160  virtual void setSimEngineId(unsigned int id);
162 
165  virtual void setLoadingScenario(bool);
166  virtual bool loadingScenario() const;
168 
171  virtual void setSavingScenario(bool);
172  virtual bool savingScenario() const;
174 
177  virtual void setReinitializingScenario(bool);
178  virtual bool reinitializingScenario() const;
180 
183  virtual void setImportingScenario(bool);
184  virtual bool importingScenario() const;
186 
189  virtual void setHostingDynamicTerrainServer(bool);
190  virtual bool hostingDynamicTerrainServer() const;
192 
195  virtual void setCreatingSimulationObjectGroup(bool);
196  virtual bool creatingSimulationObjectGroup() const;
198 
201  virtual void setClosingScenario(bool);
202  virtual bool closingScenario() const;
204 
207  virtual void setRollingBackScenario(bool);
208  virtual bool rollingBackScenario() const;
210 
213  virtual void setLoadedNewScenario(bool);
214  virtual bool loadedNewScenario() const;
216 
217  virtual int netRepSize() const override;
218  virtual bool setFromNet(const char* contentBuffer, unsigned contentSize) override;
219  virtual bool setToNet() override;
220 
221  virtual void printDataToString(DtString& str) override;
222 
223  static DtSimInterfaceContent* creator();
224 
227  virtual bool canSimulate() const;
228  virtual void setCanSimulate(const bool frontEnd);
229 
230  bool oldStyleStatus() const
231  {
232  return (myVersion < 10);
233  }
234 
235  virtual void setIsTimeManaged(bool yesNo);
236  virtual bool isTimeManaged() const;
237 
240 
241  virtual DtU32 scenarioCapabilities() const;
242  virtual void setScenarioCapabilities(DtU32 v);
243  virtual void setScenarioCapability(DtU32 v, bool b);
245 
248 
249  virtual DtString applicationType() const;
250  virtual void setApplicationType(const DtString& type);
252 
255  const DtString& scenarioName() const
256  {
257  return myScenarioName;
258  }
259 
260  const DtString& terrainName() const
261  {
262  return myTerrainName;
263  }
264 
265  const DtString& guiTerrainName() const
266  {
267  return myGuiTerrainName;
268  }
270 
271 protected:
272 
276  DtU32 myVersion;
277  DtU32 myPort;
280  DtInetAddr myInetAddr;
306 
310 
312 
317 };
Definition: ifStatus.h:59
virtual bool setFromNet(const char *contentBuffer, unsigned contentSize)
Definition: simInterfaceContent.h:78
virtual int netRepSize() const
Definition: simInterfaceContent.h:76
const DtU32 DtScenarioCapabilities_All
Definition: ifStatus.h:57
#define DT_DLL_vrfmsgs
This file is used to determine how to build.
Definition: vrfmsgsDefines.h:28
DT_DLL_vrfmsgs void setCapability(DtU32 &capabilitiesBitfield, DtScenarioCapabilities bitNumber, bool value)
bool myIsCurrentParameterDb
Definition: ifStatus.h:282
const int DtIfStatusVersion
Definition: ifStatus.h:18
virtual int type() const =0
DtU16 myControlState
Definition: ifStatus.h:279
DtTime myExerciseStartTime
Definition: ifStatus.h:285
bool oldStyleStatus() const
Definition: ifStatus.h:230
bool myRollingBackScenario
Definition: ifStatus.h:300
bool myLoadingScenario
Definition: ifStatus.h:293
int myAppIdRangeMax
Definition: ifStatus.h:278
DtInetAddr myInetAddr
Definition: ifStatus.h:280
bool myResourceMonitorIsEnabled
Definition: ifStatus.h:283
DtString myGuiTerrainName
Definition: ifStatus.h:316
bool mySavingScenario
Definition: ifStatus.h:294
const ObjectCounts & objectCounts() const
Deals with locally published objects. Keys are stored as high char of kind and low char of domain wit...
Definition: ifStatus.h:127
DtU32 myScenarioCapabilities
Bitfield indicating at what level this sim engine participates with the scenario. ...
Definition: ifStatus.h:303
bool myHostingDynamicTerrainServer
Definition: ifStatus.h:297
DtScenarioCapabilities
Instances of DtIfStatus are sent out in response to a DtIfStatusRequest message and have boolean valu...
Definition: ifStatus.h:33
virtual void printDataToString(DtString &str)
Set this flag to false disallow the back-end to transfer ownership. Default is on.
Definition: ifStatus.h:46
True if this application can be commanded to create new objects to simulate.
Definition: ifStatus.h:38
const DtString & guiTerrainName() const
Deprecated – used for backwards compatibility. Now part of DtIfScenarioStatus message.
Definition: ifStatus.h:265
DtU32 myVersion
Definition: ifStatus.h:276
bool myClosingScenario
Definition: ifStatus.h:299
DtString myApplicationType
String indicating what application this sim engine is, for example &quot;VR-Forces Sim&quot; or &quot;VR-Engage Sim&quot;...
Definition: ifStatus.h:305
DT_DLL_vrfmsgs bool hasCapability(const DtU32 &capabilitiesBitfield, DtScenarioCapabilities bitNumber)
const DtSimInterfaceContent & operator=(const DtSimInterfaceContent &orig)
DtU32 myPort
Definition: ifStatus.h:277
True if this application supports being the simulator of the terrain and environment server objects f...
Definition: ifStatus.h:40
DtTime myRunDurationTime
Definition: ifStatus.h:311
DtU32 mySimEngineId
Definition: ifStatus.h:290
Set this flag to have the simulation model sets used by this back-end to publish the SMS in the back-...
Definition: ifStatus.h:42
Identifies whether multiple object instances are allowed.
Definition: ifStatus.h:51
DtTime mySimTime
Definition: ifStatus.h:286
DtTime mySimStartSimTime
Definition: ifStatus.h:287
bool myImportingScenario
Definition: ifStatus.h:296
std::map< DtU16, int > ObjectCounts
Definition: ifStatus.h:62
Set this flag to allow the back-end to accept ownership transfer.
Definition: ifStatus.h:44
ObjectCounts myObjectCounts
This map contains the count of kind/domain of objects available. The key is two chars high char is ki...
Definition: ifStatus.h:309
virtual bool setToNet()
Definition: simInterfaceContent.h:83
Indicates whether or not the simulation time provided by this is in line with the scenario&#39;s simulati...
Definition: ifStatus.h:36
Definition: simInterfaceContent.h:45
bool myIsLoaded
Definition: ifStatus.h:284
virtual DtSimInterfaceContent * clone() const =0
bool myIsFinalStatusMsg
Definition: ifStatus.h:281
const DtString & scenarioName() const
Deprecated – used for backwards compatibility. Now part of DtIfScenarioStatus message.
Definition: ifStatus.h:255
bool myIsTimeManaged
Definition: ifStatus.h:292
const DtString & terrainName() const
Deprecated – used for backwards compatibility. Now part of DtIfScenarioStatus message.
Definition: ifStatus.h:260
bool myCreatingSimulationObjectGroup
Definition: ifStatus.h:298
double myTimeMultiplier
Definition: ifStatus.h:288
DtString myScenarioName
Deprecated – used for backwards compatability. Now part of DtIfScenarioStatus message.
Definition: ifStatus.h:314
DtString myTerrainName
Definition: ifStatus.h:315
bool myReinitializingScenario
Definition: ifStatus.h:295
bool myLoadedNewScenario
Definition: ifStatus.h:289
DtU32 myScenarioRunId
Definition: ifStatus.h:301
bool myCanSimulate
Definition: ifStatus.h:291

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)