#include <uhd/rfnoc/rf_control/core_iface.hpp>
Public Types | |
using | sptr = std::shared_ptr< core_iface > |
Public Member Functions | |
virtual | ~core_iface ()=default |
virtual std::string | get_tx_antenna (const size_t chan) const =0 |
virtual std::vector< std::string > | get_tx_antennas (const size_t chan) const =0 |
virtual void | set_tx_antenna (const std::string &ant, const size_t chan)=0 |
virtual std::string | get_rx_antenna (const size_t chan) const =0 |
virtual std::vector< std::string > | get_rx_antennas (const size_t chan) const =0 |
virtual void | set_rx_antenna (const std::string &ant, const size_t chan)=0 |
virtual double | get_tx_frequency (const size_t chan)=0 |
virtual double | set_tx_frequency (const double freq, size_t chan)=0 |
virtual void | set_tx_tune_args (const uhd::device_addr_t &args, const size_t chan)=0 |
virtual uhd::freq_range_t | get_tx_frequency_range (const size_t chan) const =0 |
virtual double | get_rx_frequency (const size_t chan)=0 |
virtual double | set_rx_frequency (const double freq, const size_t chan)=0 |
virtual void | set_rx_tune_args (const uhd::device_addr_t &args, const size_t chan)=0 |
virtual uhd::freq_range_t | get_rx_frequency_range (const size_t chan) const =0 |
virtual std::vector< std::string > | get_tx_gain_names (const size_t chan) const =0 |
virtual uhd::gain_range_t | get_tx_gain_range (const size_t chan) const =0 |
virtual uhd::gain_range_t | get_tx_gain_range (const std::string &name, const size_t chan) const =0 |
virtual double | get_tx_gain (const size_t chan)=0 |
virtual double | get_tx_gain (const std::string &name, const size_t chan)=0 |
virtual double | set_tx_gain (const double gain, const size_t chan)=0 |
virtual double | set_tx_gain (const double gain, const std::string &name, const size_t chan)=0 |
virtual std::vector< std::string > | get_rx_gain_names (const size_t chan) const =0 |
virtual uhd::gain_range_t | get_rx_gain_range (const size_t chan) const =0 |
virtual uhd::gain_range_t | get_rx_gain_range (const std::string &name, const size_t chan) const =0 |
virtual double | get_rx_gain (const size_t chan)=0 |
virtual double | get_rx_gain (const std::string &name, const size_t chan)=0 |
virtual double | set_rx_gain (const double gain, const size_t chan)=0 |
virtual double | set_rx_gain (const double gain, const std::string &name, const size_t chan)=0 |
virtual void | set_rx_agc (const bool enable, const size_t chan)=0 |
virtual meta_range_t | get_tx_bandwidth_range (size_t chan) const =0 |
virtual double | get_tx_bandwidth (const size_t chan)=0 |
virtual double | set_tx_bandwidth (const double bandwidth, const size_t chan)=0 |
virtual meta_range_t | get_rx_bandwidth_range (size_t chan) const =0 |
virtual double | get_rx_bandwidth (const size_t chan)=0 |
virtual double | set_rx_bandwidth (const double bandwidth, const size_t chan)=0 |
virtual std::vector< std::string > | get_rx_lo_names (const size_t chan) const =0 |
virtual std::vector< std::string > | get_rx_lo_sources (const std::string &name, const size_t chan) const =0 |
virtual freq_range_t | get_rx_lo_freq_range (const std::string &name, const size_t chan) const =0 |
virtual void | set_rx_lo_source (const std::string &src, const std::string &name, const size_t chan)=0 |
virtual std::string | get_rx_lo_source (const std::string &name, const size_t chan)=0 |
virtual void | set_rx_lo_export_enabled (bool enabled, const std::string &name, const size_t chan)=0 |
virtual bool | get_rx_lo_export_enabled (const std::string &name, const size_t chan)=0 |
virtual double | set_rx_lo_freq (double freq, const std::string &name, const size_t chan)=0 |
virtual double | get_rx_lo_freq (const std::string &name, const size_t chan)=0 |
virtual std::vector< std::string > | get_tx_lo_names (const size_t chan) const =0 |
virtual std::vector< std::string > | get_tx_lo_sources (const std::string &name, const size_t chan) const =0 |
virtual freq_range_t | get_tx_lo_freq_range (const std::string &name, const size_t chan)=0 |
virtual void | set_tx_lo_source (const std::string &src, const std::string &name, const size_t chan)=0 |
virtual std::string | get_tx_lo_source (const std::string &name, const size_t chan)=0 |
virtual void | set_tx_lo_export_enabled (const bool enabled, const std::string &name, const size_t chan)=0 |
virtual bool | get_tx_lo_export_enabled (const std::string &name, const size_t chan)=0 |
virtual double | set_tx_lo_freq (const double freq, const std::string &name, const size_t chan)=0 |
virtual double | get_tx_lo_freq (const std::string &name, const size_t chan)=0 |
Interface for generic RF control functions
This interface contains all methods related directly to RF control which aren't contained in a different rf_control class. These methods are not usually accessed via this interface, but are usually accessed via an instance of radio_control, which implements this class.
using uhd::rfnoc::rf_control::core_iface::sptr = std::shared_ptr<core_iface> |
|
virtualdefault |
|
pure virtual |
Return the selected RX antenna for channel chan
.
Implemented in uhd::rfnoc::rf_control::antenna_radio_control_mixin.
|
pure virtual |
Return a list of valid RX antenna for channel chan
.
Implemented in uhd::rfnoc::rf_control::antenna_radio_control_mixin.
|
pure virtual |
Return the analog filter bandwidth channel chan
|
pure virtual |
Return a range of valid RX bandwidths
|
pure virtual |
Return the current receive LO frequency on channel chan
.
|
pure virtual |
Return the range of frequencies that chan
can be tuned to.
|
pure virtual |
Return the overall receive gain on channel chan
Implemented in uhd::rfnoc::rf_control::nameless_gain_mixin.
|
pure virtual |
Return the receive gain name
on channel chan
|
pure virtual |
Return a list of valid RX gain names
|
pure virtual |
Return a range of valid RX gains
Implemented in uhd::rfnoc::rf_control::nameless_gain_mixin.
|
pure virtual |
Return a range of valid RX gains
|
pure virtual |
Returns true if the currently selected LO is being exported.
name | the name of the LO stage to query |
chan | the channel index 0 to N-1 |
|
pure virtual |
Get the current RX LO frequency (Advanced). If the channel does not have independently configurable LOs the current rf frequency will be returned.
name | the name of the LO stage to query |
chan | the channel index 0 to N-1 |
|
pure virtual |
Get the LO frequency range of the RX LO. If the channel does not have independently configurable LOs the rf frequency range will be returned.
name | the name of the LO stage to query |
chan | the channel index 0 to N-1 |
|
pure virtual |
Get a list of possible LO stage names
chan | the channel index 0 to N-1 |
|
pure virtual |
Get the currently set LO source. Channels without controllable LO sources will return "internal"
name | the name of the LO stage to query |
chan | the channel index 0 to N-1 |
|
pure virtual |
Get a list of possible LO sources.
Channels which do not have controllable LO sources will return "internal".
name | the name of the LO stage to query |
chan | the channel index 0 to N-1 |
|
pure virtual |
Return the selected TX antenna for channel chan
.
Implemented in uhd::rfnoc::rf_control::antenna_radio_control_mixin.
|
pure virtual |
Return a list of valid TX antenna for channel chan
.
Implemented in uhd::rfnoc::rf_control::antenna_radio_control_mixin.
|
pure virtual |
Return the analog filter bandwidth channel chan
|
pure virtual |
Return a range of valid TX bandwidths
|
pure virtual |
Return the current transmit LO frequency on channel chan
.
|
pure virtual |
Return the range of frequencies that chan
can be tuned to.
|
pure virtual |
Return the overall transmit gain on channel chan
Implemented in uhd::rfnoc::rf_control::nameless_gain_mixin.
|
pure virtual |
Return the transmit gain name
on channel chan
|
pure virtual |
Return a list of valid TX gain names
|
pure virtual |
Return a range of valid TX gains
Implemented in uhd::rfnoc::rf_control::nameless_gain_mixin.
|
pure virtual |
Return a range of valid TX gains
|
pure virtual |
Returns true if the currently selected LO is being exported.
name | the name of the LO stage to query |
chan | the channel index 0 to N-1 |
|
pure virtual |
Get the current TX LO frequency (Advanced).
See also multi_usrp::get_tx_lo_freq()
If the channel does not have independently configurable LOs the current RF frequency will be returned.
name | the name of the LO stage to query |
chan | the channel index 0 to N-1 |
|
pure virtual |
Get the LO frequency range of the tx LO. If the channel does not have independently configurable LOs the rf frequency range will be returned.
name | the name of the LO stage to query |
chan | the channel index 0 to N-1 |
|
pure virtual |
Get a list of possible LO stage names
chan | the channel index 0 to N-1 |
|
pure virtual |
Get the currently set LO source. Channels without controllable LO sources will return "internal"
name | the name of the LO stage to query |
chan | the channel index 0 to N-1 |
|
pure virtual |
Get a list of possible LO sources.
Channels which do not have controllable LO sources will return "internal".
name | the name of the LO stage to query |
chan | the channel index 0 to N-1 |
|
pure virtual |
Enable RX AGC on this radio
uhd::not_implemented_error | if this radio doesn't support RX AGC |
|
pure virtual |
Select RX antenna for
channel chan
.
uhd::value_error | if ant is not a valid value. |
Implemented in uhd::rfnoc::rf_control::antenna_radio_control_mixin.
|
pure virtual |
Set the analog filter bandwidth channel chan
This function will attempt to set the analog bandwidth.
|
pure virtual |
Tune the RX frequency for channel chan
.
This function will attempt to tune as close as possible, and return a coerced value of the actual tuning result.
If there is a single LO in this radio, and we're doing direct conversion, then this is the LO frequency.
freq | Requested frequency |
chan | Channel number. |
|
pure virtual |
Set the overall receive gain on channel chan
This function will attempt to set the gain as close as possible, and return a coerced value of the actual gain value.
Implemented in uhd::rfnoc::rf_control::nameless_gain_mixin.
|
pure virtual |
Set the receive gain on
channel chan
This function will attempt to set the gain as close as possible, and return a coerced value of the actual gain value.
|
pure virtual |
Set whether the LO used by the usrp device is exported For usrps that support exportable LOs, this function configures if the LO used by chan is exported or not.
enabled | if true then export the LO |
name | the name of the LO stage to update |
chan | the channel index 0 to N-1 for the source channel |
|
pure virtual |
Set the RX LO frequency (Advanced).
freq | the frequency to set the LO to |
name | the name of the LO stage to update |
chan | the channel index 0 to N-1 |
|
pure virtual |
Set the LO source for a channel. For usrps that support selectable LOs, this function allows switching between them. Typical options for source: internal, external.
src | a string representing the LO source |
name | the name of the LO stage to update |
chan | the channel index 0 to N-1 |
|
pure virtual |
Set the TX tune args, if supported by the hardware.
|
pure virtual |
Select TX antenna for
channel chan
.
uhd::value_error | if ant is not a valid value. |
Implemented in uhd::rfnoc::rf_control::antenna_radio_control_mixin.
|
pure virtual |
Set the analog filter bandwidth channel chan
This function will attempt to set the analog bandwidth.
|
pure virtual |
Tune the TX frequency for channel chan
.
This function will attempt to tune as close as possible, and return a coerced value of the actual tuning result.
If there is a single LO in this radio, and we're doing direct conversion, then this is the LO frequency.
freq | Frequency in Hz |
chan | Channel to tune |
|
pure virtual |
Set the transmit gain on channel chan
This function will attempt to set the gain as close as possible, and return a coerced value of the actual gain value.
This method will set the overall gain. To set a specific gain, use set_tx_gain(const double, const std::string&, const size_t).
Implemented in uhd::rfnoc::rf_control::nameless_gain_mixin.
|
pure virtual |
Set the transmit gain name
on channel chan
This function will attempt to set the gain as close as possible, and return a coerced value of the actual gain value.
|
pure virtual |
Set whether the LO used by the usrp device is exported For usrps that support exportable LOs, this function configures if the LO used by chan is exported or not.
enabled | if true then export the LO |
name | the name of the LO stage to update |
chan | the channel index 0 to N-1 for the source channel |
|
pure virtual |
Set the tx LO frequency (Advanced).
See also multi_usrp::set_tx_lo_freq().
freq | the frequency to set the LO to |
name | the name of the LO stage to update |
chan | the channel index 0 to N-1 |
|
pure virtual |
Set the LO source for a channel. For usrps that support selectable LOs, this function allows switching between them. Typical options for source: internal, external.
src | a string representing the LO source |
name | the name of the LO stage to update |
chan | the channel index 0 to N-1 |
|
pure virtual |
Set the TX tune args, if supported by the hardware.