VR-Forces 4.2 Class Documentation
DtVrfBatchScenarioManager.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2009 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 /******************************************************************************
6 ** $RCSfile: DtVrfBatchScenarioManager.h,v $ $Revision: 1.12 $ $State: Exp $
7 ******************************************************************************/
8 
11 
13 
14 #pragma once
15 
17 
18 #include <vrvUtil/DtVirtualBaseClass.h>
19 #include <vrvUtil/signalslib.h>
20 #include <vrvCore/DtDe.h>
21 
22 #include <vlutil/vlFilename.h>
23 
24 #include <boost/signal.hpp>
25 
26 #include <QtCore/QString>
27 
28 class QWidget;
29 class QString;
31 class QFileDialog;
32 class DtScenario;
33 
34 namespace makVrv
35 {
36  class DtDe;
37 }
38 
39 namespace makVrf
40 {
41  class DtVrfScenarioRemapFunction;
42 
44  class DT_DLL_VRFGUICOREQT DtVrfBatchScenarioManager : public makVrv::DtVirtualBaseClass
45  {
46  public:
48  enum State
49  {
58  };
59 
60  public:
61  DtVrfBatchScenarioManager(makVrv::DtDe&);
62  virtual ~DtVrfBatchScenarioManager();
63 
65  static DtVrfBatchScenarioManager& instance(makVrv::DtDe& de);
66 
67  public:
68 
70  virtual void loadBatchScenario(QWidget*);
71  virtual QFileDialog* createLoadBatchScenarioDialog(QWidget*);
72  virtual bool loadBatchScenario(const QString& batch);
73 
75  virtual bool runBatch();
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_scenarioLoadComplete();
150 
151  virtual QString batchRunTitle(const DtScenario*) const;
152 
153  virtual void setMainWindowTitle(const QString&);
154 
155  virtual QString mainWindowTitle() const;
156 
157  protected:
159  makVrv::DtDe& myDe;
160  QString myBatchFile;
161  bool myRunning;
166  };
167 }

Document ID: Generated on Sun Nov 24 19:49:21 EST 2013 from SVN revision 133924
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)