18 #ifndef INCLUDED_LIBUHD_RFNOC_RADIO_CTRL_HPP 19 #define INCLUDED_LIBUHD_RFNOC_RADIO_CTRL_HPP 53 virtual double get_rate()
const = 0;
59 virtual double set_rate(
double rate) = 0;
65 virtual std::string get_tx_antenna(
const size_t chan) = 0;
71 virtual void set_tx_antenna(
const std::string &ant,
const size_t chan) = 0;
77 virtual std::string get_rx_antenna(
const size_t chan) = 0;
83 virtual void set_rx_antenna(
const std::string &ant,
const size_t chan) = 0;
92 virtual double get_tx_frequency(
const size_t chan) = 0;
104 virtual double set_tx_frequency(
const double freq,
size_t chan) = 0;
110 virtual double get_rx_frequency(
const size_t chan) = 0;
119 virtual double set_rx_frequency(
const double freq,
const size_t chan) = 0;
125 virtual double get_tx_gain(
const size_t chan) = 0;
134 virtual double set_tx_gain(
const double gain,
const size_t chan) = 0;
140 virtual double get_rx_gain(
const size_t chan) = 0;
149 virtual double set_rx_gain(
const double gain,
const size_t chan) = 0;
158 virtual void set_time_now(
const time_spec_t &time_spec) = 0;
171 virtual void set_time_next_pps(
const time_spec_t &time_spec) = 0;
195 virtual size_t get_chan_from_dboard_fe(
const std::string &fe,
const uhd::direction_t dir) = 0;
199 virtual std::string get_dboard_fe_from_chan(
const size_t chan,
const uhd::direction_t dir) = 0;
Definition: terminator_node_ctrl.hpp:40
#define UHD_RFNOC_BLOCK_OBJECT(class_name)
This macro must be put in the public section of an RFNoC.
Definition: block_ctrl_base.hpp:74
Definition: sink_block_ctrl_base.hpp:36
Definition: time_spec.hpp:39
Definition: rate_node_ctrl.hpp:38
Block controller for all RFNoC-based radio blocks.
Definition: radio_ctrl.hpp:34
Definition: build_info.hpp:25
Definition: tick_node_ctrl.hpp:35
#define UHD_RFNOC_API
Definition: config.hpp:103
Definition: source_block_ctrl_base.hpp:35
direction_t
Definition: direction.hpp:23