| 
| using  | sptr = std::shared_ptr< noc_block_base > | 
|   | 
| using  | make_args_ptr = std::unique_ptr< make_args_t > | 
|   | Opaque pointer to the constructor arguments.  More...
  | 
|   | 
| enum   | forwarding_policy_t {  
  forwarding_policy_t::ONE_TO_ONE, 
forwarding_policy_t::ONE_TO_FAN, 
forwarding_policy_t::ONE_TO_ALL_IN, 
forwarding_policy_t::ONE_TO_ALL_OUT, 
 
  forwarding_policy_t::ONE_TO_ALL, 
forwarding_policy_t::DROP, 
forwarding_policy_t::USE_MAP
 
 } | 
|   | Types of property/action forwarding for those not defined by the block itself.  More...
  | 
|   | 
| using  | resolver_fn_t = std::function< void(void)> | 
|   | 
| using  | resolve_callback_t = std::function< void(void)> | 
|   | 
| using  | graph_mutex_callback_t = std::function< std::recursive_mutex &(void)> | 
|   | 
| using  | action_handler_t = std::function< void(const res_source_info &, action_info::sptr)> | 
|   | 
| using  | forwarding_map_t = std::unordered_map< res_source_info, std::vector< res_source_info > > | 
|   | 
| using  | prop_ptrs_t = std::vector< property_base_t * > | 
|   | 
|   | noc_block_base (make_args_ptr make_args) | 
|   | 
| void  | set_num_input_ports (const size_t num_ports) | 
|   | 
| void  | set_num_output_ports (const size_t num_ports) | 
|   | 
| void  | set_tick_rate (const double tick_rate) | 
|   | 
| void  | set_mtu_forwarding_policy (const forwarding_policy_t policy) | 
|   | 
| void  | set_mtu (const res_source_info &edge, const size_t new_mtu) | 
|   | 
| property_base_t *  | get_mtu_prop_ref (const res_source_info &edge) | 
|   | 
| virtual void  | deinit () | 
|   | 
| void  | register_property (property_base_t *prop, resolve_callback_t &&clean_callback=nullptr) | 
|   | 
| void  | add_property_resolver (prop_ptrs_t &&inputs, prop_ptrs_t &&outputs, resolver_fn_t &&resolver_fn) | 
|   | 
| void  | set_prop_forwarding_policy (forwarding_policy_t policy, const std::string &prop_id="") | 
|   | 
| void  | set_prop_forwarding_map (const forwarding_map_t &map) | 
|   | 
| template<typename prop_data_t >  | 
| void  | set_property (const std::string &id, const prop_data_t &val, const res_source_info &src_info) | 
|   | 
| template<typename prop_data_t >  | 
| const prop_data_t &  | get_property (const std::string &id, const res_source_info &src_info) | 
|   | 
| void  | register_action_handler (const std::string &id, action_handler_t &&handler) | 
|   | 
| void  | set_action_forwarding_policy (forwarding_policy_t policy, const std::string &action_key="") | 
|   | 
| void  | set_action_forwarding_map (const forwarding_map_t &map) | 
|   | 
| void  | post_action (const res_source_info &edge_info, action_info::sptr action) | 
|   | 
| virtual bool  | check_topology (const std::vector< size_t > &connected_inputs, const std::vector< size_t > &connected_outputs) | 
|   | 
| void  | update_reg_iface (register_iface::sptr new_iface=nullptr) | 
|   | 
| static dirtifier_t  | ALWAYS_DIRTY | 
|   | A dirtifyer object, useful for properties that always need updating.  More...
  | 
|   | 
Switchboard Block Control Class
The Switchboard Block is an RFNoC block that routes any single input to any single output. Routing is 1 to 1, that is, an input port can only be connected to one output port, and vice versa.
INIT: This block is initialized with only input port 0 connected to output port 0.
NOTE: This block is not intended to switch during the transmission of packets. Data on disconnected inputs will stall.