SDEngine
Game Engine
Loading...
Searching...
No Matches
ComponentFactory.hpp
Go to the documentation of this file.
1#pragma once
2
3#include <vector>
4
6#include "SD/arena.hpp"
7#include "SD/core/types.hpp"
8#include "SD/export.hpp"
9
10namespace sd {
11
14
15 static void register_component(U32 component_id, PoolNodeCreatorFn creator);
16 static ComponentPoolNode create(U32 component_id, Arena* arena);
17 static bool is_registered(U32 component_id);
18
19 static void clear();
20 static void register_default_pools();
21
22
23 static inline std::vector<PoolNodeCreatorFn> m_creators;
24};
25
26} // namespace sd
Definition Application.hpp:22
Definition arena.hpp:85
Definition ComponentFactory.hpp:12
static std::vector< PoolNodeCreatorFn > m_creators
Definition ComponentFactory.hpp:23
ComponentPoolNode(*)(Arena *arena) PoolNodeCreatorFn
Definition ComponentFactory.hpp:13
Definition ComponentPoolNode.hpp:9
consteval U64 type_id_of()
Definition type_id.hpp:6
std::uint32_t U32
Definition types.hpp:15