9#ifndef INCLUDED_GR_UHD_RFNOC_GRAPH_H
10#define INCLUDED_GR_UHD_RFNOC_GRAPH_H
13#include <uhd/rfnoc/noc_block_base.hpp>
14#include <uhd/rfnoc_graph.hpp>
15#include <uhd/stream.hpp>
16#include <uhd/types/device_addr.hpp>
32 using sptr = std::shared_ptr<rfnoc_graph>;
34 static const size_t NULL_ADAPTER_ID =
35 static_cast<size_t>(::uhd::transport::NULL_ADAPTER_ID);
37 static sptr make(const ::uhd::device_addr_t& dev_addr);
49 virtual void connect(
const std::string& src_block,
50 const size_t src_block_port,
51 const std::string& dst_block,
52 const size_t dst_block_port,
53 const bool skip_property_propagation =
false) = 0;
61 virtual void connect(
const std::string& src_block,
62 const std::string& dst_block,
63 const bool skip_property_propagation =
false) = 0;
73 virtual ::uhd::rx_streamer::sptr
84 virtual ::uhd::tx_streamer::sptr
102 const size_t adapter_id) = 0;
115 const int device_select,
116 const int block_select) = 0;
149 virtual ::uhd::rfnoc::noc_block_base::sptr
Definition: rfnoc_graph.h:30
virtual ~rfnoc_graph()
Definition: rfnoc_graph.h:39
virtual void set_streamer_adapter_id(const std::string &stream_block_id, const size_t port, const size_t adapter_id)=0
Set the desired adapter ID for a streamer connection.
virtual void connect(const std::string &src_block, const std::string &dst_block, const bool skip_property_propagation=false)=0
Convenience overload: Defaults to port 0 on both blocks.
virtual void connect(const std::string &src_block, const size_t src_block_port, const std::string &dst_block, const size_t dst_block_port, const bool skip_property_propagation=false)=0
Connect two blocks, or a block to a streamer, or a streamer to a block.
virtual void set_time_source(const std::string &source, const size_t mb_index)=0
Set time source on the specified motherboard.
static sptr make(const ::uhd::device_addr_t &dev_addr)
virtual void commit()=0
Commit the graph and run initial checks.
std::shared_ptr< rfnoc_graph > sptr
Definition: rfnoc_graph.h:32
virtual ::uhd::rx_streamer::sptr create_rx_streamer(const size_t num_ports, const ::uhd::stream_args_t &args)=0
Create an RX streamer.
virtual std::string get_block_id(const std::string &block_name, const int device_select, const int block_select)=0
virtual ::uhd::tx_streamer::sptr create_tx_streamer(const size_t num_ports, const ::uhd::stream_args_t &args)=0
Create a TX streamer.
virtual void set_clock_source(const std::string &source, const size_t mb_index)=0
Set clock source on the specified motherboard.
virtual ::uhd::rfnoc::noc_block_base::sptr get_block_ref(const std::string &block_id, const size_t max_ref_count)=0
Return a reference to the block with a given block ID.
#define GR_UHD_API
Definition: gr-uhd/include/gnuradio/uhd/api.h:18
GNU Radio logging wrapper.
Definition: basic_block.h:29