GNU Radio's TEST Package
|
#include <source_iface.h>
Public Member Functions | |
virtual size_t | get_num_channels (void)=0 |
virtual bool | seek (long seek_point, int whence, size_t chan=0) |
seek file to seek_point relative to whence More... | |
virtual osmosdr::meta_range_t | get_sample_rates (void)=0 |
virtual double | set_sample_rate (double rate)=0 |
virtual double | get_sample_rate (void)=0 |
virtual osmosdr::freq_range_t | get_freq_range (size_t chan=0)=0 |
virtual double | set_center_freq (double freq, size_t chan=0)=0 |
virtual double | get_center_freq (size_t chan=0)=0 |
virtual double | set_freq_corr (double ppm, size_t chan=0)=0 |
virtual double | get_freq_corr (size_t chan=0)=0 |
virtual std::vector< std::string > | get_gain_names (size_t chan=0)=0 |
virtual osmosdr::gain_range_t | get_gain_range (size_t chan=0)=0 |
virtual osmosdr::gain_range_t | get_gain_range (const std::string &name, size_t chan=0)=0 |
virtual bool | set_gain_mode (bool automatic, size_t chan=0) |
virtual bool | get_gain_mode (size_t chan=0) |
virtual double | set_gain (double gain, size_t chan=0)=0 |
virtual double | set_gain (double gain, const std::string &name, size_t chan=0)=0 |
virtual double | get_gain (size_t chan=0)=0 |
virtual double | get_gain (const std::string &name, size_t chan=0)=0 |
virtual double | set_if_gain (double gain, size_t chan=0) |
virtual double | set_bb_gain (double gain, size_t chan=0) |
virtual std::vector< std::string > | get_antennas (size_t chan=0)=0 |
virtual std::string | set_antenna (const std::string &antenna, size_t chan=0)=0 |
virtual std::string | get_antenna (size_t chan=0)=0 |
virtual void | set_dc_offset_mode (int mode, size_t chan=0) |
virtual void | set_dc_offset (const std::complex< double > &offset, size_t chan=0) |
virtual void | set_iq_balance_mode (int mode, size_t chan=0) |
virtual void | set_iq_balance (const std::complex< double > &balance, size_t chan=0) |
virtual double | set_bandwidth (double bandwidth, size_t chan=0) |
virtual double | get_bandwidth (size_t chan=0) |
virtual osmosdr::freq_range_t | get_bandwidth_range (size_t chan=0) |
virtual void | set_time_source (const std::string &source, const size_t mboard=0) |
virtual std::string | get_time_source (const size_t mboard) |
virtual std::vector< std::string > | get_time_sources (const size_t mboard) |
virtual void | set_clock_source (const std::string &source, const size_t mboard=0) |
virtual std::string | get_clock_source (const size_t mboard) |
virtual std::vector< std::string > | get_clock_sources (const size_t mboard) |
virtual double | get_clock_rate (size_t mboard=0) |
virtual void | set_clock_rate (double rate, size_t mboard=0) |
virtual ::osmosdr::time_spec_t | get_time_now (size_t mboard=0) |
virtual ::osmosdr::time_spec_t | get_time_last_pps (size_t mboard=0) |
virtual void | set_time_now (const ::osmosdr::time_spec_t &time_spec, size_t mboard=0) |
virtual void | set_time_next_pps (const ::osmosdr::time_spec_t &time_spec) |
virtual void | set_time_unknown_pps (const ::osmosdr::time_spec_t &time_spec) |
TODO: document
|
pure virtual |
Get the actual underlying radio hardware antenna setting.
chan | the channel index 0 to N-1 |
Implemented in xtrx_source_c, uhd_source_c, sdrplay_source_c, rtl_tcp_source_c, rtl_source_c, rfspace_source_c, redpitaya_source_c, hackrf_source_c, freesrp_source_c, file_source_c, fcd_source_c, bladerf_source_c, airspyhf_source_c, airspy_source_c, and soapy_source_c.
|
pure virtual |
Get the available antennas of the underlying radio hardware.
chan | the channel index 0 to N-1 |
Implemented in xtrx_source_c, uhd_source_c, sdrplay_source_c, rtl_tcp_source_c, rtl_source_c, rfspace_source_c, redpitaya_source_c, hackrf_source_c, freesrp_source_c, file_source_c, fcd_source_c, bladerf_source_c, airspyhf_source_c, airspy_source_c, and soapy_source_c.
|
inlinevirtual |
Get the actual bandpass filter setting on the radio frontend.
chan | the channel index 0 to N-1 |
Reimplemented in xtrx_source_c, uhd_source_c, sdrplay_source_c, rfspace_source_c, hackrf_source_c, freesrp_source_c, bladerf_source_c, airspy_source_c, and soapy_source_c.
|
inlinevirtual |
Get the possible bandpass filter settings on the radio frontend.
chan | the channel index 0 to N-1 |
Reimplemented in xtrx_source_c, uhd_source_c, sdrplay_source_c, rfspace_source_c, hackrf_source_c, freesrp_source_c, bladerf_source_c, airspy_source_c, and soapy_source_c.
|
pure virtual |
Get the center frequency the underlying radio hardware is tuned to. This is the actual frequency and may differ from the frequency set.
chan | the channel index 0 to N-1 |
Implemented in xtrx_source_c, uhd_source_c, sdrplay_source_c, rtl_tcp_source_c, rtl_source_c, rfspace_source_c, redpitaya_source_c, hackrf_source_c, freesrp_source_c, file_source_c, fcd_source_c, bladerf_source_c, airspyhf_source_c, airspy_source_c, and soapy_source_c.
|
inlinevirtual |
Get the master clock rate.
mboard | the motherboard index 0 to M-1 |
Reimplemented in uhd_source_c, and soapy_source_c.
|
inlinevirtual |
Get the currently set clock source.
mboard | which motherboard to get the config |
Reimplemented in bladerf_source_c, uhd_source_c, and soapy_source_c.
|
inlinevirtual |
Get a list of possible clock sources.
mboard | which motherboard to get the list |
Reimplemented in bladerf_source_c, uhd_source_c, and soapy_source_c.
|
pure virtual |
Get the frequency correction value.
chan | the channel index 0 to N-1 |
Implemented in xtrx_source_c, uhd_source_c, sdrplay_source_c, rtl_tcp_source_c, rtl_source_c, rfspace_source_c, redpitaya_source_c, hackrf_source_c, freesrp_source_c, file_source_c, fcd_source_c, bladerf_source_c, airspyhf_source_c, airspy_source_c, and soapy_source_c.
|
pure virtual |
Get the tunable frequency range for the underlying radio hardware.
chan | the channel index 0 to N-1 |
Implemented in xtrx_source_c, uhd_source_c, sdrplay_source_c, rtl_tcp_source_c, rtl_source_c, rfspace_source_c, redpitaya_source_c, hackrf_source_c, freesrp_source_c, file_source_c, fcd_source_c, bladerf_source_c, airspyhf_source_c, airspy_source_c, and soapy_source_c.
|
pure virtual |
Get the actual gain setting of a named stage.
name | the name of the gain stage |
chan | the channel index 0 to N-1 |
Implemented in xtrx_source_c, uhd_source_c, sdrplay_source_c, rtl_tcp_source_c, rtl_source_c, rfspace_source_c, redpitaya_source_c, hackrf_source_c, freesrp_source_c, file_source_c, fcd_source_c, bladerf_source_c, airspyhf_source_c, airspy_source_c, and soapy_source_c.
|
pure virtual |
Get the actual gain setting of the underlying radio hardware.
chan | the channel index 0 to N-1 |
Implemented in xtrx_source_c, uhd_source_c, sdrplay_source_c, rtl_tcp_source_c, rtl_source_c, rfspace_source_c, redpitaya_source_c, hackrf_source_c, freesrp_source_c, file_source_c, fcd_source_c, bladerf_source_c, airspyhf_source_c, airspy_source_c, and soapy_source_c.
|
inlinevirtual |
Get the gain mode selected for the underlying radio hardware.
chan | the channel index 0 to N-1 |
Reimplemented in xtrx_source_c, sdrplay_source_c, rtl_tcp_source_c, rtl_source_c, rfspace_source_c, hackrf_source_c, freesrp_source_c, bladerf_source_c, airspy_source_c, and soapy_source_c.
|
pure virtual |
Get the gain stage names of the underlying radio hardware.
chan | the channel index 0 to N-1 |
Implemented in xtrx_source_c, uhd_source_c, sdrplay_source_c, rtl_tcp_source_c, rtl_source_c, rfspace_source_c, redpitaya_source_c, hackrf_source_c, freesrp_source_c, file_source_c, fcd_source_c, bladerf_source_c, airspyhf_source_c, airspy_source_c, and soapy_source_c.
|
pure virtual |
Get the settable gain range for a specific gain stage.
name | the name of the gain stage |
chan | the channel index 0 to N-1 |
Implemented in xtrx_source_c, uhd_source_c, sdrplay_source_c, rtl_tcp_source_c, rtl_source_c, rfspace_source_c, redpitaya_source_c, hackrf_source_c, freesrp_source_c, file_source_c, fcd_source_c, bladerf_source_c, airspyhf_source_c, airspy_source_c, and soapy_source_c.
|
pure virtual |
Get the settable overall gain range for the underlying radio hardware.
chan | the channel index 0 to N-1 |
Implemented in xtrx_source_c, uhd_source_c, sdrplay_source_c, rtl_tcp_source_c, rtl_source_c, rfspace_source_c, redpitaya_source_c, hackrf_source_c, freesrp_source_c, file_source_c, fcd_source_c, bladerf_source_c, airspyhf_source_c, airspy_source_c, and soapy_source_c.
|
pure virtual |
Get the number of channels the underlying radio hardware offers.
Implemented in xtrx_source_c, uhd_source_c, soapy_source_c, sdrplay_source_c, rtl_tcp_source_c, rtl_source_c, rfspace_source_c, redpitaya_source_c, hackrf_source_c, freesrp_source_c, file_source_c, fcd_source_c, bladerf_source_c, airspyhf_source_c, and airspy_source_c.
|
pure virtual |
Get the sample rate for the underlying radio hardware. This is the actual sample rate and may differ from the rate set.
Implemented in xtrx_source_c, uhd_source_c, soapy_source_c, sdrplay_source_c, rtl_tcp_source_c, rtl_source_c, rfspace_source_c, redpitaya_source_c, hackrf_source_c, freesrp_source_c, file_source_c, fcd_source_c, bladerf_source_c, airspyhf_source_c, and airspy_source_c.
|
pure virtual |
Get the possible sample rates for the underlying radio hardware.
Implemented in xtrx_source_c, uhd_source_c, soapy_source_c, sdrplay_source_c, rtl_tcp_source_c, rtl_source_c, rfspace_source_c, redpitaya_source_c, hackrf_source_c, freesrp_source_c, file_source_c, fcd_source_c, bladerf_source_c, airspyhf_source_c, and airspy_source_c.
|
inline |
Get the time when the last pps pulse occured.
mboard | the motherboard index 0 to M-1 |
|
inline |
Get the current time registers.
mboard | the motherboard index 0 to M-1 |
|
inlinevirtual |
Get the currently set time source.
mboard | which motherboard to get the config |
Reimplemented in uhd_source_c, and soapy_source_c.
|
inlinevirtual |
Get a list of possible time sources.
mboard | which motherboard to get the list |
Reimplemented in uhd_source_c, and soapy_source_c.
|
inlinevirtual |
seek file to seek_point
relative to whence
seek_point | sample offset in file |
whence | one of SEEK_SET, SEEK_CUR, SEEK_END (man fseek) |
chan | the channel index 0 to N-1 |
Reimplemented in file_source_c.
|
pure virtual |
Select the active antenna of the underlying radio hardware.
antenna | the antenna name |
chan | the channel index 0 to N-1 |
Implemented in xtrx_source_c, uhd_source_c, sdrplay_source_c, rtl_tcp_source_c, rtl_source_c, rfspace_source_c, redpitaya_source_c, hackrf_source_c, freesrp_source_c, file_source_c, fcd_source_c, bladerf_source_c, airspyhf_source_c, airspy_source_c, and soapy_source_c.
|
inlinevirtual |
Set the bandpass filter on the radio frontend.
bandwidth | the filter bandwidth in Hz, set to 0 for automatic selection |
chan | the channel index 0 to N-1 |
Reimplemented in xtrx_source_c, uhd_source_c, sdrplay_source_c, rfspace_source_c, hackrf_source_c, freesrp_source_c, bladerf_source_c, airspy_source_c, and soapy_source_c.
|
inlinevirtual |
Set the BB gain for the underlying radio hardware. This function will automatically distribute the desired gain value over available BB gain stages in an appropriate way and return the actual value.
gain | the gain in dB |
chan | the channel index 0 to N-1 |
Reimplemented in hackrf_source_c, freesrp_source_c, and soapy_source_c.
|
pure virtual |
Tune the underlying radio hardware to the desired center frequency. This also will select the appropriate RF bandpass.
freq | the desired frequency in Hz |
chan | the channel index 0 to N-1 |
Implemented in xtrx_source_c, uhd_source_c, sdrplay_source_c, rtl_tcp_source_c, rtl_source_c, rfspace_source_c, redpitaya_source_c, hackrf_source_c, freesrp_source_c, file_source_c, fcd_source_c, bladerf_source_c, airspyhf_source_c, airspy_source_c, and soapy_source_c.
|
inlinevirtual |
Set the master clock rate.
rate | the new rate in Hz |
mboard | the motherboard index 0 to M-1 |
Reimplemented in uhd_source_c, and soapy_source_c.
|
inlinevirtual |
Set the clock source for the device. This sets the source for a 10 Mhz reference clock. Typical options for source: internal, external, MIMO.
source | a string representing the clock source |
mboard | which motherboard to set the config |
Reimplemented in bladerf_source_c, uhd_source_c, and soapy_source_c.
|
inlinevirtual |
Set a constant DC offset value. The value is complex to control both I and Q. Only set this when automatic correction is disabled.
offset | the dc offset (1.0 is full-scale) |
chan | the channel index 0 to N-1 |
Reimplemented in uhd_source_c, sdrplay_source_c, bladerf_source_c, and soapy_source_c.
|
inlinevirtual |
Set the RX frontend DC correction mode. The automatic correction subtracts out the long-run average.
When disabled, the averaging option operation is reset. Once in Manual mode, the average value will be held constant until the user re-enables the automatic correction or overrides the value by manually setting the offset.
mode | dc offset correction mode: 0 = Off, 1 = Manual, 2 = Automatic |
chan | the channel index 0 to N-1 |
Reimplemented in uhd_source_c, sdrplay_source_c, bladerf_source_c, and soapy_source_c.
|
pure virtual |
Set the frequency correction value in parts per million.
ppm | the desired correction value in parts per million |
chan | the channel index 0 to N-1 |
Implemented in xtrx_source_c, uhd_source_c, sdrplay_source_c, rtl_tcp_source_c, rtl_source_c, rfspace_source_c, redpitaya_source_c, hackrf_source_c, freesrp_source_c, file_source_c, fcd_source_c, bladerf_source_c, airspyhf_source_c, airspy_source_c, and soapy_source_c.
|
pure virtual |
Set the named gain on the underlying radio hardware.
gain | the gain in dB |
name | the name of the gain stage |
chan | the channel index 0 to N-1 |
Implemented in xtrx_source_c, uhd_source_c, sdrplay_source_c, rtl_tcp_source_c, rtl_source_c, rfspace_source_c, redpitaya_source_c, hackrf_source_c, freesrp_source_c, file_source_c, fcd_source_c, bladerf_source_c, airspyhf_source_c, airspy_source_c, and soapy_source_c.
|
pure virtual |
Set the gain for the underlying radio hardware. This function will automatically distribute the desired gain value over available gain stages in an appropriate way and return the actual value.
gain | the gain in dB |
chan | the channel index 0 to N-1 |
Implemented in xtrx_source_c, uhd_source_c, sdrplay_source_c, rtl_tcp_source_c, rtl_source_c, rfspace_source_c, redpitaya_source_c, hackrf_source_c, freesrp_source_c, file_source_c, fcd_source_c, bladerf_source_c, airspyhf_source_c, airspy_source_c, and soapy_source_c.
|
inlinevirtual |
Set the gain mode for the underlying radio hardware. This might be supported only for certain hardware types.
automatic | the gain mode (true means automatic gain mode) |
chan | the channel index 0 to N-1 |
Reimplemented in xtrx_source_c, sdrplay_source_c, rtl_tcp_source_c, rtl_source_c, rfspace_source_c, hackrf_source_c, freesrp_source_c, bladerf_source_c, airspy_source_c, and soapy_source_c.
|
inlinevirtual |
Set the IF gain for the underlying radio hardware. This function will automatically distribute the desired gain value over available IF gain stages in an appropriate way and return the actual value.
gain | the gain in dB |
chan | the channel index 0 to N-1 |
Reimplemented in xtrx_source_c, rtl_tcp_source_c, rtl_source_c, hackrf_source_c, airspy_source_c, and soapy_source_c.
|
inlinevirtual |
Set the RX frontend IQ balance correction. Use this to adjust the magnitude and phase of I and Q.
balance | the complex correction value |
chan | the channel index 0 to N-1 |
Reimplemented in uhd_source_c, bladerf_source_c, and soapy_source_c.
|
inlinevirtual |
Set the RX frontend IQ balance mode.
mode | iq balance correction mode: 0 = Off, 1 = Manual, 2 = Automatic |
chan | the channel index 0 to N-1 |
Reimplemented in uhd_source_c, bladerf_source_c, and soapy_source_c.
|
pure virtual |
Set the sample rate for the underlying radio hardware. This also will select the appropriate IF bandpass, if applicable.
rate | a new rate in Sps |
Implemented in xtrx_source_c, uhd_source_c, soapy_source_c, sdrplay_source_c, rtl_tcp_source_c, rtl_source_c, rfspace_source_c, redpitaya_source_c, hackrf_source_c, freesrp_source_c, file_source_c, fcd_source_c, bladerf_source_c, airspyhf_source_c, and airspy_source_c.
|
inlinevirtual |
Set the time registers at the next pps.
time_spec | the new time |
Reimplemented in uhd_source_c, and soapy_source_c.
|
inlinevirtual |
Sets the time registers immediately.
time_spec | the new time |
mboard | the motherboard index 0 to M-1 |
Reimplemented in uhd_source_c, and soapy_source_c.
|
inlinevirtual |
Set the time source for the device. This sets the method of time synchronization, typically a pulse per second or an encoded time. Typical options for source: external, MIMO.
source | a string representing the time source |
mboard | which motherboard to set the config |
Reimplemented in uhd_source_c, and soapy_source_c.
|
inlinevirtual |
Sync the time registers with an unknown pps edge.
time_spec | the new time |
Reimplemented in uhd_source_c, and soapy_source_c.