From d1a5b70a8f9a54a2a39e30415fbc0a4c607222f7 Mon Sep 17 00:00:00 2001 From: Brent Stapleton Date: Thu, 1 Aug 2019 14:01:50 -0700 Subject: gain_groups: Add zero-value gain groups Add convenience factory for making a gain group that has a single zero-valued element. This factory requires a name, which should probably be ALL_GAINS, or something similar (these constants are device-specific). Using this new make_zero factory in the X300 radio control when we don't find any gain elements so that our gain groups aren't empty. This simplifies our later setters/getters because we know that we'll always have _something_ cached. Note that we only register this zero value gain group for TX, as our ADC is registered as a gain element, so our RX gain groups are never empty. --- host/include/uhd/utils/gain_group.hpp | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'host/include') diff --git a/host/include/uhd/utils/gain_group.hpp b/host/include/uhd/utils/gain_group.hpp index f85e841dc..4a3a01a65 100644 --- a/host/include/uhd/utils/gain_group.hpp +++ b/host/include/uhd/utils/gain_group.hpp @@ -91,6 +91,13 @@ public: * \return a gain group object. */ static sptr make(void); + + /*! + * Make a new gain group with all zero values. + * \param name the name of the (only and zero-valued) gain element + * \return a gain group object populated with zeroes + */ + static sptr make_zero(); }; } // namespace uhd -- cgit v1.2.3