22 #ifndef INCLUDED_GR_UHD_USRP_SINK_H
23 #define INCLUDED_GR_UHD_USRP_SINK_H
27 #include <uhd/usrp/multi_usrp.hpp>
60 const uhd::device_addr_t &device_addr,
61 const uhd::io_type_t &io_type,
73 virtual void set_subdev_spec(
const std::string &spec,
size_t mboard = 0) = 0;
79 virtual void set_samp_rate(
double rate) = 0;
86 virtual double get_samp_rate(
void) = 0;
94 virtual uhd::tune_result_t set_center_freq(
95 const uhd::tune_request_t tune_request,
size_t chan = 0
107 return set_center_freq(uhd::tune_request_t(freq), chan);
115 virtual double get_center_freq(
size_t chan = 0) = 0;
122 virtual uhd::freq_range_t get_freq_range(
size_t chan = 0) = 0;
129 virtual void set_gain(
double gain,
size_t chan = 0) = 0;
137 virtual void set_gain(
double gain,
const std::string &name,
size_t chan = 0) = 0;
144 virtual double get_gain(
size_t chan = 0) = 0;
152 virtual double get_gain(
const std::string &name,
size_t chan = 0) = 0;
159 virtual std::vector<std::string> get_gain_names(
size_t chan = 0) = 0;
166 virtual uhd::gain_range_t get_gain_range(
size_t chan = 0) = 0;
174 virtual uhd::gain_range_t get_gain_range(
const std::string &name,
size_t chan = 0) = 0;
181 virtual void set_antenna(
const std::string &ant,
size_t chan = 0) = 0;
188 virtual std::string get_antenna(
size_t chan = 0) = 0;
195 virtual std::vector<std::string> get_antennas(
size_t chan = 0) = 0;
202 virtual void set_bandwidth(
double bandwidth,
size_t chan = 0) = 0;
210 virtual uhd::sensor_value_t get_dboard_sensor(
const std::string &name,
size_t chan = 0) = 0;
217 virtual std::vector<std::string> get_dboard_sensor_names(
size_t chan = 0) = 0;
225 virtual uhd::sensor_value_t get_mboard_sensor(
const std::string &name,
size_t mboard = 0) = 0;
232 virtual std::vector<std::string> get_mboard_sensor_names(
size_t mboard = 0) = 0;
239 virtual void set_clock_config(
const uhd::clock_config_t &clock_config,
size_t mboard = 0) = 0;
246 virtual double get_clock_rate(
size_t mboard = 0) = 0;
253 virtual void set_clock_rate(
double rate,
size_t mboard = 0) = 0;
260 virtual uhd::time_spec_t get_time_now(
size_t mboard = 0) = 0;
267 virtual uhd::time_spec_t get_time_last_pps(
size_t mboard = 0) = 0;
274 virtual void set_time_now(
const uhd::time_spec_t &time_spec,
size_t mboard = 0) = 0;
280 virtual void set_time_next_pps(
const uhd::time_spec_t &time_spec) = 0;
286 virtual void set_time_unknown_pps(
const uhd::time_spec_t &time_spec) = 0;
292 virtual uhd::usrp::dboard_iface::sptr get_dboard_iface(
size_t chan = 0) = 0;
298 virtual uhd::usrp::multi_usrp::sptr get_device(
void) = 0;