Virtual Testbed
Ship dynamics simulator for extreme conditions
src
vtestbed
gui
ControlWindow.hh
1
#ifndef VTESTBED_GUI_CONTROLWINDOW_HH
2
#define VTESTBED_GUI_CONTROLWINDOW_HH
3
4
#include <vtestbed/core/propulsor.hh>
5
#include <vtestbed/core/types.hh>
6
#include <vtestbed/gui/InputNumber.hh>
7
#include <vtestbed/gui/MagnumImgui/MagnumImGui.h>
8
#include <vtestbed/gui/SliderAngle.hh>
9
#include <vtestbed/gui/Window.hh>
10
#include <vtestbed/gui/imgui.hh>
11
#include <vtestbed/gui/types.hh>
12
13
namespace
vtb
{
14
15
namespace
gui {
16
17
template
<
class
T>
18
class
ControlWindow
:
public
Window
{
19
20
public
:
21
using
propulsor_type
=
vtb::core::Propulsor<T>
;
22
using
testbed_type
=
vtb::core::Testbed<T,3>
;
23
24
private
:
25
propulsor_type
_propulsor;
26
InputNumber<T>
_revolutions;
27
InputNumber<T>
_diameter;
28
InputNumber<T>
_thrust;
29
InputNumber<T>
_torque;
30
SliderAngle<T>
_angle;
31
32
public
:
33
34
explicit
ControlWindow
();
35
void
draw();
36
void
init(
const
testbed_type
& testbed);
37
38
inline
const
propulsor_type
& propulsor()
const
{
return
this->_propulsor; }
39
40
};
41
42
}
43
44
}
45
46
#endif // vim:filetype=cpp
vtb::gui::SliderAngle
Definition:
SliderAngle.hh:11
vtb::core::Propulsor
Definition:
propulsor.hh:16
vtb
Main namespace.
Definition:
convert.hh:9
vtb::core::Testbed< T, 3 >
vtb::gui::Window
Definition:
Window.hh:12
vtb::gui::InputNumber
Definition:
InputNumber.hh:12
vtb::gui::ControlWindow
Definition:
ControlWindow.hh:18
Generated by
1.8.15