The Joe Engine
Joe's engine programming playground
JoeEngine::JEComponentManager Class Referenceabstract

The Component Manager class. More...

#include <ComponentManager.h>

Inheritance diagram for JoeEngine::JEComponentManager:
JoeEngine::JEMaterialComponentManager JoeEngine::JEMeshComponentManager JoeEngine::JETransformComponentManager RotatorComponentManager

Public Member Functions

 JEComponentManager ()=default
 Default constructor. More...
 
virtual ~JEComponentManager ()=default
 Destructor (default). More...
 
virtual void Update (JEEngineInstance *engineInstance)=0
 Update components. More...
 
virtual void AddNewComponent (uint32_t entityID)=0
 Add new component. More...
 
virtual void RemoveComponent (uint32_t entityID)=0
 Remove component. More...
 

Detailed Description

The Component Manager class.

Abstract base class for all component manager derived classes.

See also
JEEngineInstance

Constructor & Destructor Documentation

◆ JEComponentManager()

JoeEngine::JEComponentManager::JEComponentManager ( )
default

Default constructor.

No specific behavior.

◆ ~JEComponentManager()

virtual JoeEngine::JEComponentManager::~JEComponentManager ( )
virtualdefault

Destructor (default).

Member Function Documentation

◆ AddNewComponent()

virtual void JoeEngine::JEComponentManager::AddNewComponent ( uint32_t  entityID)
pure virtual

Add new component.

Adds a new component to the stored list of components at the specified entity index. Purely virtual function to be overridden by derived component manager classes.

Parameters
entityIDthe id of the entity to add the transform component to

Implemented in JoeEngine::JEMaterialComponentManager, JoeEngine::JEMeshComponentManager, JoeEngine::JETransformComponentManager, and RotatorComponentManager.

◆ RemoveComponent()

virtual void JoeEngine::JEComponentManager::RemoveComponent ( uint32_t  entityID)
pure virtual

Remove component.

Removes the component from the list of transform components at the specified entity index. Purely virtual function to be overridden by derived component manager classes.

Parameters
entityIDthe id of the entity to remove the transform component from

Implemented in JoeEngine::JEMaterialComponentManager, JoeEngine::JEMeshComponentManager, JoeEngine::JETransformComponentManager, and RotatorComponentManager.

◆ Update()

virtual void JoeEngine::JEComponentManager::Update ( JEEngineInstance engineInstance)
pure virtual

Update components.

Updates all stored components. Purely virtual function to be overridden by derived component manager classes.

Parameters
engineInstancea reference to the current JEEngineInstance object if needed for certain API calls

Implemented in RotatorComponentManager, JoeEngine::JEMaterialComponentManager, JoeEngine::JEMeshComponentManager, and JoeEngine::JETransformComponentManager.


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