source_impl
osmosdr::source
source_impl.h
std::vector< source_iface * > std::vector< source_iface * > source_impl::_devs _devs source_impl::_devs
double double source_impl::_sample_rate _sample_rate source_impl::_sample_rate
std::map< size_t, double > std::map< size_t, double > source_impl::_center_freq _center_freq source_impl::_center_freq
std::map< size_t, double > std::map< size_t, double > source_impl::_freq_corr _freq_corr source_impl::_freq_corr
std::map< size_t, bool > std::map< size_t, bool > source_impl::_gain_mode _gain_mode source_impl::_gain_mode
std::map< size_t, double > std::map< size_t, double > source_impl::_gain _gain source_impl::_gain
std::map< size_t, double > std::map< size_t, double > source_impl::_if_gain _if_gain source_impl::_if_gain
std::map< size_t, double > std::map< size_t, double > source_impl::_bb_gain _bb_gain source_impl::_bb_gain
std::map< size_t, std::string > std::map< size_t, std::string > source_impl::_antenna _antenna source_impl::_antenna
std::map< size_t, double > std::map< size_t, double > source_impl::_bandwidth _bandwidth source_impl::_bandwidth
source_impl::source_impl
(const std::string &args)
source_impl
source_impl::source_impl
const std::string & args
size_t size_t source_impl::get_num_channels (void) get_num_channels source_impl::get_num_channels get_num_channels void

Get the number of channels the underlying radio hardware offers.

the number of available channels

bool bool source_impl::seek (long seek_point, int whence, size_t chan) seek source_impl::seek seek long seek_point int whence size_t chan

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)

true on success

osmosdr::meta_range_t osmosdr::meta_range_t source_impl::get_sample_rates (void) get_sample_rates source_impl::get_sample_rates get_sample_rates void

Get the possible sample rates for the underlying radio hardware.

a range of rates in Sps

double double source_impl::set_sample_rate (double rate) set_sample_rate source_impl::set_sample_rate set_sample_rate double rate

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

double double source_impl::get_sample_rate (void) get_sample_rate source_impl::get_sample_rate get_sample_rate void

Get the sample rate for the underlying radio hardware. This is the actual sample rate and may differ from the rate set.

the actual rate in Sps

osmosdr::freq_range_t osmosdr::freq_range_t source_impl::get_freq_range (size_t chan=0) get_freq_range source_impl::get_freq_range get_freq_range size_t chan 0

Get the tunable frequency range for the underlying radio hardware. chan

the channel index 0 to N-1

the frequency range in Hz

double double source_impl::set_center_freq (double freq, size_t chan=0) set_center_freq source_impl::set_center_freq set_center_freq double freq size_t chan 0

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

the actual frequency in Hz

double double source_impl::get_center_freq (size_t chan=0) get_center_freq source_impl::get_center_freq get_center_freq size_t chan 0

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

the frequency in Hz

double double source_impl::set_freq_corr (double ppm, size_t chan=0) set_freq_corr source_impl::set_freq_corr set_freq_corr double ppm size_t chan 0

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

correction value in parts per million

double double source_impl::get_freq_corr (size_t chan=0) get_freq_corr source_impl::get_freq_corr get_freq_corr size_t chan 0

Get the frequency correction value. chan

the channel index 0 to N-1

correction value in parts per million

std::vector< std::string > std::vector< std::string > source_impl::get_gain_names (size_t chan=0) get_gain_names source_impl::get_gain_names get_gain_names size_t chan 0

Get the gain stage names of the underlying radio hardware. chan

the channel index 0 to N-1

a vector of strings containing the names of gain stages

osmosdr::gain_range_t osmosdr::gain_range_t source_impl::get_gain_range (size_t chan=0) get_gain_range source_impl::get_gain_range get_gain_range size_t chan 0

Get the settable overall gain range for the underlying radio hardware. chan

the channel index 0 to N-1

the gain range in dB

osmosdr::gain_range_t osmosdr::gain_range_t source_impl::get_gain_range (const std::string &name, size_t chan=0) get_gain_range source_impl::get_gain_range get_gain_range const std::string & name size_t chan 0

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

the gain range in dB

bool bool source_impl::set_gain_mode (bool automatic, size_t chan=0) set_gain_mode source_impl::set_gain_mode set_gain_mode bool automatic size_t chan 0

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

the actual gain mode

bool bool source_impl::get_gain_mode (size_t chan=0) get_gain_mode source_impl::get_gain_mode get_gain_mode size_t chan 0

Get the gain mode selected for the underlying radio hardware. chan

the channel index 0 to N-1

the actual gain mode (true means automatic gain mode)

double double source_impl::set_gain (double gain, size_t chan=0) set_gain source_impl::set_gain set_gain double gain size_t chan 0

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

