VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfDe.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2014 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
12 
13 #pragma once
14 
15 #include <vrfGuiCore/vrfGuiCore.h>
16 #include <vlutil/vlTime.h>
17 #include <vrvUtil/DtDebugLog.h>
18 #include <vrvCore/DtDe.h>
19 #include <vrfStateData/dataGate.h>
20 
21 class DtSimulationAddress;
22 class DtFilePrinter;
23 
24 namespace makVrv
25 {
26  class DtDe;
27  class DtDriver;
28  class DtVrvApplicationConfiguration;
29 }
30 
31 namespace makVrf
32 {
33  class DtVrfSimBackendManager;
34  class DtVrfBackendState;
35 
37  {
38  public:
41 
43  virtual ~DtVrfDe() override;
44 
48  virtual void setSimulationTime(double time) override;
49 
52 
53  virtual void setUseSimulationTimeForAdvancement(bool);
54  virtual bool useSimulationTimeForAdvancement() const;
56 
57  virtual void quit() override;
58  virtual void setTimeToQuit(bool v);
59  bool timeToQuit() const
60  {
61  return myTimeToQuit;
62  }
63 
64  bool renderTicking() const
65  {
66  return myRenderTicking;
67  }
68 
69  virtual void tick(double simulationTime) override;
70 
71  DtFilePrinter* filePrinter() { return myFilePrinter; };
72 
73  static void setEnableLogFileTimeStamps(bool);
74  static bool enableLogFileTimeStamps();
75 
76  virtual void createDebugLog(const std::string& fileName, makVrv::DtDebugLog::PrintLevel level) override;
77 
78  virtual void setDataDoesNotExist(bool);
79  bool dataDoesNotExist() const
80  {
81  return myDataDoesNotExist;
82  }
83 
84  virtual void setCommunicationDriver(const DtFilename&);
85 
86  protected:
87  virtual void slot_backendRemoved(const DtVrfBackendState&);
88  virtual void slot_selectedBackendChanged(const DtSimulationAddress&, const DtSimulationAddress&);
89 
90  virtual void initializeSchemaManager() override;
91  virtual bool waitingForBackendQuitMessage();
92  virtual void updateScene() override;
93  virtual void renderTick(double elapsedTime) override;
94  virtual void postInitialize() override;
95  virtual void startCommunicationDriver(const makVrv::DtDriver&);
96 
97  protected:
98  bool myRenderTicking = false;
104 
106 
108 
109  DtFilename myDebugLogFile;
110 
111  DtFilePrinter* myFilePrinter;
112 
116  };
117 
120  {
121  public:
122  DtVrfDebugLog(const std::string& filename);
123 
125  virtual ~DtVrfDebugLog() override;
126  };
127 }
Definition: vrfBackendState.h:65
DtFilename myDebugLogFile
Definition: vrfDe.h:109
bool myUseSimulationTimeForAdvancement
Definition: vrfDe.h:105
bool timeToQuit() const
Definition: vrfDe.h:59
static bool theEnableLogFileTimeStamps
Definition: vrfDe.h:113
bool myTimeToQuit
Definition: vrfDe.h:107
DT_DLL_VRVCORE DtTaitBryan level(const DtCoordinateSystem &cs, const DtVector &localOrigin, double topoHeading)
Returns a level orientation with the topographic heading.
This is a simple class for logging information to a file. To be used, the caller must specify a loggi...
Definition: DtDebugLog.h:38
DtGateLock myGateLock
Definition: vrfDe.h:115
Contains makVrv::DtDe class.
PrintLevel
Definition: DtDebugLog.h:42
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
bool renderTicking() const
Definition: vrfDe.h:64
bool dataDoesNotExist() const
Definition: vrfDe.h:79
If you need access to data in the main thread outside of the advance frame, use this lock (with the l...
Definition: dataGate.h:18
DtFilePrinter * myFilePrinter
Definition: vrfDe.h:111
DtTime myLastTimeSet
Definition: vrfDe.h:101
The DtDriver is an abstract class. Developers derive from this to create logic that &quot;directs&quot; things ...
Definition: DtDriver.h:30
Override to detach printers that are already created by VRF.
Definition: vrfDe.h:119
DtVrfBackendState * myCurrentBackend
Definition: vrfDe.h:103
This owns a list of display engine configurations.
Definition: DtVrvApplicationConfiguration.h:32
Definition: vrfDe.h:36
DtFilename myCommunicationDriver
Definition: vrfDe.h:99
DtFilePrinter * filePrinter()
Definition: vrfDe.h:71
bool myDataDoesNotExist
Definition: vrfDe.h:114
Maintains and signals state of the simulation engines that are currently connected to the GUI...
Definition: vrfSimBackendManager.h:79
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:76
DtVrfSimBackendManager * myBackendManager
Definition: vrfDe.h:100
DtClock myClock
Definition: vrfDe.h:102
Contains makVrv::DtIGLogger class.

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)