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

Multiplexer interface with read ports. More...

#include <Mux.hpp>

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

Public Types

using CORE = MuxReadPortCore< T, N >
 

Public Attributes

runtime::ReadService< T > & read = this->template mk_read_service<T>("read", &CORE::read)
 Service to read the selected data. More...
 

Additional Inherited Members

- Public Member Functions inherited from mauve::runtime::Interface< MuxReadPortShell< T, N >, MuxReadPortCore< T, N > >
 Interface (Interface const &other)=delete
 
void cleanup () overridefinal
 Cleanup the object.
 
bool configure () overridefinal
 Configure the object.
 
MuxReadPortCore< 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
 
- Protected Member Functions inherited from mauve::runtime::Interface< MuxReadPortShell< T, N >, MuxReadPortCore< T, N > >
MuxReadPortCore< T, N > & core () const
 
CallService< R, P... > & mk_call_service (std::string const &name, typename CallServiceImpl< MuxReadPortCore< T, N >, R, P... >::action_t action)
 
EventServicemk_event_service (std::string const &name, typename EventServiceImpl< MuxReadPortCore< T, N > >::action_t action)
 
ReadService< T > & mk_read_service (std::string const &name, typename ReadServiceImpl< MuxReadPortCore< T, N >, T >::action_t action)
 
WriteService< T > & mk_write_service (std::string const &name, typename WriteServiceImpl< MuxReadPortCore< T, N >, T >::action_t action)
 
MuxReadPortShell< 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::MuxReadPortInterface< T, N >

Multiplexer interface with read ports.

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

Member Data Documentation

template<typename T , int N>
runtime::ReadService<T>& mauve::base::MuxReadPortInterface< T, N >::read = this->template mk_read_service<T>("read", &CORE::read)

Service to read the selected data.