GNU Radio Manual and C++ API Reference 3.10.5.1
The Free & Open Software Radio Ecosystem
rfnoc_tx_streamer.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_TX_STREAMER_H
10#define INCLUDED_GR_UHD_RFNOC_TX_STREAMER_H
11
12#include <gnuradio/sync_block.h>
13#include <gnuradio/uhd/api.h>
15#include <uhd/stream.hpp>
16
17namespace gr {
18namespace uhd {
19
20/*! RFNoC Tx Streamer: Block to handle data flow from a GNU Radio flow graph
21 * into an RFNoC flow graph.
22 *
23 * Use this block for egress from a GNU Radio flow graph. "Tx" is from the
24 * viewpoint of the GNU Radio flow graph. For example, if the GNU Radio flow
25 * graph is creating samples to be transmitted to a radio, use this block to
26 * transport the samples out of GNU Radio.
27 *
28 * Note: The output ports of this block can only connect to other RFNoC blocks.
29 *
30 * \ingroup ettus
31 */
33{
34public:
35 typedef std::shared_ptr<rfnoc_tx_streamer> sptr;
36
37 /*!
38 * \param graph Reference to the graph this block is connected to
39 * \param num_chans Number of input- and output ports
40 * \param stream_args These will be passed on to
41 * rfnoc_graph::create_tx_streamer, see that for details.
42 * The cpu_format and otw_format parts of these args will
43 * be used to determine the in- and output signatures of
44 * this block.
45 * \param vlen Vector length
46 */
48 const size_t num_chans,
49 const ::uhd::stream_args_t& stream_args,
50 const size_t vlen = 1);
51
52 //! Return the unique ID associated with the underlying RFNoC streamer
53 virtual std::string get_unique_id() const = 0;
54};
55
56} // namespace uhd
57} // namespace gr
58
59#endif /* INCLUDED_GR_UHD_RFNOC_TX_STREAMER_H */
synchronous 1:1 input to output with history
Definition: sync_block.h:26
std::shared_ptr< rfnoc_graph > sptr
Definition: rfnoc_graph.h:32
Definition: rfnoc_tx_streamer.h:33
static sptr make(rfnoc_graph::sptr graph, const size_t num_chans, const ::uhd::stream_args_t &stream_args, const size_t vlen=1)
virtual std::string get_unique_id() const =0
Return the unique ID associated with the underlying RFNoC streamer.
std::shared_ptr< rfnoc_tx_streamer > sptr
Definition: rfnoc_tx_streamer.h:35
#define GR_UHD_API
Definition: gr-uhd/include/gnuradio/uhd/api.h:18
GNU Radio logging wrapper.
Definition: basic_block.h:29