OpenPolygon  1.0.0
OpenPolygon is a Rendering Engine
Public Types | Public Member Functions | Protected Attributes | Friends | List of all members
Engine::IComponent< Sender > Class Template Reference

The IComponent class. More...

#include <IComponent.h>

Public Types

using IComponentList = std::list< IComponent< Sender > * >
 

Public Member Functions

 IComponent (const std::string &component_name)
 IComponent. More...
 
const std::string & getName (void) const
 message More...
 
uint getID (void) const
 getID More...
 
void addComponent (IComponent< Sender > *component)
 addComponent More...
 
bool hasComponent (const std::string &component_name)
 hasComponent More...
 
IComponent< Sender > * getComponent (const std::string &component_name)
 getComponent More...
 
IComponentList getComponents (const std::string &component_name)
 getComponents More...
 
void remove (IComponent< Sender > *component)
 remove More...
 

Protected Attributes

uint mComponentId
 
IComponentList mComponentList
 

Friends

class ComponentManager
 

Detailed Description

template<class Sender>
class Engine::IComponent< Sender >

The IComponent class.

Component Template Class

Member Typedef Documentation

template<class Sender>
using Engine::IComponent< Sender >::IComponentList = std::list< IComponent<Sender> * >

Component List

Constructor & Destructor Documentation

template<class Sender>
Engine::IComponent< Sender >::IComponent ( const std::string &  component_name)

IComponent.

Default Constructor with Component Name

Parameters
component_name

Member Function Documentation

template<class Sender >
void Engine::IComponent< Sender >::addComponent ( IComponent< Sender > *  component)

addComponent

Add Component

Parameters
component
template<class Sender >
IComponent< Sender > * Engine::IComponent< Sender >::getComponent ( const std::string &  component_name)

getComponent

Return one Component by Component Name

Parameters
component_name
Returns
template<class Sender >
std::list< IComponent< Sender > * > Engine::IComponent< Sender >::getComponents ( const std::string &  component_name)

getComponents

Return more Component by Component Name

Parameters
component_name
Returns
template<class Sender >
uint Engine::IComponent< Sender >::getID ( void  ) const

getID

Return Component ID

Returns
template<class Sender >
const std::string & Engine::IComponent< Sender >::getName ( void  ) const

message

Received a Message from another Sender ( aka. Component )

Parameters
sender
msg
Returns

Return Component Name getName

Returns
template<class Sender >
bool Engine::IComponent< Sender >::hasComponent ( const std::string &  component_name)

hasComponent

Return true if component exists

Parameters
component_name
Returns
template<class Sender >
void Engine::IComponent< Sender >::remove ( IComponent< Sender > *  component)

remove

Destroy one any Component

Parameters
component

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