33#pragma region static_functions
44 static auto make(
const std::string& name) -> std::unique_ptr<T>
46 hlg::Trace(
"Getting {} from library ##START", name);
48 auto result = std::make_unique<T>(*archetype);
49 hlg::Trace(
"##END Getting {} from library", name);
63 hlg::Trace(
"Getting {} from library ##START", name);
65 auto result = archetype->clone();
66 hlg::Trace(
"##END Getting {} from library", name);
81#pragma region overridden_functions
84#pragma region Factory_Functions
95 static auto create(
const std::string& name) -> std::unique_ptr<AnySerializable>;
103 static auto makePath(
const std::string& name) -> std::string;
static FMOD_RESULT result
Definition AudioObject.cpp:27
auto operator=(Factory &&other) noexcept -> Factory &=delete
Factory(Factory &&other) noexcept=delete
static auto make(const std::string &name) -> std::unique_ptr< T >
create an object and heap allocate it.
Definition Factory.h:44
static auto create(const std::string &name) -> std::unique_ptr< AnySerializable >
create an object and heap allocate it.
Definition Factory.cpp:401
static auto makePath(const std::string &name) -> std::string
prepends "Data/" and appends ".json" to a string maybe in the future we will allow this to handle sub...
Definition Factory.cpp:433
auto operator=(const Factory &other) -> Factory &=delete
Factory(const Factory &other)=delete
friend Library
Definition Factory.h:30
static auto get(const std::string &name) -> T *
get a pointer to an object in the library.
Definition Library.h:48
auto Trace(spdlog::format_string_t< Args... > message, Args &&... args) -> void
Definition Logging.h:46
Definition Factory.cpp:59