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 >
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.
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).
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()