X-Git-Url: https://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fbinding%2Fdevice.cpp;h=026ca16c6b49354f5e51cbbe89b59a1c09f5bf86;hp=77c772c088b07dabcbba1ed782339560527dae09;hb=7bb0fbf4d3809dbbd0fe5b35fc7e475b1065ae20;hpb=eee89ff865c28854eebdcecbe344f225b9ee366f diff --git a/pv/binding/device.cpp b/pv/binding/device.cpp index 77c772c0..026ca16c 100644 --- a/pv/binding/device.cpp +++ b/pv/binding/device.cpp @@ -56,17 +56,12 @@ namespace binding { Device::Device(shared_ptr configurable) : configurable_(configurable) { - std::map< const ConfigKey*, std::set > keys; - try { - keys = configurable->config_keys(ConfigKey::DEVICE_OPTIONS); - } catch (const Error) { - return; - } + auto keys = configurable->config_keys(); + + for (auto key : keys) { - for (auto entry : keys) { - auto key = entry.first; - auto capabilities = entry.second; + auto capabilities = configurable->config_capabilities(key); if (!capabilities.count(Capability::GET) || !capabilities.count(Capability::SET)) @@ -146,7 +141,7 @@ void Device::bind_bool(const QString &name, } void Device::bind_enum(const QString &name, - const ConfigKey *key, std::set capabilities, + const ConfigKey *key, std::set capabilities, Property::Getter getter, Property::Setter setter, function printer) {