Inexor
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Public Attributes | Private Attributes | List of all members
inexor::rpc::RpcSubsystem< MSG_TYPE, ASYNC_SERVICE_TYPE > Class Template Reference

#include <RpcSubsystem.hpp>

Inheritance diagram for inexor::rpc::RpcSubsystem< MSG_TYPE, ASYNC_SERVICE_TYPE >:
inexor::util::Subsystem

Public Types

typedef std::function
< std::unique_ptr< Subsystem >)> 
Starter
 A function that starts a subsystem and returns a pointer to the instance this exists for the register: we can not store classes at run time, so we instead store these functions as proxies to the Constructors. More...
 

Public Member Functions

 RpcSubsystem ()
 
 ~RpcSubsystem ()
 
virtual void initialize (int argc, char **argv) override
 Called once. More...
 
virtual void tick () override
 Called once per frame, or what ever our event loop is. More...
 

Public Attributes

bool is_initialized = false
 

Private Attributes

RpcServer< MSG_TYPE,
ASYNC_SERVICE_TYPE > * 
serv = nullptr
 

Member Typedef Documentation

typedef std::function<std::unique_ptr<Subsystem>)> inexor::util::Subsystem::Starter
inherited

A function that starts a subsystem and returns a pointer to the instance this exists for the register: we can not store classes at run time, so we instead store these functions as proxies to the Constructors.

We create these as lambdas in the SUBSYSTEM_REGISTER macro;

Constructor & Destructor Documentation

template<typename MSG_TYPE , typename ASYNC_SERVICE_TYPE >
inexor::rpc::RpcSubsystem< MSG_TYPE, ASYNC_SERVICE_TYPE >::RpcSubsystem ( )
inline
template<typename MSG_TYPE , typename ASYNC_SERVICE_TYPE >
inexor::rpc::RpcSubsystem< MSG_TYPE, ASYNC_SERVICE_TYPE >::~RpcSubsystem ( )
inline

Member Function Documentation

template<typename MSG_TYPE , typename ASYNC_SERVICE_TYPE >
virtual void inexor::rpc::RpcSubsystem< MSG_TYPE, ASYNC_SERVICE_TYPE >::initialize ( int  argc,
char **  argv 
)
inlineoverridevirtual
template<typename MSG_TYPE , typename ASYNC_SERVICE_TYPE >
virtual void inexor::rpc::RpcSubsystem< MSG_TYPE, ASYNC_SERVICE_TYPE >::tick ( )
inlineoverridevirtual

Called once per frame, or what ever our event loop is.

Reimplemented from inexor::util::Subsystem.

References inexor::rpc::RpcSubsystem< MSG_TYPE, ASYNC_SERVICE_TYPE >::serv.

Member Data Documentation

bool inexor::util::Subsystem::is_initialized = false
inherited
template<typename MSG_TYPE , typename ASYNC_SERVICE_TYPE >
RpcServer<MSG_TYPE, ASYNC_SERVICE_TYPE>* inexor::rpc::RpcSubsystem< MSG_TYPE, ASYNC_SERVICE_TYPE >::serv = nullptr
private

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