The MAUVE Toolchain
mauve::runtime::CallServiceImpl< CORE, R, P > Class Template Referencefinal

Call Service implementation. More...

#include <CallService.hpp>

Inheritance diagram for mauve::runtime::CallServiceImpl< CORE, R, P >:
Collaboration diagram for mauve::runtime::CallServiceImpl< CORE, R, P >:

Public Types

using action_t = std::function< R(CORE *, P...)>
 Service action type.
 

Public Member Functions

 CallServiceImpl (ServiceContainer< CORE > *container, std::string const &name, action_t action)
 Constructor.
 
 CallServiceImpl (const CallService< CORE, R, P... > &other)=delete
 Constructor.
 
call (P...parameters) const override
 Call the service.
 
std::string get_resource_name () const override
 
- Public Member Functions inherited from mauve::runtime::CallService< R, P... >
 CallService (std::string const &name)
 Constructor.
 
 CallService (const CallService< R, P... > &other)=delete
 
connection_type get_type () const overridefinal
 
operator() (P...parameters) const
 Helper.
 
- Public Member Functions inherited from mauve::runtime::Service
 Service (std::string const &name)
 Constructor.
 
 Service (const Service &other)=delete
 Constructor.
 
std::string type_name () const
 Service type name.
 

Additional Inherited Members

- Public Attributes inherited from mauve::runtime::Service
const std::string name
 Service name.
 

Detailed Description

template<typename CORE, typename R, typename... P>
class mauve::runtime::CallServiceImpl< CORE, R, P >

Call Service implementation.

Template Parameters
CORECore of the resource
RReturn type
PParameters types