GNU Radio 3.7.1 C++ API
gr::uhd::usrp_sink Class Reference

#include <usrp_sink.h>

Inheritance diagram for gr::uhd::usrp_sink:

List of all members.

Public Types

typedef boost::shared_ptr
< usrp_sink
sptr

Public Member Functions

virtual void set_start_time (const ::uhd::time_spec_t &time)=0
virtual ::uhd::dict
< std::string, std::string > 
get_usrp_info (size_t chan=0)=0
virtual void set_subdev_spec (const std::string &spec, size_t mboard=0)=0
virtual std::string get_subdev_spec (size_t mboard=0)=0
virtual void set_samp_rate (double rate)=0
virtual double get_samp_rate (void)=0
virtual ::uhd::meta_range_t get_samp_rates (void)=0
virtual ::uhd::tune_result_t set_center_freq (const ::uhd::tune_request_t tune_request, size_t chan=0)=0
::uhd::tune_result_t set_center_freq (double freq, size_t chan=0)
virtual double get_center_freq (size_t chan=0)=0
virtual ::uhd::freq_range_t get_freq_range (size_t chan=0)=0
virtual void set_gain (double gain, size_t chan=0)=0
virtual void 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 std::vector< std::string > get_gain_names (size_t chan=0)=0
virtual ::uhd::gain_range_t get_gain_range (size_t chan=0)=0
virtual ::uhd::gain_range_t get_gain_range (const std::string &name, size_t chan=0)=0
virtual void set_antenna (const std::string &ant, size_t chan=0)=0
virtual std::string get_antenna (size_t chan=0)=0
virtual std::vector< std::string > get_antennas (size_t chan=0)=0
virtual void set_bandwidth (double bandwidth, size_t chan=0)=0
virtual double get_bandwidth (size_t chan=0)=0
virtual ::uhd::freq_range_t get_bandwidth_range (size_t chan=0)=0
virtual void set_dc_offset (const std::complex< double > &offset, size_t chan=0)=0
virtual void set_iq_balance (const std::complex< double > &correction, size_t chan=0)=0
virtual ::uhd::sensor_value_t get_sensor (const std::string &name, size_t chan=0)=0
virtual std::vector< std::string > get_sensor_names (size_t chan=0)=0
::uhd::sensor_value_t get_dboard_sensor (const std::string &name, size_t chan=0)
 DEPRECATED use get_sensor.
std::vector< std::string > get_dboard_sensor_names (size_t chan=0)
 DEPRECATED use get_sensor_names.
virtual ::uhd::sensor_value_t get_mboard_sensor (const std::string &name, size_t mboard=0)=0
virtual std::vector< std::string > get_mboard_sensor_names (size_t mboard=0)=0
virtual void set_clock_config (const ::uhd::clock_config_t &clock_config, size_t mboard=0)=0
virtual void set_time_source (const std::string &source, const size_t mboard=0)=0
virtual std::string get_time_source (const size_t mboard)=0
virtual std::vector< std::string > get_time_sources (const size_t mboard)=0
virtual void set_clock_source (const std::string &source, const size_t mboard=0)=0
virtual std::string get_clock_source (const size_t mboard)=0
virtual std::vector< std::string > get_clock_sources (const size_t mboard)=0
virtual double get_clock_rate (size_t mboard=0)=0
virtual void set_clock_rate (double rate, size_t mboard=0)=0
virtual ::uhd::time_spec_t get_time_now (size_t mboard=0)=0
virtual ::uhd::time_spec_t get_time_last_pps (size_t mboard=0)=0
virtual void set_time_now (const ::uhd::time_spec_t &time_spec, size_t mboard=0)=0
virtual void set_time_next_pps (const ::uhd::time_spec_t &time_spec)=0
virtual void set_time_unknown_pps (const ::uhd::time_spec_t &time_spec)=0
virtual void set_command_time (const ::uhd::time_spec_t &time_spec, size_t mboard=0)=0
virtual void clear_command_time (size_t mboard=0)=0
virtual
::uhd::usrp::dboard_iface::sptr 
get_dboard_iface (size_t chan=0)=0
virtual
::uhd::usrp::multi_usrp::sptr 
get_device (void)=0
virtual void set_user_register (const uint8_t addr, const uint32_t data, size_t mboard=0)=0

Static Public Member Functions

static sptr make (const ::uhd::device_addr_t &device_addr, const ::uhd::io_type_t &io_type, size_t num_channels)
 Make a new USRP sink block.The USRP sink block reads a stream and transmits the samples. The sink block also provides API calls for transmitter settings.
static sptr make (const ::uhd::device_addr_t &device_addr, const ::uhd::stream_args_t &stream_args)
 Make a new USRP sink block.

Member Typedef Documentation


Member Function Documentation

virtual void gr::uhd::usrp_sink::clear_command_time ( size_t  mboard = 0) [pure virtual]

Clear the command time so future commands are sent ASAP.

Parameters:
mboardwhich motherboard to set the config
virtual std::string gr::uhd::usrp_sink::get_antenna ( size_t  chan = 0) [pure virtual]

Get the antenna in use.

Parameters:
chanthe channel index 0 to N-1
Returns:
the antenna string
virtual std::vector<std::string> gr::uhd::usrp_sink::get_antennas ( size_t  chan = 0) [pure virtual]

Get a list of possible antennas.

Parameters:
chanthe channel index 0 to N-1
Returns:
a vector of antenna strings
virtual double gr::uhd::usrp_sink::get_bandwidth ( size_t  chan = 0) [pure virtual]

Get the bandpass filter setting on the RF frontend.

Parameters:
chanthe channel index 0 to N-1
Returns:
bandwidth of the filter in Hz
virtual ::uhd::freq_range_t gr::uhd::usrp_sink::get_bandwidth_range ( size_t  chan = 0) [pure virtual]

Get the bandpass filter range of the RF frontend.

Parameters:
chanthe channel index 0 to N-1
Returns:
the range of the filter bandwidth in Hz
virtual double gr::uhd::usrp_sink::get_center_freq ( size_t  chan = 0) [pure virtual]

Get the center frequency.

Parameters:
chanthe channel index 0 to N-1
Returns:
the frequency in Hz
virtual double gr::uhd::usrp_sink::get_clock_rate ( size_t  mboard = 0) [pure virtual]

Get the master clock rate.

Parameters:
mboardthe motherboard index 0 to M-1
Returns:
the clock rate in Hz
virtual std::string gr::uhd::usrp_sink::get_clock_source ( const size_t  mboard) [pure virtual]

Get the currently set clock source.

Parameters:
mboardwhich motherboard to get the config
Returns:
the string representing the clock source
virtual std::vector<std::string> gr::uhd::usrp_sink::get_clock_sources ( const size_t  mboard) [pure virtual]

Get a list of possible clock sources.

Parameters:
mboardwhich motherboard to get the list
Returns:
a vector of strings for possible settings
virtual ::uhd::usrp::dboard_iface::sptr gr::uhd::usrp_sink::get_dboard_iface ( size_t  chan = 0) [pure virtual]

Get access to the underlying uhd dboard iface object.

Returns:
the dboard_iface object
::uhd::sensor_value_t gr::uhd::usrp_sink::get_dboard_sensor ( const std::string &  name,
size_t  chan = 0 
) [inline]

DEPRECATED use get_sensor.

std::vector<std::string> gr::uhd::usrp_sink::get_dboard_sensor_names ( size_t  chan = 0) [inline]

DEPRECATED use get_sensor_names.

virtual ::uhd::usrp::multi_usrp::sptr gr::uhd::usrp_sink::get_device ( void  ) [pure virtual]

Get access to the underlying uhd device object.

Returns:
the multi usrp device object
virtual ::uhd::freq_range_t gr::uhd::usrp_sink::get_freq_range ( size_t  chan = 0) [pure virtual]

Get the tunable frequency range.

Parameters:
chanthe channel index 0 to N-1
Returns:
the frequency range in Hz
virtual double gr::uhd::usrp_sink::get_gain ( size_t  chan = 0) [pure virtual]

Get the actual dboard gain setting.

Parameters:
chanthe channel index 0 to N-1
Returns:
the actual gain in dB
virtual double gr::uhd::usrp_sink::get_gain ( const std::string &  name,
size_t  chan = 0 
) [pure virtual]

Get the actual dboard gain setting of named stage.

Parameters:
namethe name of the gain stage
chanthe channel index 0 to N-1
Returns:
the actual gain in dB
virtual std::vector<std::string> gr::uhd::usrp_sink::get_gain_names ( size_t  chan = 0) [pure virtual]

Get the actual dboard gain setting of named stage.

Parameters:
chanthe channel index 0 to N-1
Returns:
the actual gain in dB
virtual ::uhd::gain_range_t gr::uhd::usrp_sink::get_gain_range ( size_t  chan = 0) [pure virtual]

Get the settable gain range.

Parameters:
chanthe channel index 0 to N-1
Returns:
the gain range in dB
virtual ::uhd::gain_range_t gr::uhd::usrp_sink::get_gain_range ( const std::string &  name,
size_t  chan = 0 
) [pure virtual]

Get the settable gain range.

Parameters:
namethe name of the gain stage
chanthe channel index 0 to N-1
Returns:
the gain range in dB
virtual ::uhd::sensor_value_t gr::uhd::usrp_sink::get_mboard_sensor ( const std::string &  name,
size_t  mboard = 0 
) [pure virtual]

Get a motherboard sensor value.

Parameters:
namethe name of the sensor
mboardthe motherboard index 0 to M-1
Returns:
a sensor value object
virtual std::vector<std::string> gr::uhd::usrp_sink::get_mboard_sensor_names ( size_t  mboard = 0) [pure virtual]

Get a list of possible motherboard sensor names.

Parameters:
mboardthe motherboard index 0 to M-1
Returns:
a vector of sensor names
virtual double gr::uhd::usrp_sink::get_samp_rate ( void  ) [pure virtual]

Get the sample rate for the usrp device. This is the actual sample rate and may differ from the rate set.

Returns:
the actual rate in Sps
virtual ::uhd::meta_range_t gr::uhd::usrp_sink::get_samp_rates ( void  ) [pure virtual]

Get the possible sample rates for the usrp device.

Returns:
a range of rates in Sps
virtual ::uhd::sensor_value_t gr::uhd::usrp_sink::get_sensor ( const std::string &  name,
size_t  chan = 0 
) [pure virtual]

Get an RF frontend sensor value.

Parameters:
namethe name of the sensor
chanthe channel index 0 to N-1
Returns:
a sensor value object
virtual std::vector<std::string> gr::uhd::usrp_sink::get_sensor_names ( size_t  chan = 0) [pure virtual]

Get a list of possible RF frontend sensor names.

Parameters:
chanthe channel index 0 to N-1
Returns:
a vector of sensor names
virtual std::string gr::uhd::usrp_sink::get_subdev_spec ( size_t  mboard = 0) [pure virtual]

Get the TX frontend specification.

Parameters:
mboardthe motherboard index 0 to M-1
Returns:
the frontend specification in use
virtual ::uhd::time_spec_t gr::uhd::usrp_sink::get_time_last_pps ( size_t  mboard = 0) [pure virtual]

Get the time when the last pps pulse occured.

Parameters:
mboardthe motherboard index 0 to M-1
Returns:
the current usrp time
virtual ::uhd::time_spec_t gr::uhd::usrp_sink::get_time_now ( size_t  mboard = 0) [pure virtual]

Get the current time registers.

Parameters:
mboardthe motherboard index 0 to M-1
Returns:
the current usrp time
virtual std::string gr::uhd::usrp_sink::get_time_source ( const size_t  mboard) [pure virtual]

