GNU Radio Manual and C++ API Reference  3.10.9.1
The Free & Open Software Radio Ecosystem
rfnoc_block_generic.h
Go to the documentation of this file.
1 /* -*- c++ -*- */
2 /*
3  * Copyright 2019 Ettus Research, a National Instruments Brand.
4  * Copyright 2020 Free Software Foundation, Inc.
5  *
6  * SPDX-License-Identifier: GPL-3.0-or-later
7  */
8 
9 #ifndef INCLUDED_GR_UHD_RFNOC_BLOCK_GENERIC_H
10 #define INCLUDED_GR_UHD_RFNOC_BLOCK_GENERIC_H
11 
12 #include <gnuradio/block.h>
13 #include <gnuradio/uhd/api.h>
16 
17 namespace gr {
18 namespace uhd {
19 
20 /*! Generic RFNoC block holder
21  *
22  * This block can represent any RFNoC block
23  *
24  * \ingroup uhd_blk
25  */
27 {
28 public:
29  typedef std::shared_ptr<rfnoc_block_generic> sptr;
30 
31  /*!
32  * \param graph Reference to the underlying rfnoc_graph object
33  * \param block_args Arguments that get passed into the block
34  * \param block_name Block name. This argument, along with \p device_select
35  * and \p block_select, are used to identify which block
36  * is instantiated.
37  * \param device_select Optional: Device count.
38  * \param block_select Optional: Block select.
39  */
40  static sptr make(rfnoc_graph::sptr graph,
41  const ::uhd::device_addr_t& block_args,
42  const std::string& block_name,
43  const int device_select = -1,
44  const int block_select = -1);
45 };
46 
47 } // namespace uhd
48 } // namespace gr
49 
50 #endif /* INCLUDED_GR_UHD_RFNOC_BLOCK_GENERIC_H */
Definition: rfnoc_block_generic.h:27
std::shared_ptr< rfnoc_block_generic > sptr
Definition: rfnoc_block_generic.h:29
static sptr make(rfnoc_graph::sptr graph, const ::uhd::device_addr_t &block_args, const std::string &block_name, const int device_select=-1, const int block_select=-1)
Definition: rfnoc_block.h:29
std::shared_ptr< rfnoc_block > sptr
Definition: rfnoc_block.h:37
std::shared_ptr< rfnoc_graph > sptr
Definition: rfnoc_graph.h:32
#define GR_UHD_API
Definition: gr-uhd/include/gnuradio/uhd/api.h:18
GNU Radio logging wrapper.
Definition: basic_block.h:29