8 #ifndef INCLUDED_UHD_UTILS_GAIN_GROUP_HPP
9 #define INCLUDED_UHD_UTILS_GAIN_GROUP_HPP
14 #include <boost/function.hpp>
15 #include <boost/shared_ptr.hpp>
34 typedef boost::shared_ptr<gain_group>
sptr;
53 virtual double get_value(
const std::string& name =
"") = 0;
63 virtual void set_value(
double gain,
const std::string& name =
"") = 0;
70 virtual const std::vector<std::string>
get_names(
void) = 0;
87 const std::string& name,
const gain_fcns_t& gain_fcns,
size_t priority = 0) = 0;
Definition: gain_group.hpp:32
virtual void register_fcns(const std::string &name, const gain_fcns_t &gain_fcns, size_t priority=0)=0
virtual const std::vector< std::string > get_names(void)=0
virtual gain_range_t get_range(const std::string &name="")=0
virtual void set_value(double gain, const std::string &name="")=0
virtual double get_value(const std::string &name="")=0
boost::shared_ptr< gain_group > sptr
Definition: gain_group.hpp:34
virtual ~gain_group(void)=0
#define UHD_API
Definition: config.h:68
Definition: build_info.hpp:13
boost::noncopyable noncopyable
Definition: noncopyable.hpp:46
meta_range_t gain_range_t
Definition: ranges.hpp:112
Definition: gain_group.hpp:25
boost::function< gain_range_t(void)> get_range
Definition: gain_group.hpp:26
boost::function< void(double)> set_value
Definition: gain_group.hpp:28
boost::function< double(void)> get_value
Definition: gain_group.hpp:27