Raven Engine v0.1
A modern 3D Game Engine
Loading...
Searching...
No Matches
Raven::ComponentBase Class Referenceabstract

Abstract base class for all components. More...

#include <Component.h>

Inherited by Raven::ComponentStorage< T >.

Public Member Functions

virtual ~ComponentBase ()=default
virtual ComponentBaseCopy () const =0
virtual void Remove (const UUID &entity)=0
virtual bool Has (const UUID &entity) const =0
virtual std::vector< UUIDGetEntities () const =0

Detailed Description

Abstract base class for all components.

Serves as a common interface for all components, allowing them to be stored polymorphically. All component types must inherit from this base.

Constructor & Destructor Documentation

◆ ~ComponentBase()

virtual Raven::ComponentBase::~ComponentBase ( )
virtualdefault

Member Function Documentation

◆ Copy()

virtual ComponentBase * Raven::ComponentBase::Copy ( ) const
pure virtual

◆ GetEntities()

virtual std::vector< UUID > Raven::ComponentBase::GetEntities ( ) const
pure virtual

◆ Has()

virtual bool Raven::ComponentBase::Has ( const UUID & entity) const
pure virtual

◆ Remove()

virtual void Raven::ComponentBase::Remove ( const UUID & entity)
pure virtual

The documentation for this class was generated from the following file: