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

A Port to call a service. More...

#include <CallPort.hpp>

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

Public Member Functions

 CallPort (CallPort const &other)=delete
 
call (P...parameters) const
 Call a service with a set of parameters.
 
connection_type get_type () const override
 Get port type.
 
operator() (P...parameters) const
 Helper to call the service implicitely.
 
std::string type_name () const override
 Get port type name.
 
- Public Member Functions inherited from mauve::runtime::Port< CallService< R, P... > >
 Port (HasPort *container, std::string const &name)
 
bool connect (CallService< R, P... > &service)
 
bool connect_service (Service *service) overridefinal
 Connect the port to a service.
 
std::vector< Service * > connected_services () const overridefinal
 Get the list of connected services.
 
std::size_t connections_size () const override
 Get the number of connected services.
 
bool disconnect () overridefinal
 Disconnect the port.
 
bool disconnect (CallService< R, P... > &service)
 
Serviceget_connection (int index) const override
 Get connected Service according to the index.
 
bool is_connected () const overridefinal
 Check if the port is connected.
 
bool is_connected_to (CallService< R, P... > &service) const
 
- Public Member Functions inherited from mauve::runtime::AbstractPort
 AbstractPort (std::string const &name)
 Constructor. More...
 
 AbstractPort (const AbstractPort &other)=delete
 Constructor. More...
 

Public Attributes

const R default_value
 Default returned value.
 
- Public Attributes inherited from mauve::runtime::AbstractPort
const std::string name
 Port name.
 

Friends

class HasPort
 

Additional Inherited Members

- Protected Member Functions inherited from mauve::runtime::Port< CallService< R, P... > >
 Port (const Port< CallService< R, P... > > &other)=delete
 
- Protected Attributes inherited from mauve::runtime::Port< CallService< R, P... > >
const HasPortcontainer
 
std::vector< CallService< R, P... > * > services
 

Detailed Description

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

A Port to call a service.