PandA-2024.02
Public Member Functions | Private Types | Private Member Functions | Private Attributes
mux_connection_binding Class Reference

Class managing the connection binding of datapath. More...

#include <mux_connection_binding.hpp>

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

Public Member Functions

 mux_connection_binding (const ParameterConstRef _parameters, const HLS_managerRef HLSMgr, unsigned int funId, const DesignFlowManagerConstRef design_flow_manager)
 Main constructor. More...
 
 ~mux_connection_binding () override
 Destructor. More...
 
DesignFlowStep_Status InternalExec () override
 Execute the step. More...
 
void Initialize () override
 Initialize the step (i.e., like a constructor, but executed just before exec. More...
 
void create_connections ()
 Creates the connections inside the architecture. More...
 
- Public Member Functions inherited from conn_binding_creator
 conn_binding_creator (const ParameterConstRef Param, const HLS_managerRef HLSMgr, unsigned int funId, const DesignFlowManagerConstRef design_flow_manager, const HLSFlowStep_Type hls_flow_step_type)
 Constructor. More...
 
 ~conn_binding_creator () override
 Destructor. More...
 
- Public Member Functions inherited from HLSFunctionStep
 HLSFunctionStep (const ParameterConstRef Param, const HLS_managerRef HLSMgr, unsigned int funId, const DesignFlowManagerConstRef design_flow_manager, const HLSFlowStep_Type hls_flow_step_type, const HLSFlowStepSpecializationConstRef hls_flow_step_specialization=HLSFlowStepSpecializationConstRef())
 Constructor. More...
 
 ~HLSFunctionStep () override
 Destructor. More...
 
bool HasToBeExecuted () const override
 Check if this step has actually to be executed. More...
 
void Initialize () override
 Initialize the step (i.e., like a constructor, but executed just before exec. More...
 
std::string GetSignature () const final
 Return a unified identifier of this design step. More...
 
std::string GetName () const final
 Return the name of this design step. More...
 
DesignFlowStep_Status Exec () final
 Execute the step. More...
 
- Public Member Functions inherited from HLS_step
 HLS_step (const ParameterConstRef _parameters, const HLS_managerRef HLSMgr, const DesignFlowManagerConstRef design_flow_manager, const HLSFlowStep_Type hls_flow_step_type, const HLSFlowStepSpecializationConstRef hls_flow_step_specialization=HLSFlowStepSpecializationConstRef())
 Constructor. More...
 
 ~HLS_step () override
 Destructor. More...
 
std::string GetSignature () const override
 Return a unified identifier of this design step. More...
 
std::string GetName () const override
 Return the name of this design step. More...
 
virtual std::string GetKindText () const
 Return the name of the type of this frontend flow step. More...
 
DesignFlowStepFactoryConstRef CGetDesignFlowStepFactory () const final
 Return the factory to create this type of steps. More...
 
void ComputeRelationships (DesignFlowStepSet &design_flow_step_set, const DesignFlowStep::RelationshipType relationship_type) override
 Compute the relationships of a step with other steps. More...
 
- Public Member Functions inherited from DesignFlowStep
 DesignFlowStep (const DesignFlowManagerConstRef design_flow_manager, const ParameterConstRef parameters)
 Constructor. More...
 
virtual ~DesignFlowStep ()
 Destructor. More...
 
DesignFlowStep_Status GetStatus () const
 Return the status of this design step. More...
 
virtual void WriteDot (std::ostream &out) const
 Write the label for a dot graph. More...
 
bool IsComposed () const
 Returns if this step is composed. More...
 
int CGetDebugLevel () const
 Return the debug level of the step. More...
 
virtual void PrintInitialIR () const
 Dump the initial intermediate representation. More...
 
virtual void PrintFinalIR () const
 Dump the final intermediate representation. More...
 

Private Types

enum  cacheType {
  i_assign = 0, uu_conv, ui_conv, iu_conv,
  ii_conv
}
 cache connection type More...
 
using resource_id_type = std::pair< unsigned int, unsigned int >
 type representing a resource identifier More...
 

Private Member Functions

unsigned int mux_interconnection ()
 Performs specialization of interconnections using mux architecture. More...
 
unsigned int input_logic (const conn_binding::ConnectionSources &src, const generic_objRef tgt, unsigned int op, unsigned int port_index, unsigned int iteration)
 Computes logic for inputs. More...
 
void determine_connection (const vertex &op, const HLS_manager::io_binding_type &var, generic_objRef fu_obj, unsigned int port_num, unsigned int port_index, const OpGraphConstRef data, unsigned int precision, unsigned int alignment=0)
 Determine the actual interconnection. More...
 
unsigned long long object_bitsize (const tree_managerRef TreeM, const HLS_manager::io_binding_type &obj) const
 Compute the bitsize given a io_binding type. More...
 
void create_single_conn (const OpGraphConstRef data, const vertex &op, generic_objRef fu_obj_src, generic_objRef fu_obj, unsigned int port_num, unsigned int port_index, unsigned int tree_var, unsigned int precision, const bool is_not_a_phi)
 create the connection object and update the unique table More...
 
void connect_to_registers (vertex op, const OpGraphConstRef data, generic_objRef fu_obj, unsigned int port_num, unsigned int port_index, unsigned int tree_var, unsigned long long precision, const bool is_not_a_phi)
 connect the fu_obj with the associated registers. More...
 
unsigned int extract_parm_decl (unsigned int tree_var, const tree_managerRef TreeM)
 
void add_conversion (unsigned int num, vertex op, unsigned int form_par_type, unsigned long long form_par_bitsize, unsigned int port_index, const generic_objRef fu_obj, const OpGraphConstRef data, const tree_managerRef TreeM, unsigned int tree_var)
 
unsigned int address_precision (unsigned int precision, const vertex &op, const OpGraphConstRef data, const tree_managerRef TreeM)
 
bool isConstantObj (unsigned int tree_index, const tree_managerRef TreeM)
 

Private Attributes

std::map< resource_id_type, std::map< unsigned int, CustomOrderedSet< unsigned int > > > regs_in
 store the registers for each resource and for each port More...
 
std::map< resource_id_type, std::map< unsigned int, CustomOrderedSet< unsigned int > > > chained_in
 store the chained storage values for each resource and for each port More...
 
std::map< resource_id_type, std::map< unsigned int, CustomOrderedSet< resource_id_type > > > module_in
 store the resource in IN for each resource and for each port More...
 
CustomOrderedSet< vertexswap_computed_table
 store the operations for which a port swapping is beneficial More...
 
CustomOrderedSet< vertexnoswap_computed_table
 store the operations for which a port swapping is not beneficial More...
 
unsigned int id
 variable used to assign a unique id to sparse logic More...
 
unsigned int cur_phi_tree_var
 store the current phi use. Used during the analysis of phi nodes More...
 
bool is_PC
 
std::map< std::tuple< unsigned int, cacheType, const HLS_manager::io_binding_type >, generic_objRefconnCache
 connection cache More...
 

Additional Inherited Members

- Public Types inherited from DesignFlowStep
enum  RelationshipType { DEPENDENCE_RELATIONSHIP, INVALIDATION_RELATIONSHIP, PRECEDENCE_RELATIONSHIP }
 The relationship type. More...
 
- Static Public Member Functions inherited from HLSFunctionStep
static std::string ComputeSignature (const HLSFlowStep_Type hls_flow_step_type, const HLSFlowStepSpecializationConstRef hls_flow_step_specialization, const unsigned int function_id)
 Compute the signature of a hls flow step. More...
 
- Static Public Member Functions inherited from HLS_step
static std::string EnumToName (const HLSFlowStep_Type hls_flow_step_type)
 Given a HLS flow step type, return the name of the type. More...
 
static const std::string ComputeSignature (const HLSFlowStep_Type hls_flow_step_type, const HLSFlowStepSpecializationConstRef hls_flow_step_specialization)
 Compute the signature of a hls flow step. More...
 
- Protected Member Functions inherited from conn_binding_creator
void add_parameter_ports ()
 Add ports representing parameter values. More...
 
const CustomUnorderedSet< std::tuple< HLSFlowStep_Type, HLSFlowStepSpecializationConstRef, HLSFlowStep_Relationship > > ComputeHLSRelationships (const DesignFlowStep::RelationshipType relationship_type) const override
 Compute the relationship of this step. More...
 
- Protected Member Functions inherited from HLSFunctionStep
void ComputeRelationships (DesignFlowStepSet &design_flow_step_set, const DesignFlowStep::RelationshipType relationship_type) override
 Compute the relationships of a step with other steps. More...
 
- Protected Attributes inherited from conn_binding_creator
std::map< unsigned int, generic_objRefinput_ports
 map between input port variable and generic object More...
 
std::map< unsigned int, generic_objRefoutput_ports
 map between output port variable and generic object More...
 
- Protected Attributes inherited from HLSFunctionStep
std::map< unsigned int, unsigned int > last_bb_ver
 last bb version of the called functions More...
 
std::map< unsigned int, unsigned int > last_bitvalue_ver
 The version of bit value IR representation on which this step was applied. More...
 
const unsigned int funId
 identifier of the function to be processed (0 means that it is a global step) More...
 
hlsRef HLS
 HLS data structure of the function to be analyzed. More...
 
unsigned int bb_version
 The version of bb intermediate representation on which this step was applied. More...
 
unsigned int bitvalue_version
 The version of bitvalue on which this step was applied. More...
 
unsigned int memory_version
 The version of memory representation on which this step was applied. More...
 
- Protected Attributes inherited from HLS_step
const HLS_managerRef HLSMgr
 information about all the HLS synthesis More...
 
const HLSFlowStep_Type hls_flow_step_type
 The type of this step. More...
 
const HLSFlowStepSpecializationConstRef hls_flow_step_specialization
 The information about specialization. More...
 
- Protected Attributes inherited from DesignFlowStep
bool composed
 True if this step represents a composition of design flow steps (e.g., a flow); must be set by specialized constructors. More...
 
const Wrefcount< const DesignFlowManagerdesign_flow_manager
 The design flow manager. More...
 
const ParameterConstRef parameters
 Set of input parameters. More...
 
int debug_level
 The debug level. More...
 
const int output_level
 The output level. More...
 
- Static Protected Attributes inherited from HLS_step
static CustomUnorderedMap< std::string, HLSFlowStep_Typecommand_line_name_to_enum
 Map hls step name to enum. More...
 

Detailed Description

Class managing the connection binding of datapath.

It extends the standard mux_connection_binding class.

This class provides methods to compute interconnections among datapath elements (functional units, registers, ports). Different architectural style have been implemented: mux-based or bus-based. They are implemented as specialization of generic interconnections.

Definition at line 72 of file mux_connection_binding.hpp.

Member Typedef Documentation

◆ resource_id_type

using mux_connection_binding::resource_id_type = std::pair<unsigned int, unsigned int>
private

type representing a resource identifier

Definition at line 76 of file mux_connection_binding.hpp.

Member Enumeration Documentation

◆ cacheType

cache connection type

Enumerator
i_assign 
uu_conv 
ui_conv 
iu_conv 
ii_conv 

Definition at line 100 of file mux_connection_binding.hpp.

Constructor & Destructor Documentation

◆ mux_connection_binding()

mux_connection_binding::mux_connection_binding ( const ParameterConstRef  _parameters,
const HLS_managerRef  HLSMgr,
unsigned int  funId,
const DesignFlowManagerConstRef  design_flow_manager 
)

Main constructor.

Parameters
design_flow_manageris the design flow manager

Definition at line 120 of file mux_connection_binding.cpp.

References DesignFlowStep::debug_level, GET_CLASS, MUX_INTERCONNECTION_BINDING, and ~mux_connection_binding().

Here is the call graph for this function:

◆ ~mux_connection_binding()

mux_connection_binding::~mux_connection_binding ( )
overridedefault

Destructor.

Referenced by mux_connection_binding().

Here is the caller graph for this function:

Member Function Documentation

◆ add_conversion()

void mux_connection_binding::add_conversion ( unsigned int  num,
vertex  op,
unsigned int  form_par_type,
unsigned long long  form_par_bitsize,
unsigned int  port_index,
const generic_objRef  fu_obj,
const OpGraphConstRef  data,
const tree_managerRef  TreeM,
unsigned int  tree_var 
)
private

◆ address_precision()

unsigned int mux_connection_binding::address_precision ( unsigned int  precision,
const vertex op,
const OpGraphConstRef  data,
const tree_managerRef  TreeM 
)
private

◆ connect_to_registers()

void mux_connection_binding::connect_to_registers ( vertex  op,
const OpGraphConstRef  data,
generic_objRef  fu_obj,
unsigned int  port_num,
unsigned int  port_index,
unsigned int  tree_var,
unsigned long long  precision,
const bool  is_not_a_phi 
)
private

◆ create_connections()

void mux_connection_binding::create_connections ( )

Creates the connections inside the architecture.

add the ports representing the parameters

check for required and produced values

virtual phis are skipped

phis are skipped

adding activation's state of selector related to operation op

MEMORY REFERENCES

connect predicate port

connect address port

connect size port

phi must be differently managed

if the variable does not belong to the live-out set, it means that it is used inside the state (chaining) and this situation is managed above

Definition at line 1297 of file mux_connection_binding.cpp.

References add_conversion(), conn_binding::add_data_transfer(), conn_binding_creator::add_parameter_ports(), conn_binding::add_sparse_logic(), hls::allocation_information, conn_binding::bind_command_port(), conn_binding::bind_selector_port(), StateTransitionGraphManager::CGetAstg(), tree_helper::CGetType(), HLS_manager::check_bitwidth(), connCache, conn_binding::create_conn_binding(), create_single_conn(), cur_phi_tree_var, DesignFlowStep::debug_level, DEBUG_LEVEL_PEDANTIC, DEBUG_LEVEL_VERY_PEDANTIC, determine_connection(), FunctionBehavior::FDFG, hls::functionId, HLSFunctionStep::funId, reg_binding::get(), fu_binding::get(), fu_binding::get_allocation_list(), fu_binding::get_assign(), GET_CONST_NODE, AllocationInformation::get_fu(), AllocationInformation::get_fu_name(), fu_binding::get_index(), GET_INDEX_NODE, tree_node::get_kind(), tree_node::get_kind_text(), StateTransitionGraphManager::get_mu_ctrls(), GET_NAME, liveness::get_name(), GET_NODE, fu_binding::get_number(), AllocationInformation::get_number_channels(), liveness::get_op_where_defined(), fu_binding::get_ports_are_swapped(), reg_binding::get_register(), liveness::get_state_out(), liveness::get_state_where_end(), liveness::get_state_where_run(), StorageValueInformation::get_storage_value_index(), generic_obj::get_string(), AllocationInformation::get_string_name(), GET_TYPE, reg_binding::get_used_regs(), tree_helper::GetConstValue(), tree_helper::GetFormalIth(), StateTransitionGraphManager::GetStg(), liveness::has_state_out(), HLSFunctionStep::HLS, HLS_step::HLSMgr, INDENT_DBG_MEX, index, tree_helper::is_a_pointer(), StorageValueInformation::is_a_storage_value(), tree_helper::is_bool(), AllocationInformation::is_direct_access_memory_unit(), AllocationInformation::is_dual_port_memory(), AllocationInformation::is_indirect_access_memory_unit(), tree_helper::is_int(), is_PC, tree_helper::is_real(), tree_helper::is_unsigned(), tree_helper::IsBooleanType(), isConstantObj(), tree_helper::IsRealType(), tree_helper::IsSameType(), tree_helper::IsSignedIntegerType(), tree_helper::IsUnsignedIntegerType(), iu_conv, key, MULTI_READ_COND, NULL_VERTEX, object_bitsize(), DesignFlowStep::parameters, pi(), PRINT_DBG_MEX, hls::Rconn, hls::Rfu, hls::Rliv, hls::Rreg, tree_helper::Size(), hls::STG, hls::storage_value_information, STR, THROW_ASSERT, THROW_ERROR, ToString(), test_panda::type, TYPE_IF, TYPE_LOAD, TYPE_MULTIIF, TYPE_PHI, TYPE_STORE, TYPE_SWITCH, TYPE_VPHI, U, and uu_conv.

Referenced by InternalExec().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ create_single_conn()

void mux_connection_binding::create_single_conn ( const OpGraphConstRef  data,
const vertex op,
generic_objRef  fu_obj_src,
generic_objRef  fu_obj,
unsigned int  port_num,
unsigned int  port_index,
unsigned int  tree_var,
unsigned int  precision,
const bool  is_not_a_phi 
)
private

create the connection object and update the unique table

instead of tree_var we use cur_phi_tree_var when we look into the state in data structure since tree_var can be modified in the mean time

Definition at line 199 of file mux_connection_binding.cpp.

References conn_binding::add_data_transfer(), OpGraph::CGetOpNodeInfo(), cur_phi_tree_var, DesignFlowStep::debug_level, DEBUG_LEVEL_PEDANTIC, HLSFunctionStep::funId, liveness::get_name(), liveness::get_state_in(), liveness::get_state_where_run(), generic_obj::get_string(), tree_manager::get_tree_node_const(), StateTransitionGraphManager::GetStg(), liveness::has_state_in(), HLSFunctionStep::HLS, HLS_step::HLSMgr, is_PC, NULL_VERTEX, PRINT_DBG_MEX, hls::Rconn, hls::Rliv, hls::STG, STR, and THROW_ASSERT.

Referenced by add_conversion(), create_connections(), and determine_connection().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ determine_connection()

void mux_connection_binding::determine_connection ( const vertex op,
const HLS_manager::io_binding_type var,
generic_objRef  fu_obj,
unsigned int  port_num,
unsigned int  port_index,
const OpGraphConstRef  data,
unsigned int  precision,
unsigned int  alignment = 0 
)
private

◆ extract_parm_decl()

unsigned int mux_connection_binding::extract_parm_decl ( unsigned int  tree_var,
const tree_managerRef  TreeM 
)
private

Definition at line 675 of file mux_connection_binding.cpp.

References GET_INDEX_NODE, and tree_manager::get_tree_node_const().

Referenced by connect_to_registers().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Initialize()

void mux_connection_binding::Initialize ( )
overridevirtual

Initialize the step (i.e., like a constructor, but executed just before exec.

Reimplemented from DesignFlowStep.

Definition at line 134 of file mux_connection_binding.cpp.

References chained_in, cur_phi_tree_var, HLSFunctionStep::HLS, HLSFunctionStep::Initialize(), module_in, noswap_computed_table, hls::Rconn, regs_in, and swap_computed_table.

Here is the call graph for this function:

◆ input_logic()

unsigned int mux_connection_binding::input_logic ( const conn_binding::ConnectionSources src,
const generic_objRef  tgt,
unsigned int  op,
unsigned int  port_index,
unsigned int  iteration 
)
private

Computes logic for inputs.

The connection can become directed or by multiplexer. If multiplexers are allocated, then decoding logic is created.

Parameters
srcis the set of references to generic_obj, sources of connections
tgtis the reference to connection target
opis i-th operand of target element, where source is attached
port_indexis the i-th port index of the given target port.
Returns
number of multiplexer allocated

if it's a one-to-one connection, a directed link can be used

map between the source object and the resulting tree of multiplexers to the current target object

map between a data_transfer and object associated at the moment

map between a generic_obj and list of data_transfer associated with this object

map between a data_transfer and original source object

all the inputs are connected with 2:1 multiplexers. Two inputs are taken at each time.

stuff for the first input

stuff for the second input

specialize connections between sources and target

Definition at line 2200 of file mux_connection_binding.cpp.

References conn_binding::AddConnectionCB(), conn_binding::bind_selector_port(), DesignFlowStep::debug_level, DEBUG_LEVEL_VERY_PEDANTIC, F_COND, HLSFunctionStep::funId, liveness::get_name(), generic_obj::get_string(), HLSFunctionStep::HLS, HLS_step::HLSMgr, INFINITE_UINT, level, PRINT_DBG_MEX, hls::Rconn, generic_obj::REGISTER, hls::Rliv, STR, T_COND, THROW_ASSERT, and THROW_ERROR.

Referenced by mux_interconnection().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ InternalExec()

DesignFlowStep_Status mux_connection_binding::InternalExec ( )
overridevirtual

Execute the step.

This function is the public one to execute connection binding.

Returns
the exit status of this step

First it computes virtual connection to be implemented and then it allocates them based on chosen architecture

Implements HLSFunctionStep.

Definition at line 149 of file mux_connection_binding.cpp.

References conn_binding::cleanInternals(), connCache, create_connections(), conn_binding::determine_bit_level_mux(), HLSFunctionStep::funId, HLSFunctionStep::HLS, HLS_step::HLSMgr, INDENT_OUT_MEX, mux_interconnection(), DesignFlowStep::output_level, OUTPUT_LEVEL_MINIMUM, OUTPUT_LEVEL_PEDANTIC, conn_binding::print(), print_cpu_time(), hls::Rconn, START_TIME, STOP_TIME, STR, and SUCCESS.

Here is the call graph for this function:

◆ isConstantObj()

bool mux_connection_binding::isConstantObj ( unsigned int  tree_index,
const tree_managerRef  TreeM 
)
private

Definition at line 321 of file mux_connection_binding.cpp.

References tree_manager::get_tree_node_const().

Referenced by add_conversion(), and create_connections().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ mux_interconnection()

unsigned int mux_connection_binding::mux_interconnection ( )
private

Performs specialization of interconnections using mux architecture.

Definition at line 2178 of file mux_connection_binding.cpp.

References DesignFlowStep::debug_level, DEBUG_LEVEL_PEDANTIC, DEBUG_LEVEL_VERBOSE, conn_binding::get_data_transfers(), generic_obj::get_string(), HLSFunctionStep::HLS, input_logic(), PRINT_DBG_MEX, and hls::Rconn.

Referenced by InternalExec().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ object_bitsize()

unsigned long long mux_connection_binding::object_bitsize ( const tree_managerRef  TreeM,
const HLS_manager::io_binding_type obj 
) const
private

Compute the bitsize given a io_binding type.

Definition at line 2391 of file mux_connection_binding.cpp.

References tree_manager::CGetTreeReindex(), tree_helper::CGetType(), HLS_step::HLSMgr, tree_helper::IsArrayType(), tree_helper::IsStructType(), tree_helper::IsUnionType(), tree_helper::Size(), and test_panda::type.

Referenced by create_connections().

Here is the call graph for this function:
Here is the caller graph for this function:

Field Documentation

◆ chained_in

std::map<resource_id_type, std::map<unsigned int, CustomOrderedSet<unsigned int> > > mux_connection_binding::chained_in
private

store the chained storage values for each resource and for each port

Definition at line 81 of file mux_connection_binding.hpp.

Referenced by Initialize().

◆ connCache

std::map<std::tuple<unsigned int, cacheType, const HLS_manager::io_binding_type>, generic_objRef> mux_connection_binding::connCache
private

connection cache

Definition at line 109 of file mux_connection_binding.hpp.

Referenced by add_conversion(), create_connections(), and InternalExec().

◆ cur_phi_tree_var

unsigned int mux_connection_binding::cur_phi_tree_var
private

store the current phi use. Used during the analysis of phi nodes

Definition at line 95 of file mux_connection_binding.hpp.

Referenced by connect_to_registers(), create_connections(), create_single_conn(), and Initialize().

◆ id

unsigned int mux_connection_binding::id
private

variable used to assign a unique id to sparse logic

Definition at line 92 of file mux_connection_binding.hpp.

◆ is_PC

bool mux_connection_binding::is_PC
private

◆ module_in

std::map<resource_id_type, std::map<unsigned int, CustomOrderedSet<resource_id_type> > > mux_connection_binding::module_in
private

store the resource in IN for each resource and for each port

Definition at line 83 of file mux_connection_binding.hpp.

Referenced by Initialize().

◆ noswap_computed_table

CustomOrderedSet<vertex> mux_connection_binding::noswap_computed_table
private

store the operations for which a port swapping is not beneficial

Definition at line 89 of file mux_connection_binding.hpp.

Referenced by Initialize().

◆ regs_in

std::map<resource_id_type, std::map<unsigned int, CustomOrderedSet<unsigned int> > > mux_connection_binding::regs_in
private

store the registers for each resource and for each port

Definition at line 79 of file mux_connection_binding.hpp.

Referenced by Initialize().

◆ swap_computed_table

CustomOrderedSet<vertex> mux_connection_binding::swap_computed_table
private

store the operations for which a port swapping is beneficial

Definition at line 86 of file mux_connection_binding.hpp.

Referenced by Initialize().


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

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