the actual gain in dB

double double source_impl::set_gain (double gain, const std::string &name, size_t chan=0) set_gain source_impl::set_gain set_gain double gain const std::string & name size_t chan 0

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

the actual gain in dB

double double source_impl::get_gain (size_t chan=0) get_gain source_impl::get_gain get_gain size_t chan 0

Get the actual gain setting of the underlying radio hardware. chan

the channel index 0 to N-1

the actual gain in dB

double double source_impl::get_gain (const std::string &name, size_t chan=0) get_gain source_impl::get_gain get_gain const std::string & name size_t chan 0

Get the actual gain setting of a named stage. name

the name of the gain stage

chan

the channel index 0 to N-1

the actual gain in dB

double double source_impl::set_if_gain (double gain, size_t chan=0) set_if_gain source_impl::set_if_gain set_if_gain double gain size_t chan 0

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

the actual gain in dB

double double source_impl::set_bb_gain (double gain, size_t chan=0) set_bb_gain source_impl::set_bb_gain set_bb_gain double gain size_t chan 0

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

the actual gain in dB

std::vector< std::string > std::vector< std::string > source_impl::get_antennas (size_t chan=0) get_antennas source_impl::get_antennas get_antennas size_t chan 0

Get the available antennas of the underlying radio hardware. chan

the channel index 0 to N-1

a vector of strings containing the names of available antennas

std::string std::string source_impl::set_antenna (const std::string &antenna, size_t chan=0) set_antenna source_impl::set_antenna set_antenna const std::string & antenna size_t chan 0

Select the active antenna of the underlying radio hardware. antenna

name of the antenna to be selected

chan

the channel index 0 to N-1

the actual antenna's name

std::string std::string source_impl::get_antenna (size_t chan=0) get_antenna source_impl::get_antenna get_antenna size_t chan 0

Get the actual underlying radio hardware antenna setting. chan

the channel index 0 to N-1

the actual antenna's name

void void source_impl::set_dc_offset_mode (int mode, size_t chan=0) set_dc_offset_mode source_impl::set_dc_offset_mode set_dc_offset_mode int mode size_t chan 0

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

void void source_impl::set_dc_offset (const std::complex< double > &offset, size_t chan=0) set_dc_offset source_impl::set_dc_offset set_dc_offset const std::complex< double > & offset size_t chan 0

Set the RX frontend 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

void void source_impl::set_iq_balance_mode (int mode, size_t chan=0) set_iq_balance_mode source_impl::set_iq_balance_mode set_iq_balance_mode int mode size_t chan 0

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

void void source_impl::set_iq_balance (const std::complex< double > &balance, size_t chan=0) set_iq_balance source_impl::set_iq_balance set_iq_balance const std::complex< double > & balance size_t chan 0

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

double double source_impl::set_bandwidth (double bandwidth, size_t chan=0) set_bandwidth source_impl::set_bandwidth set_bandwidth double bandwidth size_t chan 0

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

the actual filter bandwidth in Hz

double double source_impl::get_bandwidth (size_t chan=0) get_bandwidth source_impl::get_bandwidth get_bandwidth size_t chan 0

Get the actual bandpass filter setting on the radio frontend. chan

the channel index 0 to N-1

the actual filter bandwidth in Hz

osmosdr::freq_range_t osmosdr::freq_range_t source_impl::get_bandwidth_range (size_t chan=0) get_bandwidth_range source_impl::get_bandwidth_range get_bandwidth_range size_t chan 0

Get the possible bandpass filter settings on the radio frontend. chan

the channel index 0 to N-1

a range of bandwidths in Hz

void void source_impl::set_time_source (const std::string &source, const size_t mboard=0) set_time_source source_impl::set_time_source set_time_source const std::string & source const size_t mboard 0

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

std::string std::string source_impl::get_time_source (const size_t mboard) get_time_source source_impl::get_time_source get_time_source const size_t mboard

Get the currently set time source. mboard

which motherboard to get the config

the string representing the time source

std::vector< std::string > std::vector< std::string > source_impl::get_time_sources (const size_t mboard) get_time_sources source_impl::get_time_sources get_time_sources const size_t mboard

Get a list of possible time sources. mboard

which motherboard to get the list

a vector of strings for possible settings

void void source_impl::set_clock_source (const std::string &source, const size_t mboard=0) set_clock_source source_impl::set_clock_source set_clock_source const std::string & source const size_t mboard 0

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

std::string std::string source_impl::get_clock_source (const size_t mboard) get_clock_source source_impl::get_clock_source get_clock_source const size_t mboard

Get the currently set clock source. mboard

which motherboard to get the config

the string representing the clock source

