The MAUVE Toolchain
mauve::base::MuxWriteServiceInterface< T, N > Struct Template Reference

Multiplexer interface with write services. More...

#include <Mux.hpp>

Inheritance diagram for mauve::base::MuxWriteServiceInterface< T, N >:
Collaboration diagram for mauve::base::MuxWriteServiceInterface< T, N >:

Public Member Functions

 MuxWriteServiceInterface ()
 Constructor. More...
 
- Public Member Functions inherited from mauve::runtime::Interface< MuxWriteServiceShell< T, N >, MuxWriteServiceCore< T, N > >
 Interface (Interface const &other)=delete
 
void cleanup () overridefinal
 Cleanup the object.
 
bool configure () overridefinal
 Configure the object.
 
MuxWriteServiceCore< T, N > * core_ptr () const overridefinal
 
Serviceget_service (std::string const &name) const overridefinal
 Get a service by name.
 
Serviceget_service (int index) const overridefinal
 
int get_service_index (const Service *service) const overridefinal
 
const std::vector< Service * > get_services () const overridefinal
 Get the set of services owned by the interface.
 
std::size_t get_services_size () const overridefinal
 
bool is_configured () const overridefinal
 Get the configuration status of the configurable object. More...
 
AbstractLoggerlogger () const override
 Get the logger.
 
std::string name () const
 Get the name.
 
- Public Member Functions inherited from mauve::runtime::AbstractInterface
std::string type_name () const
 Get interface type name.
 
- Public Member Functions inherited from mauve::runtime::HasProperty
const std::vector< AbstractProperty * > get_properties () const
 Get the properties of the shell. More...
 
std::size_t get_properties_size () const
 
AbstractPropertyget_property (std::string const &name) const
 
AbstractPropertyget_property (int index) const
 

Public Attributes

std::array< runtime::WriteService< T > *, N > write_services
 Array of write services. More...
 

Additional Inherited Members

- Protected Member Functions inherited from mauve::runtime::Interface< MuxWriteServiceShell< T, N >, MuxWriteServiceCore< T, N > >
MuxWriteServiceCore< T, N > & core () const
 
CallService< R, P... > & mk_call_service (std::string const &name, typename CallServiceImpl< MuxWriteServiceCore< T, N >, R, P... >::action_t action)
 
EventServicemk_event_service (std::string const &name, typename EventServiceImpl< MuxWriteServiceCore< T, N > >::action_t action)
 
ReadService< T > & mk_read_service (std::string const &name, typename ReadServiceImpl< MuxWriteServiceCore< T, N >, T >::action_t action)
 
WriteService< T > & mk_write_service (std::string const &name, typename WriteServiceImpl< MuxWriteServiceCore< T, N >, T >::action_t action)
 
MuxWriteServiceShell< T, N > & shell () const
 
- Protected Member Functions inherited from mauve::runtime::HasProperty
template<typename T >
Property< T > & mk_property (std::string const &name, T init_value)
 Create a new property. More...
 
- Protected Member Functions inherited from mauve::runtime::WithHook
virtual void cleanup_hook ()
 Hook function called when cleaning the shell. More...
 
virtual bool configure_hook ()
 Hook function called when configuring the shell. More...
 

Detailed Description

template<typename T, int N>
struct mauve::base::MuxWriteServiceInterface< T, N >

Multiplexer interface with write services.

Template Parameters
Ttype of ports data
Nnumber of services ports to mux

Constructor & Destructor Documentation

template<typename T , int N>
mauve::base::MuxWriteServiceInterface< T, N >::MuxWriteServiceInterface ( )

Constructor.

Member Data Documentation

template<typename T , int N>
std::array< runtime::WriteService<T>*, N > mauve::base::MuxWriteServiceInterface< T, N >::write_services

Array of write services.