USRP Hardware Driver and Device Manual Version: 4.10.0.0_release
UHD and USRP Manual
Loading...
Searching...
No Matches
uhd::usrp::cal::iq_dc_cal Class Referenceabstract

#include <uhd/cal/iq_dc_cal.hpp>

Inheritance diagram for uhd::usrp::cal::iq_dc_cal:
uhd::usrp::cal::container

Detailed Description

Class that stores wideband IQ and DC cal data per frequency

The following calibrations use this:

  • Wideband (multi-tap) IQ imbalance correction
  • DC offset correction

This extends the legacy iq_cal class with support for:

  • Multi-tap IQ correction coefficients (vectors instead of single values)
  • DC offset correction
  • Scaling factor and group delay per frequency

Public Types

using sptr = std::shared_ptr<iq_dc_cal>

Public Member Functions

virtual void set_interp_mode (const uhd::math::interp_mode interp)=0
 Choose interpolation mode.
virtual iq_dc_cal_coeffs_t get_cal_coeff (const double freq) const =0
 Return a calibration coefficient for a given frequency.
virtual double get_group_delay (const double freq)=0
 Return the group delay at a given frequency.
virtual void set_cal_coeff (const double freq, const double scaling_factor, const std::vector< double > icross, const std::vector< double > qinline, const double delay=0, const double dc_offset_real=0, const double dc_offset_imag=0)=0
 Update / set a calibration coefficient.
virtual void clear ()=0
 Clear the list of coefficients.
Public Member Functions inherited from uhd::usrp::cal::container
virtual ~container ()=default
virtual std::string get_name () const =0
 Return the name of this calibration table.
virtual std::string get_serial () const =0
 Return the device serial of this calibration table.
virtual uint64_t get_timestamp () const =0
 Timestamp of acquisition time.
virtual std::vector< uint8_t > serialize ()=0
 Return a serialized version of this container.
virtual void deserialize (const std::vector< uint8_t > &data)=0
 Populate this class from the serialized data.

Static Public Member Functions

static sptr make (const std::string &name, const std::string &serial, const uint64_t timestamp)
 Factory for new cal data sets.
static sptr make ()
 Default factory.
Static Public Member Functions inherited from uhd::usrp::cal::container
template<typename container_type>
static std::shared_ptr< container_type > make (const std::vector< uint8_t > &data)
 Generic factory for cal data from serialized data.

Member Typedef Documentation

◆ sptr

using uhd::usrp::cal::iq_dc_cal::sptr = std::shared_ptr<iq_dc_cal>

Member Function Documentation

◆ clear()

virtual void uhd::usrp::cal::iq_dc_cal::clear ( )
pure virtual

Clear the list of coefficients.

◆ get_cal_coeff()

virtual iq_dc_cal_coeffs_t uhd::usrp::cal::iq_dc_cal::get_cal_coeff ( const double freq) const
pure virtual

Return a calibration coefficient for a given frequency.

◆ get_group_delay()

virtual double uhd::usrp::cal::iq_dc_cal::get_group_delay ( const double freq)
pure virtual

Return the group delay at a given frequency.

◆ make() [1/2]

sptr uhd::usrp::cal::iq_dc_cal::make ( )
static

Default factory.

◆ make() [2/2]

sptr uhd::usrp::cal::iq_dc_cal::make ( const std::string & name,
const std::string & serial,
const uint64_t timestamp )
static

Factory for new cal data sets.

◆ set_cal_coeff()

virtual void uhd::usrp::cal::iq_dc_cal::set_cal_coeff ( const double freq,
const double scaling_factor,
const std::vector< double > icross,
const std::vector< double > qinline,
const double delay = 0,
const double dc_offset_real = 0,
const double dc_offset_imag = 0 )
pure virtual

Update / set a calibration coefficient.

◆ set_interp_mode()

virtual void uhd::usrp::cal::iq_dc_cal::set_interp_mode ( const uhd::math::interp_mode interp)
pure virtual

Choose interpolation mode.


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