struct sr_probe_group;
namespace pv {
+
+class SigSession;
+
namespace device {
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;
+
+ virtual void use(SigSession *owner) throw(QString);
+
+ virtual void release();
+
+ SigSession* owner() const;
virtual std::string format_device_title() const = 0;
*/
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;
};
} // device