Sound Bakery  v0.1.0
Open-source audio middleware for games
Loading...
Searching...
No Matches
sbk::core::database_object Class Reference

Base object type for any object that can exist in the editor/database. Holds an ID and name. More...

#include <database_object.h>

Inheritance diagram for sbk::core::database_object:
Collaboration diagram for sbk::core::database_object:

Public Member Functions

sbk_id get_database_id () const
 
void set_database_id (sbk_id id)
 
std::string_view get_database_name () const
 
void set_database_name (std::string_view name)
 
bool get_editor_hidden () const
 
void set_editor_hidden (bool hidden)
 
 operator sbk_id () const
 
MulticastDelegate< sbk_id, sbk_id > & get_on_update_id ()
 
MulticastDelegate< std::string_view, std::string_view > & get_on_update_name ()
 
- Public Member Functions inherited from sbk::core::object
object_ownerowner () const
 
template<typename T >
Ttry_convert_object () noexcept
 Gets the most derived type of this object and upcasts it to T.
 
template<typename T >
const Ttry_convert_object () const noexcept
 
rttr::type getType () const
 
void destroy ()
 
MulticastDelegate< object * > & get_on_destroy ()
 
- Public Member Functions inherited from sbk::core::object_owner
std::shared_ptr< objectcreate_runtime_object (const rttr::type &type)
 
std::shared_ptr< objectload_object (YAML::Node &node)
 
std::shared_ptr< database_objectcreate_database_object (const rttr::type &type, bool addToDatabase=true)
 
template<typename T >
std::shared_ptr< Tcreate_runtime_object ()
 
template<typename T >
std::shared_ptr< Tcreate_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
 

Friends

class database
 

Detailed Description

Base object type for any object that can exist in the editor/database. Holds an ID and name.


The documentation for this class was generated from the following files: