diff options
author | Lane Kolbly <lane.kolbly@ni.com> | 2021-12-21 13:13:53 -0600 |
---|---|---|
committer | Aaron Rossetto <aaron.rossetto@ni.com> | 2022-01-05 09:58:21 -0600 |
commit | 25d8d6f611851d587e98607cba79a5bb74db2cb1 (patch) | |
tree | 9ba230390c0e006b5a5dce1267ef1215a56fc85c | |
parent | 450a36eababc10e21b8af7bb130f41cec9e90d1e (diff) | |
download | uhd-25d8d6f611851d587e98607cba79a5bb74db2cb1.tar.gz uhd-25d8d6f611851d587e98607cba79a5bb74db2cb1.tar.bz2 uhd-25d8d6f611851d587e98607cba79a5bb74db2cb1.zip |
host: Add char* overload for device_addr_t
This allows constructing a multi_usrp using a string constant:
```
auto usrp = uhd::usrp::multi_usrp::make("type=x4xx");
```
-rw-r--r-- | host/include/uhd/types/device_addr.hpp | 6 | ||||
-rw-r--r-- | host/lib/include/uhdlib/usrp/constrained_device_args.hpp | 6 | ||||
-rw-r--r-- | host/lib/types/device_addr.cpp | 6 |
3 files changed, 12 insertions, 6 deletions
diff --git a/host/include/uhd/types/device_addr.hpp b/host/include/uhd/types/device_addr.hpp index 869f4a862..87cce626d 100644 --- a/host/include/uhd/types/device_addr.hpp +++ b/host/include/uhd/types/device_addr.hpp @@ -44,6 +44,12 @@ public: device_addr_t(const std::string& args = ""); /*! + * Create a device address from an args string. + * \param args the arguments string + */ + device_addr_t(const char* args); + + /*! * Create a device address from a std::map * \param info the device info map */ diff --git a/host/lib/include/uhdlib/usrp/constrained_device_args.hpp b/host/lib/include/uhdlib/usrp/constrained_device_args.hpp index e0c2c9b90..d3b52ea01 100644 --- a/host/lib/include/uhdlib/usrp/constrained_device_args.hpp +++ b/host/lib/include/uhdlib/usrp/constrained_device_args.hpp @@ -244,12 +244,6 @@ public: // Methods constrained_device_args_t() {} virtual ~constrained_device_args_t() {} - void parse(const std::string& str_args) - { - device_addr_t dev_args(str_args); - _parse(dev_args); - } - void parse(const device_addr_t& dev_args) { _parse(dev_args); diff --git a/host/lib/types/device_addr.cpp b/host/lib/types/device_addr.cpp index 01dd46f5c..8f0fffa75 100644 --- a/host/lib/types/device_addr.cpp +++ b/host/lib/types/device_addr.cpp @@ -44,6 +44,12 @@ device_addr_t::device_addr_t(const std::string& args) } } +device_addr_t::device_addr_t(const char* args) : + device_addr_t(std::string(args)) +{ + // No additional construction is necessary +} + device_addr_t::device_addr_t(const std::map<std::string, std::string>& info) { for (auto& t : info) { |