neoGFX
Cross-platform C++ app/game engine
|
#include <i_component.hpp>
Public Member Functions | |
virtual const void * | populate (const std::string &aName, const void *aComponentData, std::size_t aComponentDataSize)=0 |
template<typename ComponentData > | |
const void * | populate (const std::string &aName, ComponentData &&aComponentData) |
Public Member Functions inherited from neolib::ecs::i_component_base | |
virtual | ~i_component_base ()=default |
virtual i_ecs & | ecs () const =0 |
virtual const component_id & | id () const =0 |
virtual neolib::i_lockable & | mutex () const =0 |
virtual bool | is_data_optional () const =0 |
virtual const neolib::i_string & | name () const =0 |
virtual uint32_t | field_count () const =0 |
virtual component_data_field_type | field_type (uint32_t aFieldIndex) const =0 |
virtual neolib::uuid | field_type_id (uint32_t aFieldIndex) const =0 |
virtual const neolib::i_string & | field_name (uint32_t aFieldIndex) const =0 |
Definition at line 81 of file i_component.hpp.
|
inline |
Definition at line 86 of file i_component.hpp.
|
pure virtual |
Implemented in neolib::ecs::shared_component< Data >.