Get the currently set time source.

Parameters:
mboardwhich motherboard to get the config
Returns:
the string representing the time source
virtual std::vector<std::string> gr::uhd::usrp_sink::get_time_sources ( const size_t  mboard) [pure virtual]

Get a list of possible time sources.

Parameters:
mboardwhich motherboard to get the list
Returns:
a vector of strings for possible settings
virtual ::uhd::dict<std::string, std::string> gr::uhd::usrp_sink::get_usrp_info ( size_t  chan = 0) [pure virtual]

Returns identifying information about this USRP's configuration. Returns motherboard ID, name, and serial. Returns daughterboard TX ID, subdev name and spec, serial, and antenna.

Parameters:
chanchannel index 0 to N-1
Returns:
TX info
static sptr gr::uhd::usrp_sink::make ( const ::uhd::device_addr_t &  device_addr,
const ::uhd::stream_args_t stream_args 
) [static]

Make a new USRP sink block.

The USRP sink block reads a stream and transmits the samples. The sink block also provides API calls for transmitter settings.

TX Stream tagging:

The following tag keys will be consumed by the work function:

The sob and eob (start and end of burst) tag values are pmt booleans. When present, burst tags should be set to true (pmt::PMT_T).

The timstamp tag value is a pmt tuple of the following: (uint64 seconds, and double fractional seconds).

See the UHD manual for more detailed documentation: http://code.ettus.com/redmine/ettus/projects/uhd/wiki

Parameters:
device_addrthe address to identify the hardware
stream_argsthe IO format and channel specification
Returns:
a new USRP sink block object
virtual void gr::uhd::usrp_sink::set_antenna ( const std::string &  ant,
size_t  chan = 0 
) [pure virtual]

Set the antenna to use.

Parameters:
antthe antenna string
chanthe channel index 0 to N-1
virtual void gr::uhd::usrp_sink::set_bandwidth ( double  bandwidth,
size_t  chan = 0 
) [pure virtual]

Set the bandpass filter on the RF frontend.

Parameters:
chanthe channel index 0 to N-1
bandwidththe filter bandwidth in Hz
virtual ::uhd::tune_result_t gr::uhd::usrp_sink::set_center_freq ( const ::uhd::tune_request_t  tune_request,
size_t  chan = 0 
) [pure virtual]

Tune the usrp device to the desired center frequency.

Parameters:
tune_requestthe tune request instructions
chanthe channel index 0 to N-1
Returns:
a tune result with the actual frequencies
::uhd::tune_result_t gr::uhd::usrp_sink::set_center_freq ( double  freq,
size_t  chan = 0 
) [inline]

Tune the usrp device to the desired center frequency. This is a wrapper around set center freq so that in this case, the user can pass a single frequency in the call through swig.

Parameters:
freqthe desired frequency in Hz
chanthe channel index 0 to N-1
Returns:
a tune result with the actual frequencies
virtual void gr::uhd::usrp_sink::set_clock_config ( const ::uhd::clock_config_t &  clock_config,
size_t  mboard = 0 
) [pure virtual]

Set the clock configuration. DEPRECATED for set_time/clock_source.

Parameters:
clock_configthe new configuration
mboardthe motherboard index 0 to M-1
virtual void gr::uhd::usrp_sink::set_clock_rate ( double  rate,
size_t  mboard = 0 
) [pure virtual]

Set the master clock rate.

Parameters:
ratethe new rate in Hz
mboardthe motherboard index 0 to M-1
virtual void gr::uhd::usrp_sink::set_clock_source ( const std::string &  source,
const size_t  mboard = 0 
) [pure virtual]

Set the clock source for the usrp device. This sets the source for a 10 Mhz reference clock. Typical options for source: internal, external, MIMO.

