Class component_pool_base

Inheritance Relationships

Derived Type

Class Documentation

class legion::core::ecs::component_pool_base

Base class of legion::core::ecs::component_pool.

Subclassed by legion::core::ecs::component_pool< component_type >

Public Functions

virtual component_container_base *get_components(const entity_container &entities) const = 0
virtual void get_components(const entity_container &entities, component_container_base &comps) const = 0
virtual void set_components(const entity_container &entities, const component_container_base &comps) = 0
virtual bool has_component(id_type entityId) const = 0
virtual void create_component(id_type entityId) = 0
virtual void create_component(id_type entityId, void *value) = 0
virtual void destroy_component(id_type entityId) = 0
virtual void clone_component(id_type dst, id_type src) = 0
virtual void serialize(cereal::JSONOutputArchive &oarchive, id_type entityId) = 0
virtual void serialize(cereal::BinaryOutputArchive &oarchive, id_type entityId) = 0
virtual void serialize(cereal::JSONInputArchive &oarchive, id_type entityId) = 0
virtual void serialize(cereal::BinaryInputArchive &oarchive, id_type entityId) = 0
virtual ~component_pool_base() = default