VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator 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 #include <vrvUtil/signalslib.h>
18 #include <vrvCore/DtDe.h>
19 
20 #include <vlutil/vlFilename.h>
21 
22 #include <boost/signal.hpp>
23 
24 #include <QtCore/QString>
25 
26 class QWidget;
27 class QString;
29 class QFileDialog;
30 class DtScenario;
31 
32 namespace makVrv
33 {
34  class DtDe;
35 }
36 
37 namespace makVrf
38 {
39  class DtVrfScenarioRemapFunction;
40 
43  {
44  public:
46  enum State
47  {
56  };
57 
58  public:
60  virtual ~DtVrfBatchScenarioManager();
61 
63  static DtVrfBatchScenarioManager& instance(makVrv::DtDe& de);
64 
65  public:
66 
68  virtual void loadBatchScenario(QWidget*);
69  virtual QFileDialog* createLoadBatchScenarioDialog(QWidget*);
70  virtual bool loadBatchScenario(const QString& batch);
71 
73  virtual bool runBatch();
74 
75  virtual int runNumber() const;
76 
77  bool isBatchRunning() const
78  {
79  return myRunning;
80  }
81 
82  DtScenarioBatchIterator* batchIterator() const
83  {
84  return myBatchIterator;
85  }
86 
87  bool runningBatchScenario() const
88  {
89  return (batchIterator() != 0);
90  }
91 
94  virtual void nextScenarioRun();
95 
98  virtual void nextScenario();
99 
101  virtual bool close();
102 
103  public:
104  boost::signal<void ()> signal_stateRunStart;
105 
107  boost::signal<void ()> signal_nextRunAboutToStart;
108 
110  boost::signal<void ()> signal_batchRunComplete;
111 
112  boost::signal<void ()> signal_errorLoadingScenario;
113 
115  boost::signal<void ()> signal_scenarioRunComplete;
116 
117  protected:
118  virtual void tick();
119 
120  protected:
122  virtual void idle();
123 
125  virtual void startNextBatchScenario();
126 
129  virtual void loading();
130 
133  virtual void running();
134 
137  virtual double currentSimulationTime() const;
138 
139  virtual DtFilename constructLoggerFilename(const DtScenario* scenario);
140 
142  virtual void allBackendsClosed();
143 
145  virtual void loadScenarioError(const std::string& error, bool showMessage = true);
146 
147  protected:
149  virtual void slot_allScenarioObjectsDiscovered();
150 
151  virtual void slot_windowTitleAboutToBeSet(QString&);
152 
153  virtual void setMainWindowTitle(const QString&);
154 
155  protected:
158  QString myBatchFile;
159  bool myRunning;
165  };
166 }

Document ID: Generated on Mon Jul 4 01:00:18 EDT 2016 from SVN revision 166489
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)