X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=pv%2Fprop%2Fbinding%2Fdeviceoptions.h;h=ab0f01716f0377c563c5288a14050bed8ea7fae2;hb=e7e57b252765945cbd5d50305ace07a2818b9087;hp=f2344796e338220b77dd8892459efe60a9000b6b;hpb=de1d99bbe58f825e30048baa48a9439c01686f10;p=pulseview.git diff --git a/pv/prop/binding/deviceoptions.h b/pv/prop/binding/deviceoptions.h index f2344796..ab0f0171 100644 --- a/pv/prop/binding/deviceoptions.h +++ b/pv/prop/binding/deviceoptions.h @@ -22,6 +22,7 @@ #define PULSEVIEW_PV_PROP_BINDING_DEVICEOPTIONS_H #include +#include #include @@ -36,35 +37,33 @@ namespace binding { class DeviceOptions : public Binding { public: - DeviceOptions(struct sr_dev_inst *sdi); + DeviceOptions(const sr_dev_inst *sdi, + const sr_probe_group *group = NULL); private: static GVariant* config_getter( - const struct sr_dev_inst *sdi, int key); + const sr_dev_inst *sdi, const sr_probe_group *group, int key); static void config_setter( - const struct sr_dev_inst *sdi, int key, GVariant* value); + const sr_dev_inst *sdi, const sr_probe_group *group, int key, + GVariant* value); void bind_bool(const QString &name, int key); void bind_enum(const QString &name, int key, GVariant *const gvar_list, boost::function printer = print_gvariant); + void bind_int(const QString &name, int key, QString suffix, + boost::optional< std::pair > range); static QString print_gvariant(GVariant *const gvar); - void bind_samplerate(const QString &name, - GVariant *const gvar_list); - static QString print_samplerate(GVariant *const gvar); - static GVariant* samplerate_double_getter( - const struct sr_dev_inst *sdi); - static void samplerate_double_setter( - struct sr_dev_inst *sdi, GVariant *value); - static QString print_timebase(GVariant *const gvar); static QString print_vdiv(GVariant *const gvar); + static QString print_voltage_threshold(GVariant *const gvar); protected: - struct sr_dev_inst *const _sdi; + const sr_dev_inst *const _sdi; + const sr_probe_group *const _group; }; } // binding