X-Git-Url: https://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fprop%2Fbinding%2Fdeviceoptions.h;h=a1efd06a3fbc0bed6e42aec944f3315d1b7e3c49;hp=ca27a5b7fc69590654316bf08645eb4cf638d1e1;hb=6db7315814ee9d2f92d4b326be7c5b9e6e4b789b;hpb=19adbc2c342b190161ec1223377a3619974b91f7 diff --git a/pv/prop/binding/deviceoptions.h b/pv/prop/binding/deviceoptions.h index ca27a5b7..a1efd06a 100644 --- a/pv/prop/binding/deviceoptions.h +++ b/pv/prop/binding/deviceoptions.h @@ -21,21 +21,24 @@ #ifndef PULSEVIEW_PV_PROP_BINDING_DEVICEOPTIONS_H #define PULSEVIEW_PV_PROP_BINDING_DEVICEOPTIONS_H -#include #include #include +#include + #include "binding.h" -#include +#include struct sr_dev_inst; -struct sr_probe_group; +struct sr_channel_group; namespace pv { +namespace device { class DevInst; +} namespace prop { namespace binding { @@ -43,33 +46,27 @@ namespace binding { class DeviceOptions : public Binding { public: - DeviceOptions(boost::shared_ptr dev_inst, - 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_bool(const QString &name, + Property::Getter getter, Property::Setter setter); 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); + Property::Getter getter, Property::Setter setter, + std::function printer = print_gvariant); + void bind_int(const QString &name, QString suffix, + boost::optional< std::pair > range, + Property::Getter getter, Property::Setter setter); static QString print_timebase(GVariant *const gvar); static QString print_vdiv(GVariant *const gvar); static QString print_voltage_threshold(GVariant *const gvar); protected: - boost::shared_ptr _dev_inst; - const sr_probe_group *const _group; + std::shared_ptr _dev_inst; + const sr_channel_group *const _group; }; } // binding