- void expose_enum(const struct sr_config_info *info,
- const std::vector<std::pair<const void*, QString> > &values,
- int opt);
-
- void bind_stropt(const struct sr_config_info *info, int key);
-
- void bind_samplerate(const struct sr_config_info *info);
- void bind_buffer_size(const struct sr_config_info *info);
- void bind_time_base(const struct sr_config_info *info);
- void bind_vdiv(const struct sr_config_info *info);
-
-private:
- static const void* enum_getter(
- const struct sr_dev_inst *sdi, int key);
-
- static double samplerate_value_getter(
- const struct sr_dev_inst *sdi);
- static void samplerate_value_setter(
- struct sr_dev_inst *sdi, double value);
+ void bind_bool(const QString &name,
+ Property::Getter getter, Property::Setter setter);
+ void bind_enum(const QString &name, int key,
+ GVariant *const gvar_list,
+ Property::Getter getter, Property::Setter setter,
+ std::function<QString (GVariant*)> printer = print_gvariant);
+ void bind_int(const QString &name, QString suffix,
+ boost::optional< std::pair<int64_t, int64_t> > range,
+ Property::Getter getter, Property::Setter setter);