7 #ifndef QTOPENGL_MAIN_WINDOW_H
8 #define QTOPENGL_MAIN_WINDOW_H
11 class CQTOpenGLMainWindow;
12 class CQTOpenGLWidget;
13 class CQTOpenGLLogStream;
14 class CQTOpenGLUserFunctions;
30 #include <argos3/core/utility/configuration/argos_configuration.h>
31 #include <argos3/core/simulator/visualization/visualization.h>
32 #include <QMainWindow>
46 return *m_pcOpenGLWidget;
50 return *m_pcOpenGLWidget;
54 return *m_pcUserFunctions;
58 return *m_pcUserFunctions;
66 return m_strTextureDir;
75 void ReadSettingsPreCreation();
76 void ReadSettingsPostCreation();
79 void CreateExperimentActions();
80 void CreateCameraActions();
81 void CreatePOVRayActions();
82 void CreateHelpActions();
84 void CreateExperimentToolBar();
85 void CreateExperimentMenu();
86 void CreateCameraToolBar();
87 void CreateCameraMenu();
88 void CreatePOVRayMenu();
89 void CreateHelpMenu();
92 void CreateLogMessageDock();
93 void CreateConnections();
97 virtual void closeEvent(QCloseEvent* pc_event);
218 enum EExperimentState {
219 EXPERIMENT_INITIALIZED = 0,
221 EXPERIMENT_FAST_FORWARDING,
223 EXPERIMENT_SUSPENDED,
230 QString m_strIconDir;
231 QString m_strTextureDir;
232 QString m_strModelDir;
234 EExperimentState m_eExperimentState;
236 QAction* m_pcPlayAction;
237 QAction* m_pcFastForwardAction;
238 QAction* m_pcStepAction;
239 QAction* m_pcResetAction;
240 QAction* m_pcTerminateAction;
241 QAction* m_pcPauseAction;
242 QAction* m_pcCaptureAction;
243 QAction* m_pcQuitAction;
244 QSpinBox* m_pcDrawFrameEvery;
245 QLCDNumber* m_pcCurrentStepLCD;
246 QToolBar* m_pcExperimentToolBar;
247 QMenu* m_pcExperimentMenu;
249 QAction* m_pcShowCameraXMLAction;
250 QList<QAction*> m_pcSwitchCameraActions;
251 QActionGroup* m_pcSwitchCameraActionGroup;
252 QDoubleSpinBox* m_pcFocalLength;
253 QToolBar* m_pcCameraToolBar;
254 QMenu* m_pcCameraMenu;
256 QAction* m_pcPOVRayXMLAction;
257 QAction* m_pcPOVRayPreviewAction;
258 QMenu* m_pcPOVRayMenu;
260 QAction* m_pcAboutQTAction;
263 QStatusBar* m_pcStatusbar;
265 QDockWidget* m_pcLogDock;
266 QDockWidget* m_pcLogErrDock;
267 QTextEdit* m_pcDockLogBuffer;
268 QTextEdit* m_pcDockLogErrBuffer;
272 bool m_bWasLogColored;
The namespace containing all the ARGoS related code.
ticpp::Element TConfigurationNode
The ARGoS configuration XML node.
void FastForwardExperiment()
Fast forwards the experiment.
void SuspendExperiment()
Suspends an experiment due to an error.
void ExperimentReset()
Emitted when the experiment has been reset.
CQTOpenGLUserFunctions & GetUserFunctions()
void StepExperiment()
Executes one experiment time step.
const CQTOpenGLUserFunctions & GetUserFunctions() const
void PlayExperiment()
Plays the experiment.
void ExperimentSuspended()
Emitted when the experiment has been suspended.
const QString & GetTextureDir() const
virtual ~CQTOpenGLMainWindow()
const QString & GetModelDir() const
const QString & GetIconDir() const
void ExperimentDone()
Emitted when the experiment is finished.
const CQTOpenGLWidget & GetOpenGLWidget() const
void ExperimentStarted()
Emitted when the experiment has just been started.
CQTOpenGLWidget & GetOpenGLWidget()
void ExperimentResumed()
Emitted when the experiment has just been resumed.
void ResumeExperiment()
Resumes a suspended experiment.
void CameraSwitched(int n_camera)
Emitted whenever the user presses a camera button to switch camera.
void SwitchCamera(QAction *)
void ExperimentPaused()
Emitted when the experiment has been paused.
void ExperimentPlaying()
Emitted when the experiment has (re)started playing.
void ResetExperiment()
Resets the state of the experiment to its state right after initialization.
void PauseExperiment()
Pauses the experiment.
QString GetCameraXMLData()
CQTOpenGLMainWindow(TConfigurationNode &t_tree)
void ExperimentFastForwarding()
Emitted when the experiment has (re)started fast-forwarding.
void TerminateExperiment()
Terminates the execution of the experiment.
The QTOpenGL user functions.