std::vector< std::string > std::vector< std::string > source_impl::get_clock_sources (const size_t mboard) get_clock_sources source_impl::get_clock_sources get_clock_sources const size_t mboard

Get a list of possible clock sources. mboard

which motherboard to get the list

a vector of strings for possible settings

double double source_impl::get_clock_rate (size_t mboard=0) get_clock_rate source_impl::get_clock_rate get_clock_rate size_t mboard 0

Get the master clock rate. mboard

the motherboard index 0 to M-1

the clock rate in Hz

void void source_impl::set_clock_rate (double rate, size_t mboard=0) set_clock_rate source_impl::set_clock_rate set_clock_rate double rate size_t mboard 0

Set the master clock rate. rate

the new rate in Hz

mboard

the motherboard index 0 to M-1

::osmosdr::time_spec_t ::osmosdr::time_spec_t source_impl::get_time_now (size_t mboard=0) get_time_now source_impl::get_time_now get_time_now size_t mboard 0

Get the current time registers. mboard

the motherboard index 0 to M-1

the current device time

::osmosdr::time_spec_t ::osmosdr::time_spec_t source_impl::get_time_last_pps (size_t mboard=0) get_time_last_pps source_impl::get_time_last_pps get_time_last_pps size_t mboard 0

Get the time when the last pps pulse occured. mboard

the motherboard index 0 to M-1

the current device time

void void source_impl::set_time_now (const ::osmosdr::time_spec_t &time_spec, size_t mboard=0) set_time_now source_impl::set_time_now set_time_now const ::osmosdr::time_spec_t & time_spec size_t mboard 0

Sets the time registers immediately. time_spec

the new time

mboard

the motherboard index 0 to M-1

void void source_impl::set_time_next_pps (const ::osmosdr::time_spec_t &time_spec) set_time_next_pps source_impl::set_time_next_pps set_time_next_pps const ::osmosdr::time_spec_t & time_spec

Set the time registers at the next pps. time_spec

the new time

void void source_impl::set_time_unknown_pps (const ::osmosdr::time_spec_t &time_spec) set_time_unknown_pps source_impl::set_time_unknown_pps set_time_unknown_pps const ::osmosdr::time_spec_t & time_spec

Sync the time registers with an unknown pps edge. time_spec

the new time

gr::hier_block2
osmosdr::source
source_impl
gr::hier_block2
osmosdr::source
source_impl
- source_impl
  _antenna
- source_impl
  _bandwidth
- source_impl
  _bb_gain
- source_impl
  _center_freq
- source_impl
  _devs
- source_impl
  _freq_corr
- source_impl
  _gain
- source_impl
  _gain_mode
- source_impl
  _if_gain
- source_impl
  _sample_rate
- source_impl
  DCOffsetAutomatic
- source_impl
  DCOffsetManual
- source_impl
  DCOffsetMode
- source_impl
  DCOffsetOff
- source_impl
  get_antenna
- source_impl
  get_antennas
- source_impl
  get_bandwidth
- source_impl
  get_bandwidth_range
- source_impl
  get_center_freq
- source_impl
  get_clock_rate
- source_impl
  get_clock_source
- source_impl
  get_clock_sources
- source_impl
  get_freq_corr
- source_impl
  get_freq_range
- source_impl
  get_gain
- source_impl
  get_gain
- source_impl
  get_gain_mode
- source_impl
  get_gain_names
- source_impl
  get_gain_range
- source_impl
  get_gain_range
- source_impl
  get_num_channels
- source_impl
  get_sample_rate
- source_impl
  get_sample_rates
- source_impl
  get_time_last_pps
- source_impl
  get_time_now
- source_impl
  get_time_source
- source_impl
  get_time_sources
- source_impl
  IQBalanceAutomatic
- source_impl
  IQBalanceManual
- source_impl
  IQBalanceMode
- source_impl
  IQBalanceOff
- source_impl
  make
- source_impl
  seek
- source_impl
  set_antenna
- source_impl
  set_bandwidth
- source_impl
  set_bb_gain
- source_impl
  set_center_freq
- source_impl
  set_clock_rate
- source_impl
  set_clock_source
- source_impl
  set_dc_offset
- source_impl
  set_dc_offset_mode
- source_impl
  set_freq_corr
- source_impl
  set_gain
- source_impl
  set_gain
- source_impl
  set_gain_mode
- source_impl
  set_if_gain
- source_impl
  set_iq_balance
- source_impl
  set_iq_balance_mode
- source_impl
  set_sample_rate
- source_impl
  set_time_next_pps
- source_impl
  set_time_now
- source_impl
  set_time_source
- source_impl
  set_time_unknown_pps
- source_impl
  source_impl
- source_impl
  sptr