USRP Hardware Driver and USRP Manual Version: 3.15.0.0-MacPorts-Release
UHD and USRP Manual
 
Loading...
Searching...
No Matches
sink_block_ctrl_base.hpp
Go to the documentation of this file.
1//
2// Copyright 2014 Ettus Research LLC
3// Copyright 2018 Ettus Research, a National Instruments Company
4//
5// SPDX-License-Identifier: GPL-3.0-or-later
6//
7
8#ifndef INCLUDED_LIBUHD_TX_BLOCK_CTRL_BASE_HPP
9#define INCLUDED_LIBUHD_TX_BLOCK_CTRL_BASE_HPP
10
13
14namespace uhd { namespace rfnoc {
15
25class sink_block_ctrl_base : virtual public block_ctrl_base, virtual public sink_node_ctrl
26{
27public:
28 typedef boost::shared_ptr<sink_block_ctrl_base> sptr;
29
30 /***********************************************************************
31 * Stream signatures
32 **********************************************************************/
43 stream_sig_t get_input_signature(size_t block_port = 0) const;
44
47 std::vector<size_t> get_input_ports() const;
48
49 /***********************************************************************
50 * FPGA Configuration
51 **********************************************************************/
64 size_t get_fifo_size(size_t block_port = 0) const;
65
76 size_t get_mtu(size_t block_port = 0) const;
77
95 const size_t bytes, const size_t block_port = 0);
96
102 virtual void set_error_policy(const std::string& policy);
103
104protected:
105 /***********************************************************************
106 * Hooks
107 **********************************************************************/
111 virtual size_t _request_input_port(
112 const size_t suggested_port, const uhd::device_addr_t& args) const;
113
114}; /* class sink_block_ctrl_base */
115
116}} /* namespace uhd::rfnoc */
117
118#endif /* INCLUDED_LIBUHD_TX_BLOCK_CTRL_BASE_HPP */
Definition device_addr.hpp:39
Definition block_ctrl_base.hpp:88
Definition sink_block_ctrl_base.hpp:26
size_t get_fifo_size(size_t block_port=0) const
virtual size_t _request_input_port(const size_t suggested_port, const uhd::device_addr_t &args) const
std::vector< size_t > get_input_ports() const
size_t get_mtu(size_t block_port=0) const
boost::shared_ptr< sink_block_ctrl_base > sptr
Definition sink_block_ctrl_base.hpp:28
stream_sig_t get_input_signature(size_t block_port=0) const
virtual void configure_flow_control_in(const size_t bytes, const size_t block_port=0)
virtual void set_error_policy(const std::string &policy)
Definition sink_node_ctrl.hpp:24
Definition stream_sig.hpp:24
#define UHD_RFNOC_API
Definition config.hpp:117
Definition build_info.hpp:13