CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
CeresEngine::EntityActionType Class Reference

A type that describes and provides type-erased operations on a entity action. More...

#include <CeresEngine/Entity/Action.hpp>

Inheritance diagram for CeresEngine::EntityActionType:
CeresEngine::TEntityActionType< A >

Public Member Functions

 EntityActionType (const EntityActionType &)=delete
 
EntityActionTypeoperator= (const EntityActionType &)=delete
 
 EntityActionType (EntityActionType &&)=delete
 
EntityActionTypeoperator= (EntityActionType &&)=delete
 

Static Public Member Functions

template<typename A >
static const EntityActionTypeget () noexcept
 The type instance for a action of the A.
 

Public Attributes

const EntityActionID actionID
 The action type ID.
 

Protected Member Functions

 EntityActionType (const EntityActionID actionID)
 

Static Protected Attributes

static EntityActionID nextActionID = 0
 The next action ID to be statically allocated by the compiler.
 

Friends

bool operator== (const EntityActionType &lhs, const EntityActionType &rhs) noexcept
 Compares two EntityActionType instances for equality.
 
bool operator!= (const EntityActionType &lhs, const EntityActionType &rhs) noexcept
 Compares two EntityActionType instances for inequality.
 

Detailed Description

A type that describes and provides type-erased operations on a entity action.

Constructor & Destructor Documentation

◆ EntityActionType() [1/3]

CeresEngine::EntityActionType::EntityActionType ( const EntityActionID  actionID)
inlineexplicitprotected

◆ EntityActionType() [2/3]

CeresEngine::EntityActionType::EntityActionType ( const EntityActionType )
delete

◆ EntityActionType() [3/3]

CeresEngine::EntityActionType::EntityActionType ( EntityActionType &&  )
delete

Member Function Documentation

◆ get()

template<typename A >
const EntityActionType & CeresEngine::EntityActionType::get ( )
inlinestaticnoexcept

The type instance for a action of the A.

This instance is unique for any given action type A and is safe to perform pointer comparisons on the type.

Template Parameters
AThe type of action to return the type descriptor for.

◆ operator=() [1/2]

EntityActionType & CeresEngine::EntityActionType::operator= ( const EntityActionType )
delete

◆ operator=() [2/2]

EntityActionType & CeresEngine::EntityActionType::operator= ( EntityActionType &&  )
delete

Friends And Related Symbol Documentation

◆ operator!=

bool operator!= ( const EntityActionType lhs,
const EntityActionType rhs 
)
friend

Compares two EntityActionType instances for inequality.

If true, lhs and rhs instances represent different entityAction types.

◆ operator==

bool operator== ( const EntityActionType lhs,
const EntityActionType rhs 
)
friend

Compares two EntityActionType instances for equality.

If true, lhs and `rhs instances represent the same entityAction type.

Member Data Documentation

◆ actionID

const EntityActionID CeresEngine::EntityActionType::actionID

The action type ID.

Used as a value that uniquely identifies the action.

◆ nextActionID

EntityActionID CeresEngine::EntityActionType::nextActionID = 0
inlinestaticprotected

The next action ID to be statically allocated by the compiler.


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