Loading...
Searching...
No Matches
graph_utils.hpp
Go to the documentation of this file.
//
// Copyright 2019 Ettus Research, a National Instruments Branch
//
// SPDX-License-Identifier: GPL-3.0-or-later
//
#pragma once
#include <uhd/config.hpp>
#include <uhd/rfnoc/block_id.hpp>
#include <uhd/rfnoc/defaults.hpp>
#include <uhd/rfnoc/graph_edge.hpp>
#include <uhd/rfnoc_graph.hpp>
#include <boost/none.hpp>
#include <boost/optional.hpp>
#include <vector>
namespace uhd { namespace rfnoc {
using block_port_def = std::tuple<std::string, boost::optional<size_t>>;
// TODO: Get rid of magic strings
static const std::vector<block_port_def> TERMINATOR_BLOCKS{
block_port_def{NODE_ID_SEP, boost::none},
block_port_def{"Radio", boost::none},
block_port_def{"NullSrcSink", 0}};
std::vector<graph_edge_t> UHD_API get_block_chain(const rfnoc_graph::sptr graph,
const block_id_t start_block,
const size_t port,
const bool source_chain);
std::vector<graph_edge_t> UHD_API connect_through_blocks(rfnoc_graph::sptr graph,
const block_id_t src_blk,
const size_t src_port,
const block_id_t dst_blk,
const size_t dst_port,
const bool skip_property_propagation = false);
}} // namespace uhd::rfnoc
block_id.hpp
uhd::rfnoc::block_id_t
Definition block_id.hpp:40
uhd::rfnoc::rfnoc_graph::sptr
std::shared_ptr< rfnoc_graph > sptr
Definition rfnoc_graph.hpp:40
UHD_API
#define UHD_API
Definition config.h:87
config.hpp
defaults.hpp
graph_edge.hpp
uhd::rfnoc
Definition actions.hpp:24
uhd::rfnoc::block_port_def
std::tuple< std::string, boost::optional< size_t > > block_port_def
Tuple that stores a block ID, as well as an optional port number.
Definition graph_utils.hpp:22
uhd::rfnoc::get_block_chain
std::vector< graph_edge_t > UHD_API get_block_chain(const rfnoc_graph::sptr graph, const block_id_t start_block, const size_t port, const bool source_chain)
uhd::rfnoc::connect_through_blocks
std::vector< graph_edge_t > UHD_API connect_through_blocks(rfnoc_graph::sptr graph, const block_id_t src_blk, const size_t src_port, const block_id_t dst_blk, const size_t dst_port, const bool skip_property_propagation=false)
uhd
Definition build_info.hpp:12
rfnoc_graph.hpp