projects
/
pulseview.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
INSTALL: Mention missing dependency libboost-filesystem.
[pulseview.git]
/
pv
/
device
/
devinst.cpp
diff --git
a/pv/device/devinst.cpp
b/pv/device/devinst.cpp
index 7440995193be1222eff7d433e65a16e6a7eb0ad1..4543e5c81d8dba5cf212918bdb31cfa199e6476d 100644
(file)
--- a/
pv/device/devinst.cpp
+++ b/
pv/device/devinst.cpp
@@
-36,12
+36,11
@@
DevInst::DevInst() :
{
}
{
}
-void DevInst::use(SigSession *owner)
+void DevInst::use(SigSession *owner)
throw(QString)
{
assert(owner);
assert(!_owner);
_owner = owner;
{
assert(owner);
assert(!_owner);
_owner = owner;
- sr_dev_open(dev_inst());
}
void DevInst::release()
}
void DevInst::release()
@@
-49,7
+48,6
@@
void DevInst::release()
if (_owner) {
_owner->release_device(this);
_owner = NULL;
if (_owner) {
_owner->release_device(this);
_owner = NULL;
- sr_dev_close(dev_inst());
}
}
}
}
@@
-58,9
+56,10
@@
SigSession* DevInst::owner() const
return _owner;
}
return _owner;
}
-GVariant* DevInst::get_config(const sr_
probe
_group *group, int key)
+GVariant* DevInst::get_config(const sr_
channel
_group *group, int key)
{
GVariant *data = NULL;
{
GVariant *data = NULL;
+ assert(_owner);
sr_dev_inst *const sdi = dev_inst();
assert(sdi);
if (sr_config_get(sdi->driver, sdi, group, key, &data) != SR_OK)
sr_dev_inst *const sdi = dev_inst();
assert(sdi);
if (sr_config_get(sdi->driver, sdi, group, key, &data) != SR_OK)
@@
-68,8
+67,9
@@
GVariant* DevInst::get_config(const sr_probe_group *group, int key)
return data;
}
return data;
}
-bool DevInst::set_config(const sr_
probe
_group *group, int key, GVariant *data)
+bool DevInst::set_config(const sr_
channel
_group *group, int key, GVariant *data)
{
{
+ assert(_owner);
sr_dev_inst *const sdi = dev_inst();
assert(sdi);
if(sr_config_set(sdi, group, key, data) == SR_OK) {
sr_dev_inst *const sdi = dev_inst();
assert(sdi);
if(sr_config_set(sdi, group, key, data) == SR_OK) {
@@
-79,9
+79,10
@@
bool DevInst::set_config(const sr_probe_group *group, int key, GVariant *data)
return false;
}
return false;
}
-GVariant* DevInst::list_config(const sr_
probe
_group *group, int key)
+GVariant* DevInst::list_config(const sr_
channel
_group *group, int key)
{
GVariant *data = NULL;
{
GVariant *data = NULL;
+ assert(_owner);
sr_dev_inst *const sdi = dev_inst();
assert(sdi);
if (sr_config_list(sdi->driver, sdi, group, key, &data) != SR_OK)
sr_dev_inst *const sdi = dev_inst();
assert(sdi);
if (sr_config_list(sdi->driver, sdi, group, key, &data) != SR_OK)
@@
-89,13
+90,14
@@
GVariant* DevInst::list_config(const sr_probe_group *group, int key)
return data;
}
return data;
}
-void DevInst::enable_probe(const sr_
probe
*probe, bool enable)
+void DevInst::enable_probe(const sr_
channel
*probe, bool enable)
{
{
+ assert(_owner);
sr_dev_inst *const sdi = dev_inst();
assert(sdi);
sr_dev_inst *const sdi = dev_inst();
assert(sdi);
- for (const GSList *p = sdi->
probe
s; p; p = p->next)
+ for (const GSList *p = sdi->
channel
s; p; p = p->next)
if (probe == p->data) {
if (probe == p->data) {
- const_cast<sr_
probe
*>(probe)->enabled = enable;
+ const_cast<sr_
channel
*>(probe)->enabled = enable;
config_changed();
return;
}
config_changed();
return;
}
@@
-122,5
+124,16
@@
bool DevInst::is_trigger_enabled() const
return false;
}
return false;
}
+void DevInst::start()
+{
+ if (sr_session_start() != SR_OK)
+ throw tr("Failed to start session.");
+}
+
+void DevInst::run()
+{
+ sr_session_run();
+}
+
} // device
} // pv
} // device
} // pv