diff options
Diffstat (limited to 'host/include')
-rw-r--r-- | host/include/uhd/usrp/multi_usrp.hpp | 27 |
1 files changed, 20 insertions, 7 deletions
diff --git a/host/include/uhd/usrp/multi_usrp.hpp b/host/include/uhd/usrp/multi_usrp.hpp index 0c1e73895..80501e489 100644 --- a/host/include/uhd/usrp/multi_usrp.hpp +++ b/host/include/uhd/usrp/multi_usrp.hpp @@ -977,6 +977,26 @@ public: /******************************************************************* * Register IO methods ******************************************************************/ + struct register_info_t { + size_t bitwidth; + bool readable; + bool writable; + }; + + /*! + * Enumerate the full paths of all low-level USRP register accessible to read/write + * \param mboard the motherboard index 0 to M-1 + * \return a vector of register paths + */ + virtual std::vector<std::string> enumerate_registers(const size_t mboard = 0) = 0; + + /*! + * Get more information about a low-level device register + * \param path the full path to the register + * \param mboard the motherboard index 0 to M-1 + * \return the info struct which contains the bitwidth and read-write access information + */ + virtual register_info_t get_register_info(const std::string &path, const size_t mboard = 0) = 0; /*! * Write a low-level register field for a register in the USRP hardware @@ -996,13 +1016,6 @@ public: */ virtual boost::uint64_t read_register(const std::string &path, const boost::uint32_t field, const size_t mboard = 0) = 0; - /*! - * Enumerate the full paths of all low-level USRP register accessible to read/write - * \param mboard the motherboard index 0 to M-1 - * \return a vector of register paths - */ - virtual std::vector<std::string> enumerate_registers(const size_t mboard = 0) = 0; - /******************************************************************* * Filter API methods ******************************************************************/ |