CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
CeresEngine::EntityAction< T, R > Struct Template Reference

A class that must be inherited by concrete action types. More...

#include <CeresEngine/Entity/Action.hpp>

Inheritance diagram for CeresEngine::EntityAction< T, R >:
CeresEngine::AbstractEntityAction

Public Types

using ReturnType = R
 The type that must be returned by action handlers.
 

Static Public Attributes

static const EntityActionID actionID = getActionID()
 This action type ID.
 

Static Private Member Functions

static EntityActionID getActionID () noexcept
 

Detailed Description

template<typename T, typename R = void>
struct CeresEngine::EntityAction< T, R >

A class that must be inherited by concrete action types.

The action sub-classes encapsulate the arguments that will be forwarded to systems supporting that action. This action, if it supports serialization via RTTI, can also be streamed to a remote server using the networking layer.

Template Parameters
Tthe concrete action type
Rthe type that action handlers must return

Member Typedef Documentation

◆ ReturnType

template<typename T , typename R = void>
using CeresEngine::EntityAction< T, R >::ReturnType = R

The type that must be returned by action handlers.

Member Function Documentation

◆ getActionID()

template<typename A , typename R >
EntityActionID CeresEngine::EntityAction< A, R >::getActionID ( )
staticprivatenoexcept
Returns
This action type ID

Member Data Documentation

◆ actionID

template<typename T , typename R = void>
const EntityActionID CeresEngine::EntityAction< T, R >::actionID = getActionID()
inlinestatic

This action type ID.


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