X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=pv%2Fprop%2Fbinding%2Fdeviceoptions.h;h=f0ba92ef777ee85ec1f27bdc955f4624bcedd5bd;hb=f9abf97e78bc4825d80926b0ebc6cbaef40768b1;hp=ab0f01716f0377c563c5288a14050bed8ea7fae2;hpb=941c1ba74ba3ba6dd44bf23aafee28809138032b;p=pulseview.git diff --git a/pv/prop/binding/deviceoptions.h b/pv/prop/binding/deviceoptions.h index ab0f017..f0ba92e 100644 --- a/pv/prop/binding/deviceoptions.h +++ b/pv/prop/binding/deviceoptions.h @@ -26,28 +26,29 @@ #include -#include - #include "binding.h" +#include + +struct sr_dev_inst; +struct sr_channel_group; + namespace pv { + +namespace device { +class DevInst; +} + namespace prop { namespace binding { class DeviceOptions : public Binding { public: - DeviceOptions(const sr_dev_inst *sdi, - const sr_probe_group *group = NULL); + DeviceOptions(std::shared_ptr dev_inst, + const sr_channel_group *group = NULL); private: - - static GVariant* config_getter( - const sr_dev_inst *sdi, const sr_probe_group *group, int key); - static void config_setter( - 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, @@ -55,15 +56,13 @@ private: void bind_int(const QString &name, int key, QString suffix, boost::optional< std::pair > range); - static QString print_gvariant(GVariant *const gvar); - static QString print_timebase(GVariant *const gvar); static QString print_vdiv(GVariant *const gvar); static QString print_voltage_threshold(GVariant *const gvar); protected: - const sr_dev_inst *const _sdi; - const sr_probe_group *const _group; + std::shared_ptr _dev_inst; + const sr_channel_group *const _group; }; } // binding