4#include <hpp/source_location.hpp>
19auto start(seq_action action,
20 const seq_scope_policy& scope_policy = {},
21 hpp::source_location location = hpp::source_location::current()) ->
seq_id_t;
168void push(seq_manager& mgr);
182void push(
const std::string& scope);
188void close(
const std::string& scope);
210void stop_all(
const std::string& scope);
229void pause_all(
const std::string& scope,
const std::string& key);
236void resume_all(
const std::string& scope,
const std::string& key);
void pop()
Pops the top sequence manager from the stack.
void push(seq_manager &mgr)
Pushes a sequence manager to the stack.
void pause_all(const std::string &scope)
Pauses all actions within the specified scope.
void stop_when_finished_all(const std::string &scope)
Marks all actions within the specified scope to stop when they finish.
void push(const std::string &scope)
Pushes a new scope to the stack.
void stop_all(const std::string &scope)
Stops all actions within the specified scope.
auto get_current() -> const std::string &
Gets the name of the current scope.
void pop()
Pops the current scope from the stack.
void close(const std::string &scope)
Closes the specified scope.
void clear()
Clears all scopes from the stack.
void resume_all(const std::string &scope)
Resumes all actions within the specified scope.
void stop_and_finish_all(const std::string &scope)
Stops and finishes all actions within the specified scope.
Provides a sequence-based action management system for controlling and scheduling actions.
size_t seq_id_t
Represents a unique identifier for sequence actions.
void update(seq_id_t id, duration_t delta)
Updates the elapsed duration of a specific action.
auto is_finished(seq_id_t id) -> bool
Checks if the action has finished.
std::chrono::duration< float > duraiton_secs_t
Represents a duration in seconds as a floating-point value.
void set_elapsed(seq_id_t id, duration_t duration)
Sets the elapsed duration of an action.
auto is_paused(seq_id_t id) -> bool
Checks if the action is paused.
void resume(const seq_id_t id)
Resumes the action associated with the given ID.
auto start(seq_action action, const seq_scope_policy &scope_policy, hpp::source_location location) -> seq_id_t
Starts a new action.
auto get_duration(seq_id_t id) -> duration_t
Gets the total duration of an action.
auto get_overflow(seq_id_t id) -> duration_t
Gets the overflow duration of an action.
void stop_and_finish(seq_id_t id, duration_t finish_after)
Stops the action after a specified duration.
auto is_running(seq_id_t id) -> bool
Checks if the action is running.
void shutdown()
Shuts down the action management system, stopping all actions.
void set_speed_multiplier(seq_id_t id, float speed_multiplier)
Sets the speed multiplier for an action.
auto is_stopping(seq_id_t id) -> bool
Checks if the action is stopping.
auto get_speed_multiplier(seq_id_t id) -> float
Gets the speed multiplier of an action.
auto get_elapsed(seq_id_t id) -> duration_t
Gets the elapsed duration of an action.
void stop_when_finished(seq_id_t id)
Marks the action to stop when it finishes.
auto has_action_with_scope(const std::string &scope_id) -> bool
Checks if there is an action associated with the given scope ID.
auto get_percent(seq_id_t id) -> float
Gets the percentage completion of an action.
void stop(seq_id_t id)
Stops the action associated with the given ID.
std::chrono::nanoseconds duration_t
Represents a duration in nanoseconds.
void pause(const seq_id_t id)
Pauses the action associated with the given ID.