aboutsummaryrefslogtreecommitdiffstats
path: root/host/lib/usrp/usrp_e/codec_ctrl.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'host/lib/usrp/usrp_e/codec_ctrl.hpp')
-rw-r--r--host/lib/usrp/usrp_e/codec_ctrl.hpp19
1 files changed, 17 insertions, 2 deletions
diff --git a/host/lib/usrp/usrp_e/codec_ctrl.hpp b/host/lib/usrp/usrp_e/codec_ctrl.hpp
index b9005a82d..87b6ff951 100644
--- a/host/lib/usrp/usrp_e/codec_ctrl.hpp
+++ b/host/lib/usrp/usrp_e/codec_ctrl.hpp
@@ -19,6 +19,7 @@
#define INCLUDED_USRP_E_CODEC_CTRL_HPP
#include "usrp_e_iface.hpp"
+#include <uhd/types/ranges.hpp>
#include <boost/shared_ptr.hpp>
#include <boost/utility.hpp>
@@ -31,10 +32,13 @@ class usrp_e_codec_ctrl : boost::noncopyable{
public:
typedef boost::shared_ptr<usrp_e_codec_ctrl> sptr;
+ static const uhd::gain_range_t tx_pga_gain_range;
+ static const uhd::gain_range_t rx_pga_gain_range;
+
/*!
- * Make a new clock control object.
+ * Make a new codec control object.
* \param iface the usrp_e iface object
- * \return the clock control object
+ * \return the codec control object
*/
static sptr make(usrp_e_iface::sptr iface);
@@ -70,6 +74,17 @@ public:
*/
virtual void write_aux_dac(aux_dac_t which, float volts) = 0;
+ //! Set the TX PGA gain
+ virtual void set_tx_pga_gain(float gain) = 0;
+
+ //! Get the TX PGA gain
+ virtual float get_tx_pga_gain(void) = 0;
+
+ //! Set the RX PGA gain ('A' or 'B')
+ virtual void set_rx_pga_gain(float gain, char which) = 0;
+
+ //! Get the RX PGA gain ('A' or 'B')
+ virtual float get_rx_pga_gain(char which) = 0;
};
#endif /* INCLUDED_USRP_E_CODEC_CTRL_HPP */