Sound Bakery  v0.1.0
Open-source audio middleware for games
|
Manager of the whole sound Bakery. More...
#include <system.h>
Public Member Functions | |
sbk::core::object_owner * | current_object_owner () |
Returns the current object owner. Either a project or soundbank runtime. | |
std::shared_ptr< concurrencpp::manual_executor > | game_thread_executer () const |
sbk::engine::game_object * | get_listener_game_object () const |
sbk::engine::bus * | get_master_bus () const |
void | set_master_bus (const std::shared_ptr< sbk::engine::bus > &masterBus) |
Public Member Functions inherited from sbk::core::object_owner | |
std::shared_ptr< object > | create_runtime_object (const rttr::type &type) |
std::shared_ptr< object > | load_object (YAML::Node &node) |
std::shared_ptr< database_object > | create_database_object (const rttr::type &type, bool addToDatabase=true) |
template<typename T > | |
std::shared_ptr< T > | create_runtime_object () |
template<typename T > | |
std::shared_ptr< T > | create_database_object () |
void | remove_object (const std::shared_ptr< object > &object) |
void | destroy_all () |
std::vector< std::shared_ptr< object > > & | get_objects () |
const std::vector< std::shared_ptr< object > > & | get_objects () const |
Public Member Functions inherited from sbk::core::object_tracker | |
void | track_object (object *object) |
void | untrack_object (object *object, std::optional< rttr::type > typeOverride=std::nullopt) |
std::unordered_set< object * > | get_objects_of_category (const SB_OBJECT_CATEGORY &category) const |
std::unordered_set< object * > | get_objects_of_type (const rttr::type &type) const |
Public Member Functions inherited from sbk::core::database | |
void | add_object_to_database (const std::shared_ptr< database_object > &object) |
void | remove_object_from_database (sbk_id objectID) |
std::weak_ptr< database_object > | try_find (sbk_id objectID) const |
std::weak_ptr< database_object > | try_find (std::string_view name) const |
std::vector< std::weak_ptr< database_object > > | get_all () const |
void | clear_database () noexcept |
Static Public Member Functions | |
static system * | get () |
static system * | create () |
static void | destroy () |
static sc_result | init () |
static sc_result | update () |
static sc_result | open_project (const std::filesystem::path &project_file) |
Creates an instance of sound Bakery and opens the project. | |
static sbk::editor::project * | get_project () |
Additional Inherited Members | |
Public Attributes inherited from sc_system | |
ma_engine | engine |
ma_resource_manager | resourceManager |
ma_log | log |
sc_node_group * | masterNodeGroup |
Manager of the whole sound Bakery.
The system tracks all objects created during sound Bakery's lifetime.
It owns all loaded Soundbanks, listener game object, and busses.