PandA-2024.02
Public Member Functions | Private Attributes
mux_conn Class Reference

This class is used to represent a connection through multiplexers. More...

#include <mux_conn.hpp>

Inheritance diagram for mux_conn:
Inheritance graph
[legend]
Collaboration diagram for mux_conn:
Collaboration graph
[legend]

Public Member Functions

 mux_conn (const CustomOrderedSet< data_transfer > &_live_variable, const std::vector< std::pair< generic_objRef, unsigned int >> &_mux_tree)
 Constructor. More...
 
 ~mux_conn () override=default
 Destructor. More...
 
const std::string get_string () const override
 Returns the name associated with the element. More...
 
std::vector< std::pair< generic_objRef, unsigned int > > get_mux_tree () const
 Returns the mux tree associated with the connection. More...
 
unsigned int get_mux_tree_size () const
 Returns the number of multiplexers required to implement the connection. More...
 
- Public Member Functions inherited from connection_obj
 connection_obj (element_t _type, const CustomOrderedSet< data_transfer > &_live_variable)
 Constructor. More...
 
virtual ~connection_obj ()
 Destructor. More...
 
const CustomOrderedSet< data_transfer > & get_variables () const
 Gets the temporary set. More...
 
unsigned int get_type () const
 Returns type of object used to perform connection. More...
 

Private Attributes

std::vector< std::pair< generic_objRef, unsigned int > > mux_tree
 It's sequence of multiplexer inputs to drive the signal from the source element to the target one. More...
 

Additional Inherited Members

- Public Types inherited from connection_obj
using element_t = enum { DIRECT_CONN, BY_MUX }
 resource type More...
 
- Protected Attributes inherited from connection_obj
element_t type
 type of the connection More...
 
CustomOrderedSet< data_transferlive_variable
 Set of variables that cross the connection. More...
 

Detailed Description

This class is used to represent a connection through multiplexers.

Definition at line 61 of file mux_conn.hpp.

Constructor & Destructor Documentation

◆ mux_conn()

mux_conn::mux_conn ( const CustomOrderedSet< data_transfer > &  _live_variable,
const std::vector< std::pair< generic_objRef, unsigned int >> &  _mux_tree 
)
inline

Constructor.

Parameters
live_variableis the set of data transfers
_mux_treeis mux tree for the new connection

Definition at line 74 of file mux_conn.hpp.

References ~mux_conn().

Here is the call graph for this function:

◆ ~mux_conn()

mux_conn::~mux_conn ( )
overridedefault

Destructor.

Referenced by mux_conn().

Here is the caller graph for this function:

Member Function Documentation

◆ get_mux_tree()

std::vector<std::pair<generic_objRef, unsigned int> > mux_conn::get_mux_tree ( ) const
inline

Returns the mux tree associated with the connection.

Returns
a vector where each element is a multiplexer, along with the corresponding active input.

Definition at line 99 of file mux_conn.hpp.

References mux_tree.

◆ get_mux_tree_size()

unsigned int mux_conn::get_mux_tree_size ( ) const
inline

Returns the number of multiplexers required to implement the connection.

Returns
an integer representing the number of multiplexers (i.e., the length of the tree)

Definition at line 108 of file mux_conn.hpp.

◆ get_string()

const std::string mux_conn::get_string ( ) const
inlineoverridevirtual

Returns the name associated with the element.

Returns
a string containing the name associated with the element.

Implements connection_obj.

Definition at line 89 of file mux_conn.hpp.

References T_COND, and THROW_ASSERT.

Field Documentation

◆ mux_tree

std::vector<std::pair<generic_objRef, unsigned int> > mux_conn::mux_tree
private

It's sequence of multiplexer inputs to drive the signal from the source element to the target one.

Note that each vector element is a multiplexer, connected to the next one the unsigned int represents the mux input port

Definition at line 66 of file mux_conn.hpp.

Referenced by get_mux_tree().


The documentation for this class was generated from the following file:

Generated on Mon Feb 12 2024 13:03:58 for PandA-2024.02 by doxygen 1.8.13