struct sr_probe_group;
namespace pv {
+
+class SigSession;
+
namespace device {
class DevInst : public QObject
{
Q_OBJECT
+protected:
+ DevInst();
+
public:
- DevInst(sr_dev_inst *sdi);
+ virtual sr_dev_inst* dev_inst() const = 0;
+
+ void use(SigSession *owner);
+
+ void release();
- sr_dev_inst* dev_inst() const;
+ SigSession* owner() const;
- std::string format_device_title() const;
+ virtual std::string format_device_title() const = 0;
GVariant* get_config(const sr_probe_group *group, int key);
signals:
void config_changed();
-private:
- sr_dev_inst *const _sdi;
+protected:
+ SigSession *_owner;
};
} // device