Parameters:
sourcea string representing the clock source
mboardwhich motherboard to set the config
virtual void gr::uhd::usrp_sink::set_command_time ( const ::uhd::time_spec_t &  time_spec,
size_t  mboard = 0 
) [pure virtual]

Set the time at which the control commands will take effect.

A timed command will back-pressure all subsequent timed commands, assuming that the subsequent commands occur within the time-window. If the time spec is late, the command will be activated upon arrival.

Parameters:
time_specthe time at which the next command will activate
mboardwhich motherboard to set the config
virtual void gr::uhd::usrp_sink::set_dc_offset ( const std::complex< double > &  offset,
size_t  chan = 0 
) [pure virtual]

Set a constant DC offset value. The value is complex to control both I and Q.

Parameters:
offsetthe dc offset (1.0 is full-scale)
chanthe channel index 0 to N-1
virtual void gr::uhd::usrp_sink::set_gain ( double  gain,
size_t  chan = 0 
) [pure virtual]

Set the gain for the dboard.

Parameters:
gainthe gain in dB
chanthe channel index 0 to N-1
virtual void gr::uhd::usrp_sink::set_gain ( double  gain,
const std::string &  name,
size_t  chan = 0 
) [pure virtual]

Set the named gain on the dboard.

Parameters:
gainthe gain in dB
namethe name of the gain stage
chanthe channel index 0 to N-1
virtual void gr::uhd::usrp_sink::set_iq_balance ( const std::complex< double > &  correction,
size_t  chan = 0 
) [pure virtual]

Set the RX frontend IQ imbalance correction. Use this to adjust the magnitude and phase of I and Q.

Parameters:
correctionthe complex correction (1.0 is full-scale)
chanthe channel index 0 to N-1
virtual void gr::uhd::usrp_sink::set_samp_rate ( double  rate) [pure virtual]

Set the sample rate for the usrp device.

Parameters:
ratea new rate in Sps
virtual void gr::uhd::usrp_sink::set_start_time ( const ::uhd::time_spec_t &  time) [pure virtual]

Set the start time for outgoing samples. To control when samples are transmitted, set this value before starting the flow graph. The value is cleared after each run. When not specified, the start time will be:

  • Immediately for the one channel case
  • in the near future for multi-channel
Parameters:
timethe absolute time for transmission to begin
virtual void gr::uhd::usrp_sink::set_subdev_spec ( const std::string &  spec,
size_t  mboard = 0 
) [pure virtual]

Set the frontend specification.

Parameters:
specthe subdev spec markup string
mboardthe motherboard index 0 to M-1
virtual void gr::uhd::usrp_sink::set_time_next_pps ( const ::uhd::time_spec_t &  time_spec) [pure virtual]

Set the time registers at the next pps.

Parameters:
time_specthe new time
virtual void gr::uhd::usrp_sink::set_time_now ( const ::uhd::time_spec_t &  time_spec,
size_t  mboard = 0 
) [pure virtual]

Sets the time registers immediately.

Parameters:
time_specthe new time
mboardthe motherboard index 0 to M-1
virtual void gr::uhd::usrp_sink::set_time_source ( const std::string &  source,
const size_t  mboard = 0 
) [pure virtual]

Set the time source for the usrp device. This sets the method of time synchronization, typically a pulse per second or an encoded time. Typical options for source: external, MIMO.

Parameters:
sourcea string representing the time source
mboardwhich motherboard to set the config
virtual void gr::uhd::usrp_sink::set_time_unknown_pps ( const ::uhd::time_spec_t &  time_spec) [pure virtual]

Sync the time registers with an unknown pps edge.

Parameters:
time_specthe new time
virtual void gr::uhd::usrp_sink::set_user_register ( const uint8_t  addr,
const uint32_t  data,
size_t  mboard = 0 
) [pure virtual]

Perform write on the user configuration register bus. These only exist if the user has implemented custom setting registers in the device FPGA.

Parameters:
addr8-bit register address
data32-bit register value
mboardwhich motherboard to set the user register

The documentation for this class was generated from the following file: