VR-Forces 5.0.2 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfBatchScenarioManager.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2016 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
10 
11 #pragma once
12 
14 
17 
18 #include <vlutil/vlFilename.h>
19 
20 #include <boost/signals2.hpp>
21 
22 #include <QtCore/QString>
23 
24 class QWidget;
25 class QString;
27 class QFileDialog;
28 class DtScenario;
29 
30 namespace makVrv
31 {
32  class DtDe;
33 }
34 
35 namespace makVrf
36 {
37  class DtVrfScenarioRemapFunction;
38 
41  {
42  public:
44  enum State
45  {
54  };
55 
56  public:
58  virtual ~DtVrfBatchScenarioManager();
59 
61  static DtVrfBatchScenarioManager& instance(makVrv::DtDe& de);
62 
63  public:
64 
66  virtual void loadBatchScenario(QWidget*);
67  virtual QFileDialog* createLoadBatchScenarioDialog(QWidget*);
68  virtual bool loadBatchScenario(const QString& batch);
69 
71  virtual bool runBatch();
72 
73  virtual int runNumber() const;
74 
75  bool isBatchRunning() const
76  {
77  return myRunning;
78  }
79 
81  {
82  return myBatchIterator;
83  }
84 
85  bool runningBatchScenario() const
86  {
87  return (batchIterator() != 0);
88  }
89 
92  virtual void nextScenarioRun();
93 
96  virtual void nextScenario();
97 
99  virtual bool close();
100 
101  public:
102  boost::signals2::signal<void ()> signal_stateRunStart;
103 
105  boost::signals2::signal<void ()> signal_nextRunAboutToStart;
106 
108  boost::signals2::signal<void ()> signal_batchRunComplete;
109 
110  boost::signals2::signal<void ()> signal_errorLoadingScenario;
111 
113  boost::signals2::signal<void ()> signal_scenarioRunComplete;
114 
115  protected:
116  virtual void tick();
117 
118  protected:
120  virtual void idle();
121 
123  virtual void startNextBatchScenario();
124 
127  virtual void loading();
128 
131  virtual void running();
132 
135  virtual double currentSimulationTime() const;
136 
137  virtual DtFilename constructLoggerFilename(const DtScenario* scenario);
138 
140  virtual void allBackendsClosed();
141 
143  virtual void loadScenarioError(const std::string& error, bool showMessage = true);
144 
145  protected:
147  virtual void slot_allScenarioObjectsDiscovered();
148 
149  virtual void slot_windowTitleAboutToBeSet(QString&);
150 
151  virtual void setMainWindowTitle(const QString&);
152 
153  protected:
156  QString myBatchFile;
157  bool myRunning;
164  };
165 }
State
Enumerations for state of batch run.
Definition: vrfBatchScenarioManager.h:44
boost::signals2::signal< void()> signal_nextRunAboutToStart
Sent after the last scenario has closed and next one is about to start.
Definition: vrfBatchScenarioManager.h:105
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
Definition: vrfBatchScenarioManager.h:51
Definition: vrfBatchScenarioManager.h:46
makVrv::DtDe & myDe
Definition: vrfBatchScenarioManager.h:155
Definition: scenario.h:52
bool runningBatchScenario() const
Definition: vrfBatchScenarioManager.h:85
QString myOriginalTitle
Definition: vrfBatchScenarioManager.h:161
State myState
Definition: vrfBatchScenarioManager.h:160
DtScenarioBatchIterator * batchIterator() const
Definition: vrfBatchScenarioManager.h:80
const DtScenario * myRunningScenario
Definition: vrfBatchScenarioManager.h:163
bool myRunning
Definition: vrfBatchScenarioManager.h:157
makVrv::DtSignalConnectionManager myConnections
Definition: vrfBatchScenarioManager.h:162
Definition: vrfBatchScenarioManager.h:53
The class that will contain information about the currently loaded scenario.
Definition: vrfBatchScenarioManager.h:40
Definition: vrfScenarioRemapFunctions.h:28
Definition: vrfBatchScenarioManager.h:50
DtScenarioBatchIterator * myBatchIterator
Definition: vrfBatchScenarioManager.h:154
Definition: vrfBatchScenarioManager.h:49
Contains makVrv::DtVirtualBaseClass class.
boost::signals2::signal< void()> signal_batchRunComplete
Sent when all batch files have been run.
Definition: vrfBatchScenarioManager.h:108
boost::signals2::signal< void()> signal_stateRunStart
Definition: vrfBatchScenarioManager.h:102
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
Definition: vrfBatchScenarioManager.h:48
boost::signals2::signal< void()> signal_scenarioRunComplete
Signalled when a scenario run is complete.
Definition: vrfBatchScenarioManager.h:113
#define DT_DLL_VRFGUICOMMONQT
Definition: vrfGuiCommonQt.h:20
Definition: asyncJobServer.h:39
Definition: vrfBatchScenarioManager.h:47
DtVrfScenarioRemapFunction * myRemap
Definition: vrfBatchScenarioManager.h:158
Base class to provide boost signal/slot management.
Definition: vrfBatchScenarioManager.h:52
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:70
boost::signals2::signal< void()> signal_errorLoadingScenario
Definition: vrfBatchScenarioManager.h:110
class DtScenarioBatchIterator
Definition: scenarioBatchIterator.h:28
QString myBatchFile
Definition: vrfBatchScenarioManager.h:156
double myRunStartTime
Definition: vrfBatchScenarioManager.h:159
bool isBatchRunning() const
Definition: vrfBatchScenarioManager.h:75

Document ID: Generated on Sun Dec 4 20:22:03 EST 2022 from SVN revision 249613
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)