X-Git-Url: http://git.code-monkey.de/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fbinding%2Fdevice.cpp;h=401644fd0672fa616c5c21586f619590e8b1cff1;hp=85315f1d166a15b6ebca1bf6841315876cee48fb;hb=9a267f8dec48c9a28472c1a3bb146c624819e98b;hpb=efdec55aec1a137460fa362a381ed1904182bfed diff --git a/pv/binding/device.cpp b/pv/binding/device.cpp index 85315f1..401644f 100644 --- a/pv/binding/device.cpp +++ b/pv/binding/device.cpp @@ -17,23 +17,24 @@ * along with this program; if not, see . */ -#include +#include #include #include "device.hpp" #include -#include #include #include #include using boost::optional; + using std::function; using std::make_pair; using std::pair; +using std::set; using std::shared_ptr; using std::string; using std::vector; @@ -44,7 +45,6 @@ using sigrok::ConfigKey; using sigrok::Error; using pv::prop::Bool; -using pv::prop::Double; using pv::prop::Enum; using pv::prop::Int; using pv::prop::Property; @@ -89,7 +89,7 @@ Device::Device(shared_ptr configurable) : break; case SR_CONF_CAPTURE_RATIO: - bind_int(name, "%", pair(0, 100), + bind_int(name, "", "%", pair(0, 100), get, set); break; @@ -99,33 +99,33 @@ Device::Device(shared_ptr configurable) : case SR_CONF_TRIGGER_SLOPE: case SR_CONF_COUPLING: case SR_CONF_CLOCK_EDGE: - bind_enum(name, key, capabilities, get, set); + bind_enum(name, "", key, capabilities, get, set); break; case SR_CONF_FILTER: case SR_CONF_EXTERNAL_CLOCK: case SR_CONF_RLE: case SR_CONF_POWER_OFF: - bind_bool(name, get, set); + bind_bool(name, "", get, set); break; case SR_CONF_TIMEBASE: - bind_enum(name, key, capabilities, get, set, print_timebase); + bind_enum(name, "", key, capabilities, get, set, print_timebase); break; case SR_CONF_VDIV: - bind_enum(name, key, capabilities, get, set, print_vdiv); + bind_enum(name, "", key, capabilities, get, set, print_vdiv); break; case SR_CONF_VOLTAGE_THRESHOLD: - bind_enum(name, key, capabilities, get, set, print_voltage_threshold); + bind_enum(name, "", key, capabilities, get, set, print_voltage_threshold); break; case SR_CONF_PROBE_FACTOR: if (capabilities.count(Capability::LIST)) - bind_enum(name, key, capabilities, get, set, print_probe_factor); + bind_enum(name, "", key, capabilities, get, set, print_probe_factor); else - bind_int(name, "", pair(1, 500), get, set); + bind_int(name, "", "", pair(1, 500), get, set); break; default: @@ -134,16 +134,16 @@ Device::Device(shared_ptr configurable) : } } -void Device::bind_bool(const QString &name, +void Device::bind_bool(const QString &name, const QString &desc, Property::Getter getter, Property::Setter setter) { assert(configurable_); properties_.push_back(shared_ptr(new Bool( - name, getter, setter))); + name, desc, getter, setter))); } -void Device::bind_enum(const QString &name, - const ConfigKey *key, std::set capabilities, +void Device::bind_enum(const QString &name, const QString &desc, + const ConfigKey *key, set capabilities, Property::Getter getter, Property::Setter setter, function printer) { @@ -159,25 +159,25 @@ void Device::bind_enum(const QString &name, while ((iter.next_value(gvar))) values.push_back(make_pair(gvar, printer(gvar))); - properties_.push_back(shared_ptr(new Enum(name, values, + properties_.push_back(shared_ptr(new Enum(name, desc, values, getter, setter))); } -void Device::bind_int(const QString &name, QString suffix, - optional< std::pair > range, +void Device::bind_int(const QString &name, const QString &desc, QString suffix, + optional< pair > range, Property::Getter getter, Property::Setter setter) { assert(configurable_); - properties_.push_back(shared_ptr(new Int(name, suffix, range, - getter, setter))); + properties_.push_back(shared_ptr(new Int(name, desc, suffix, + range, getter, setter))); } QString Device::print_timebase(Glib::VariantBase gvar) { uint64_t p, q; g_variant_get(gvar.gobj(), "(tt)", &p, &q); - return QString::fromUtf8(sr_period_string(p * q)); + return QString::fromUtf8(sr_period_string(p, q)); } QString Device::print_vdiv(Glib::VariantBase gvar) @@ -201,5 +201,5 @@ QString Device::print_probe_factor(Glib::VariantBase gvar) return QString("%1x").arg(factor); } -} // binding -} // pv +} // namespace binding +} // namespace pv