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

Priority Multiplexer shell with read ports. More...

#include <MuxPriority.hpp>

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

Public Member Functions

 MuxPriorityReadPortShell ()
 Constructor.
 
- Public Member Functions inherited from mauve::runtime::Shell
 Shell (const Shell &shell)=delete
 Copy constructor. More...
 
void cleanup () overridefinal
 Cleanup the object.
 
bool configure () overridefinal
 Configure the object.
 
bool is_configured () const overridefinal
 Get the configuration status of the configurable object. More...
 
AbstractLoggerlogger () const override
 Get the logger.
 
virtual std::string name () const overridefinal
 Get Component name.
 
void print_model (std::ostream &out) const
 Print the Shell model. More...
 
std::string type_name () const
 Get the Shell type name. More...
 
- 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 Member Functions inherited from mauve::runtime::HasPort
void disconnect ()
 
AbstractPortget_port (std::string const &name) const
 
AbstractPortget_port (int index) const
 
const std::vector< AbstractPort * > get_ports () const
 Get the ports of the shell. More...
 
std::size_t get_ports_size () const
 

Public Attributes

runtime::Property< std::array< int, N > > & priorities = mk_property("priorities", std::array<int, N>{})
 Property to indicate the order of priority.
 
std::array< runtime::ReadPort< T > *, N > read_ports
 Array of read ports.
 

Additional Inherited Members

- Protected Member Functions inherited from mauve::runtime::Shell
 Shell ()
 Default constructor. More...
 
virtual ~Shell () noexcept
 Default destructor. More...
 
- 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::HasPort
template<typename R , typename... P>
CallPort< R, P... > mk_call_port (std::string const &name, R default_value)
 
EventPortmk_event_port (std::string const &name)
 
template<typename PORT , typename... PARAM>
PORT & mk_port (std::string const &name, PARAM...parameters)
 Create a new port in this shell. More...
 
template<typename T >
ReadPort< T > & mk_read_port (std::string const &name, T default_value)
 
template<typename T >
WritePort< T > & mk_write_port (std::string const &name)
 
- 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::MuxPriorityReadPortShell< T, N >

Priority Multiplexer shell with read ports.

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