Update for 'probe_group' -> 'channel_group' rename in libsigrok.
[pulseview.git] / pv / device / devinst.h
index 9098027eb84e0674da978a65c38e67df3485c36f..bdadc2c3e72e44eccc2ca7012f3260358d412824 100644 (file)
@@ -33,7 +33,7 @@
 
 struct sr_dev_inst;
 struct sr_probe;
-struct sr_probe_group;
+struct sr_channel_group;
 
 namespace pv {
 
@@ -46,24 +46,24 @@ class DevInst : public QObject
        Q_OBJECT
 
 protected:
-       DevInst(sr_dev_inst *sdi);
+       DevInst();
 
 public:
-       sr_dev_inst* dev_inst() const;
+       virtual sr_dev_inst* dev_inst() const = 0;
 
-       void use(SigSession *owner);
+       virtual void use(SigSession *owner) throw(QString);
 
-       void release();
+       virtual void release();
 
        SigSession* owner() const;
 
        virtual std::string format_device_title() const = 0;
 
-       GVariant* get_config(const sr_probe_group *group, int key);
+       GVariant* get_config(const sr_channel_group *group, int key);
 
-       bool set_config(const sr_probe_group *group, int key, GVariant *data);
+       bool set_config(const sr_channel_group *group, int key, GVariant *data);
 
-       GVariant* list_config(const sr_probe_group *group, int key);
+       GVariant* list_config(const sr_channel_group *group, int key);
 
        void enable_probe(const sr_probe *probe, bool enable = true);
 
@@ -75,11 +75,17 @@ public:
         */
        uint64_t get_sample_limit();
 
+       virtual bool is_trigger_enabled() const;
+
+public:
+       virtual void start();
+
+       virtual void run();
+
 signals:
        void config_changed();
 
 protected:
-       sr_dev_inst *const _sdi;
        SigSession *_owner;
 };