3#include <engine/engine_export.h>
58 return frames_running_;
65 return current_phase_;
69 void begin_play(
rtti::context& ctx,
bool allow_splash =
true);
72 [[nodiscard]]
auto should_show_splash(
rtti::context& ctx)
const -> bool;
75 bool is_paused_ =
false;
76 uint64_t frames_running_ = 0;
79 std::shared_ptr<int> sentinel_ = std::make_shared<int>(0);
std::chrono::duration< float > delta_t
Owns play-mode state and orchestrates the splash -> running lifecycle.
auto deinit(rtti::context &ctx) -> bool
void toggle(rtti::context &ctx, bool allow_splash=true)
void set_paused(rtti::context &ctx, bool paused)
auto is_paused() const -> bool
void set_active(rtti::context &ctx, bool active, bool allow_splash=true)
auto init(rtti::context &ctx) -> bool
void skip_next_frame(rtti::context &ctx)
void toggle_pause(rtti::context &ctx)
auto is_splash() const -> bool
auto frames_running() const -> uint64_t
auto is_simulation_running() const -> bool
void on_simulation_frame()
void on_frame_update(rtti::context &ctx, delta_t dt)
auto is_active() const -> bool
auto current_phase() const -> phase