]> sigrok.org Git - pulseview.git/blobdiff - pv/prop/binding/deviceoptions.h
Replaced boost::bind with C++11 lambdas
[pulseview.git] / pv / prop / binding / deviceoptions.h
index 4a6eff2eb1694f07ef61aa43b7feef2d95f191e2..a1efd06a3fbc0bed6e42aec944f3315d1b7e3c49 100644 (file)
 #ifndef PULSEVIEW_PV_PROP_BINDING_DEVICEOPTIONS_H
 #define PULSEVIEW_PV_PROP_BINDING_DEVICEOPTIONS_H
 
-#include <boost/function.hpp>
 #include <boost/optional.hpp>
 
 #include <QString>
 
+#include <glib.h>
+
 #include "binding.h"
 
-#include <glib.h>
+#include <pv/prop/property.h>
 
 struct sr_dev_inst;
-struct sr_probe_group;
+struct sr_channel_group;
 
 namespace pv {
 
@@ -45,26 +46,27 @@ namespace binding {
 class DeviceOptions : public Binding
 {
 public:
-       DeviceOptions(boost::shared_ptr<pv::device::DevInst> dev_inst,
-               const sr_probe_group *group = NULL);
+       DeviceOptions(std::shared_ptr<pv::device::DevInst> dev_inst,
+               const sr_channel_group *group = NULL);
 
 private:
-       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<QString (GVariant*)> printer = print_gvariant);
-       void bind_int(const QString &name, int key, QString suffix,
-               boost::optional< std::pair<int64_t, int64_t> > range);
-
-       static QString print_gvariant(GVariant *const gvar);
+               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);
 
        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<device::DevInst> _dev_inst;
-       const sr_probe_group *const _group;
+       std::shared_ptr<device::DevInst> _dev_inst;
+       const sr_channel_group *const _group;
 };
 
 } // binding