USRP Hardware Driver and USRP Manual  Version: 3.11.0.HEAD-0-g13c32cef
UHD and USRP Manual
uhd::cal::cal_container< in_type, out_type > Class Template Referenceabstract

#include <uhd/cal/container.hpp>

Inheritance diagram for uhd::cal::cal_container< in_type, out_type >:
uhd::cal::base_container

Public Types

typedef std::map< in_type, out_type > container_t
 
typedef boost::archive::text_iarchive iarchive_type
 
typedef boost::archive::text_oarchive oarchive_type
 
- Public Types inherited from uhd::cal::base_container
typedef std::map< std::string, std::string > metadata_t
 
typedef boost::shared_ptr< base_containersptr
 

Public Member Functions

virtual out_type get (const in_type &args)=0
 
virtual void add (const out_type output, const in_type &args)=0
 
virtual void add_metadata (const metadata_t &data)=0
 
virtual const metadata_tget_metadata ()=0
 

Protected Member Functions

virtual void serialize (iarchive_type &ar, const unsigned int)=0
 
virtual void serialize (oarchive_type &ar, const unsigned int)=0
 

Friends

class boost::serialization::access
 

Detailed Description

template<typename in_type, typename out_type>
class uhd::cal::cal_container< in_type, out_type >

An interface for creating and managing a generic calibration data container.

These containers are used to represent N dimensional data structures in order to accommodate a mapping from multi-variable input to a scalar value (e.g. gain, frequency, temperature -> power level [dBm]).

The container only supports inputs of the same type to be mapped.

Member Typedef Documentation

◆ container_t

template<typename in_type, typename out_type>
typedef std::map<in_type, out_type> uhd::cal::cal_container< in_type, out_type >::container_t

◆ iarchive_type

template<typename in_type, typename out_type>
typedef boost::archive::text_iarchive uhd::cal::cal_container< in_type, out_type >::iarchive_type

◆ oarchive_type

template<typename in_type, typename out_type>
typedef boost::archive::text_oarchive uhd::cal::cal_container< in_type, out_type >::oarchive_type

Member Function Documentation

◆ add()

template<typename in_type, typename out_type>
virtual void uhd::cal::cal_container< in_type, out_type >::add ( const out_type  output,
const in_type &  args 
)
pure virtual

Add a data point to the container. This function records a mapping R^n -> R between an input vector and output scalar.

Parameters
outputthe output of the data point mapping
argsinput values

Implemented in uhd::cal::power_container.

◆ add_metadata()

template<typename in_type, typename out_type>
virtual void uhd::cal::cal_container< in_type, out_type >::add_metadata ( const metadata_t data)
pure virtual

Associate some metadata with the container.

Parameters
dataa map of metadata (string -> string).

Implemented in uhd::cal::power_container.

◆ get()

template<typename in_type, typename out_type>
virtual out_type uhd::cal::cal_container< in_type, out_type >::get ( const in_type &  args)
pure virtual

Get the mapping from an input to an output from the calibration container.

Parameters
argsinput values
Returns
the output of the mapping (a scalar value)
Exceptions
uhd::assertion_errorif the dimensions of the input args are incorrect for this container

Implemented in uhd::cal::power_container.

◆ get_metadata()

template<typename in_type, typename out_type>
virtual const metadata_t& uhd::cal::cal_container< in_type, out_type >::get_metadata ( )
pure virtual

Retrieve metadata from the container.

Returns
map of metadata.

Implemented in uhd::cal::power_container.

◆ serialize() [1/2]

template<typename in_type, typename out_type>
virtual void uhd::cal::cal_container< in_type, out_type >::serialize ( iarchive_type ar,
const unsigned  int 
)
protectedpure virtual

◆ serialize() [2/2]

template<typename in_type, typename out_type>
virtual void uhd::cal::cal_container< in_type, out_type >::serialize ( oarchive_type ar,
const unsigned  int 
)
protectedpure virtual

Friends And Related Function Documentation

◆ boost::serialization::access

template<typename in_type, typename out_type>
friend class boost::serialization::access
friend

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