]> sigrok.org Git - pulseview.git/blobdiff - pv/device/devinst.h
Moved DevInst::_sdi down into Device
[pulseview.git] / pv / device / devinst.h
index 6e81f49c686fcc8ab1424ed2836ae6e859e5e348..fb0b7dfbb89f1ce3d96366952f8198d3bac2fed3 100644 (file)
@@ -36,6 +36,9 @@ struct sr_probe;
 struct sr_probe_group;
 
 namespace pv {
+
+class SigSession;
+
 namespace device {
 
 class DevInst : public QObject
@@ -43,10 +46,16 @@ 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);
+
+       void release();
+
+       SigSession* owner() const;
 
        virtual std::string format_device_title() const = 0;
 
@@ -70,7 +79,7 @@ signals:
        void config_changed();
 
 protected:
-       sr_dev_inst *const _sdi;
+       SigSession *_owner;
 };
 
 } // device