Virtual Testbed
Ship dynamics simulator for extreme conditions
Public Member Functions | Protected Member Functions | List of all members
vtb::gui::TestbedGUI< T > Class Template Reference

Main class for interacting with virtual testbed via GUI. More...

#include <TestbedGUI.hh>

Inheritance diagram for vtb::gui::TestbedGUI< T >:
[legend]
Collaboration diagram for vtb::gui::TestbedGUI< T >:
[legend]

Public Member Functions

 TestbedGUI (const Arguments &arguments, const Configuration &conf, vtb::gui::CircularLineBuffer &imguibuf)
 
void step (const testbed_type &testbed)
 
void setNearFar (Float zNear, Float zFar)
 
ScreenRecorderscreenRecorder ()
 
void screenRecorder (ScreenRecorder *rhs)
 
void startScreenRecorder ()
 
void recording (bool rhs)
 
void stopScreenRecorder ()
 
Vector2i windowSize ()
 
vtb::graphics::ShipHullObject< T > & hull ()
 
vtb::graphics::ShipCompartments< T > & compartments ()
 
void init (const testbed_type &testbed)
 
void start ()
 
void pause ()
 
void stop ()
 
- Public Member Functions inherited from vtb::gui::ApplicationBase
 ApplicationBase (const Arguments &args, const Configuration &conf)
 
settings_typesettings_ptr ()
 
settings_typecolors_ptr ()
 
const settings_typesettings () const
 
settings_typesettings ()
 
Policy policy () const
 

Protected Member Functions

void drawEvent () override
 
void keyPressEvent (KeyEvent &event) override
 
- Protected Member Functions inherited from vtb::gui::ApplicationBase
void initImGui (MagnumImGui &imgui)
 
void enableDebugOutput ()
 
Scene3D * scene ()
 
const Scene3D * scene () const
 
Camera3D * camera ()
 
const Camera3D * camera () const
 
Object3D * cameraObject ()
 
const Object3D * cameraObject () const
 
void setCameraTranslationDelta (Float rhs)
 
void viewportEvent (const Vector2i &size) override
 
void keyPressEvent (KeyEvent &event) override
 
void mouseMoveEvent (MouseMoveEvent &event) override
 
void mousePressEvent (MouseEvent &event) override
 
void keyReleaseEvent (KeyEvent &event) override
 
void mouseReleaseEvent (MouseEvent &event) override
 
void mouseScrollEvent (MouseScrollEvent &event) override
 
void textInputEvent (TextInputEvent &event) override
 

Additional Inherited Members

- Public Types inherited from vtb::gui::ApplicationBase
using Policy = vtb::core::Policy
 
using settings_type = vtb::ini::Ini_settings
 

Detailed Description

template<class T>
class vtb::gui::TestbedGUI< T >

Main class for interacting with virtual testbed via GUI.

Date
2018-07-21
Author
Andrei Ivashchenko

Definition at line 30 of file TestbedGUI.hh.