template <class T>
class vtb::gui::TestbedPipeline
Types
  • using lock_type = std::unique_lock< mutex_type >
  • using callback_queue = std::queue< callback_type >
  • using callback_type = std::function< void(testbed_type &)>
  • using Record = typename statistics_type::Record
  • using statistics_type = vtb::core::Statistics< T >
  • using thread_type = std::thread
  • using mutex_type = std::mutex
  • using float_duration = std::chrono::duration< T >
  • using duration = clock_type::duration
  • using time_point = clock_type::time_point
  • using clock_type = std::chrono::high_resolution_clock
  • using testbed_gui_type = TestbedGUI< T >
  • using testbed_type = vtb::core::Testbed< T, 3 >
Methods
  • template <class Callback>
    gui_call(Callback && cb) -> void

    Insert computational and graphical callbacks. The callback will be called before the next rendering step in OpenGL thread. The argument to this function is non-constant reference to vtb::gui::TestbedGUI object using which you can copy-out simulation results (e.g. wavy surface) from the previous step.

    Date
    2019-06-03
  • template <class Callback>
    call(Callback && cb) -> void

    Insert computational callback. The callback will be called before the next computational step in the thread of the pipeline (a thread that computes everything). The argument to this function is non-constant reference to vtb::core::Testbed object, using which you can copy-in simulation parameters (e.g. change wavy surface size).

    Date
    2019-06-03
  • accumulate_dt(T dt) -> void

    Accumulate FPS using exponential moving average.

  • frame_rate() const -> T
  • simulation_has_finished() const -> bool
  • simulation_is_running() const -> bool
  • simulation_is_idle() const -> bool
  • fixed_time_step() const -> bool
  • fixed_time_step(bool rhs) -> void
  • time_step() const -> T
  • speed(T rhs) -> void
  • speed() const -> T
  • max_time_step(T rhs) -> void
  • max_time_step() const -> T
  • min_time_step(T rhs) -> void
  • min_time_step() const -> T
  • testbed() -> testbed_type *
  • testbed(testbed_type && rhs) -> void
  • testbed_gui() -> testbed_gui_type *
  • testbed_gui(testbed_gui_type * rhs) -> void
  • started() const -> bool
  • stopped() const -> bool
  • initial() const -> bool
  • wait() -> void
  • step() -> void
  • stop() -> void
  • reset() -> void
  • start() -> void
  • ~TestbedPipeline()
  • TestbedPipeline()