|
DirectZ
|
#include <ECS.hpp>
Classes | |
| struct | ProviderReflectableGroup |
| struct | RegisteredComponentEntry |
Public Types | |
| using | DrawProviderT = typename FirstMatchingOrDefault<IsDrawProvider, TProviders...>::type |
| using | CameraProviderT = typename FirstMatchingOrDefault<IsCameraProvider, TProviders...>::type |
| using | SceneProviderT = typename FirstMatchingOrDefault<IsSceneProvider, TProviders...>::type |
Public Member Functions | |
| int | getCID () override |
| Returns the Constructor ID at runtime. | |
| auto | GenerateEntitysDrawFunction () |
| auto | GenerateCamerasDrawFunction () |
| auto | GenerateCameraVisibilityFunction () |
| template<typename TqProvider> | |
| void | IsDrawProviderName (std::string &out_string) |
| std::string | FindBufferNameFromProviders () |
| ECS (Serial &serial) | |
| ECS (WINDOW *initial_window_ptr) | |
| void | MarkReady () |
| bool | backup (Serial &serial) override |
| virtual method for writing the Restorable data | |
| bool | restore (Serial &serial) override |
| virtual method for reading the Restorable data | |
| void | RegisterProviders () |
| template<typename TProvider> | |
| void | RegisterProvider () |
| template<typename TRComponent> | |
| bool | RegisterComponent () |
| bool | RegisterComponents (const std::function< bool(ECS &)> ®ister_all_components_fn) |
| void | Resize (int n) |
| template<typename T> | |
| T & | InsertReflectableGroup (std::vector< std::shared_ptr< ReflectableGroup > > &children) |
| template<typename TData, typename TProvider> | |
| void | AddProviderSingle (int parent_id, size_t &id, const TData &data, std::vector< std::shared_ptr< ReflectableGroup > > &reflectable_group_vector) |
| template<typename TData> | |
| size_t | AddProvider (int parent_id, const TData &data, std::vector< std::shared_ptr< ReflectableGroup > > &reflectable_group_vector) |
| template<typename TEntity> | |
| size_t | AddEntity (int parent_id, const TEntity &entity_data) |
| template<typename TEntity> | |
| size_t | AddEntity (const TEntity &entity_data) |
| template<typename TScene> | |
| size_t | AddScene (int parent_id, const TScene &entity_data) |
| template<typename TScene> | |
| size_t | AddScene (const TScene &entity_data) |
| template<typename TProvider, typename TReflectableGroup> | |
| TReflectableGroup & | GetGroupByIndex (size_t index) |
| template<typename TProvider, typename TReflectableGroup> | |
| TReflectableGroup & | GetGroup (size_t id) |
| ReflectableGroup * | FindParentGroupPtr (int parent_id) |
| template<typename TProvider> | |
| std::map< size_t, ReflectableGroup * >::iterator | GetProviderBegin () |
| template<typename TProvider> | |
| std::map< size_t, ReflectableGroup * >::iterator | GetProviderEnd () |
| template<typename TProvider> | |
| TProvider & | GetProviderData (size_t id) |
| DrawProviderT & | GetEntity (size_t entity_id) |
| template<typename TCamera> | |
| size_t | AddCamera (size_t parent_id, const TCamera &camera_data, TCamera::ProjectionType projectionType) |
| template<typename TCamera> | |
| size_t | AddCamera (const TCamera &camera_data, TCamera::ProjectionType projectionType) |
| CameraProviderT & | GetCamera (size_t camera_id) |
| template<typename TComponent> | |
| size_t | ConstructComponent (size_t entity_id, const TComponent &data) |
| template<typename T, typename TqProvider> | |
| void | IsTThisProvider (bool &out_bool) |
| template<typename T> | |
| bool | IsTAProvider () |
| template<typename T> | |
| T * | GetProviderValByID (int provider_val_id) |
| void | SetProviderCount (const std::string &buffer_name, int count) |
| template<typename T> | |
| T * | GetProviderData (const std::string &buffer_name) |
| BufferGroup * | CreateBufferGroup () |
| Shader * | GenerateMainShader () |
| Shader * | GenerateModelComputeShader () |
| void | EnableDrawInWindow (WINDOW *window_ptr) |
| std::string | GenerateShaderHeader (ShaderModuleType moduleType) |
| std::string | GenerateShaderMain (ShaderModuleType moduleType) |
| std::string | GenerateMainVertexShaderCode () |
| std::string | GenerateMainFragmentShaderCode () |
| std::string | GenerateModelComputeShaderCode () |
| bool | ResizeFramebuffer (size_t camera_id, uint32_t width, uint32_t height) |
| bool | FramebufferChanged (size_t camera_id) |
| bool | SetCameraAspect (size_t camera_id, float width, float height) |
| Public Member Functions inherited from dz::Restorable | |
| virtual | ~Restorable ()=default |
Static Public Member Functions | |
| static void | RegisterStateCID () |
| Static Public Member Functions inherited from dz::Restorable | |
| template<typename T> | |
| static int | GetCID () |
| Returns the Constructor ID for this Restorable. | |
Public Attributes | |
| std::recursive_mutex | e_mutex |
| std::string | buffer_name |
| WINDOW * | window_ptr = 0 |
| std::filesystem::path | save_path |
| bool | loaded_from_io = false |
| std::vector< std::shared_ptr< ReflectableGroup > > | reflectable_group_root_vector |
| std::unordered_map< size_t, std::map< size_t, ReflectableGroup * > > | provider_id_reflectable_maps |
| std::unordered_map< size_t, std::vector< size_t > > | provider_index_vectors |
| std::map< size_t, ProviderReflectableGroup > | id_provider_groups |
| std::map< float, std::vector< size_t > > | prioritized_provider_ids |
| std::unordered_map< ShaderModuleType, std::map< float, std::vector< std::string > > > | priority_glsl_mains |
| std::vector< std::string > | restricted_keys {"Components"} |
| std::map< int, RegisteredComponentEntry > | registered_component_map |
| bool | components_registered = false |
| DrawListManager< DrawProviderT > | draw_mg |
| BufferGroup * | buffer_group = 0 |
| bool | buffer_initialized = false |
| int | buffer_size = 0 |
| Shader * | main_shader = 0 |
| Shader * | model_compute_shader = 0 |
| int | constructed_component_count = 0 |
Static Public Attributes | |
| static int | CID = TCID |
| using dz::ECS< TCID, TProviders >::CameraProviderT = typename FirstMatchingOrDefault<IsCameraProvider, TProviders...>::type |
| using dz::ECS< TCID, TProviders >::DrawProviderT = typename FirstMatchingOrDefault<IsDrawProvider, TProviders...>::type |
| using dz::ECS< TCID, TProviders >::SceneProviderT = typename FirstMatchingOrDefault<IsSceneProvider, TProviders...>::type |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlineoverridevirtual |
virtual method for writing the Restorable data
Reimplemented from dz::Restorable.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlineoverridevirtual |
Returns the Constructor ID at runtime.
Reimplemented from dz::Restorable.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinestatic |
|
inline |
|
inline |
|
inlineoverridevirtual |
virtual method for reading the Restorable data
Reimplemented from dz::Restorable.
|
inline |
|
inline |
| BufferGroup* dz::ECS< TCID, TProviders >::buffer_group = 0 |
| bool dz::ECS< TCID, TProviders >::buffer_initialized = false |
| std::string dz::ECS< TCID, TProviders >::buffer_name |
| int dz::ECS< TCID, TProviders >::buffer_size = 0 |
|
inlinestatic |
| bool dz::ECS< TCID, TProviders >::components_registered = false |
| int dz::ECS< TCID, TProviders >::constructed_component_count = 0 |
| DrawListManager<DrawProviderT> dz::ECS< TCID, TProviders >::draw_mg |
| std::recursive_mutex dz::ECS< TCID, TProviders >::e_mutex |
| std::map<size_t, ProviderReflectableGroup> dz::ECS< TCID, TProviders >::id_provider_groups |
| bool dz::ECS< TCID, TProviders >::loaded_from_io = false |
| Shader* dz::ECS< TCID, TProviders >::main_shader = 0 |
| Shader* dz::ECS< TCID, TProviders >::model_compute_shader = 0 |
| std::map<float, std::vector<size_t> > dz::ECS< TCID, TProviders >::prioritized_provider_ids |
| std::unordered_map<ShaderModuleType, std::map<float, std::vector<std::string> > > dz::ECS< TCID, TProviders >::priority_glsl_mains |
| std::unordered_map<size_t, std::map<size_t, ReflectableGroup*> > dz::ECS< TCID, TProviders >::provider_id_reflectable_maps |
| std::unordered_map<size_t, std::vector<size_t> > dz::ECS< TCID, TProviders >::provider_index_vectors |
| std::vector<std::shared_ptr<ReflectableGroup> > dz::ECS< TCID, TProviders >::reflectable_group_root_vector |
| std::map<int, RegisteredComponentEntry> dz::ECS< TCID, TProviders >::registered_component_map |
| std::vector<std::string> dz::ECS< TCID, TProviders >::restricted_keys {"Components"} |
| std::filesystem::path dz::ECS< TCID, TProviders >::save_path |
| WINDOW* dz::ECS< TCID, TProviders >::window_ptr = 0 |