12 #include <boost/none.hpp>
13 #include <boost/optional.hpp>
19 namespace uhd {
namespace usrp {
namespace cal {
51 using sptr = std::shared_ptr<pwr_cal>;
68 virtual void add_power_table(
const std::map<double, double>& gain_power_map,
69 const double min_power,
70 const double max_power,
72 const boost::optional<int> temperature = boost::none) = 0;
79 virtual void clear() = 0;
89 virtual void set_temperature(
const int temperature) = 0;
92 virtual int get_temperature()
const = 0;
99 virtual void set_ref_gain(
const double gain) = 0;
105 virtual double get_ref_gain()
const = 0;
110 const boost::optional<int> temperature = boost::none)
const = 0;
123 virtual double get_power(
const double gain,
125 const boost::optional<int> temperature = boost::none)
const = 0;
142 virtual double get_gain(
const double power_dbm,
144 const boost::optional<int> temperature = boost::none)
const = 0;
148 const std::string& name,
const std::string& serial,
const uint64_t timestamp);