projects
/
pulseview.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add decoder after decoder dialog
[pulseview.git]
/
pv
/
sigsession.cpp
diff --git
a/pv/sigsession.cpp
b/pv/sigsession.cpp
index e9349bba0efb1eae40e3cfa4f93dd5ddd9fc5e92..c2c2dc983892dc65d1ff94b532b79b83e60a9cf6 100644
(file)
--- a/
pv/sigsession.cpp
+++ b/
pv/sigsession.cpp
@@
-25,7
+25,9
@@
#include "data/analogsnapshot.h"
#include "data/logic.h"
#include "data/logicsnapshot.h"
#include "data/analogsnapshot.h"
#include "data/logic.h"
#include "data/logicsnapshot.h"
+
#include "view/analogsignal.h"
#include "view/analogsignal.h"
+#include "view/decodesignal.h"
#include "view/logicsignal.h"
#include <assert.h>
#include "view/logicsignal.h"
#include <assert.h>
@@
-194,6
+196,15
@@
boost::shared_ptr<data::Logic> SigSession::get_data()
return _logic_data;
}
return _logic_data;
}
+void SigSession::add_decoder(srd_decoder *const dec)
+{
+ {
+ shared_ptr<view::DecodeSignal> d(new view::DecodeSignal(*this, dec));
+ _decode_traces.push_back(d);
+ }
+ signals_changed();
+}
+
void SigSession::set_capture_state(capture_state state)
{
lock_guard<mutex> lock(_sampling_mutex);
void SigSession::set_capture_state(capture_state state)
{
lock_guard<mutex> lock(_sampling_mutex);
@@
-287,6
+298,9
@@
void SigSession::update_signals(const sr_dev_inst *const sdi)
unsigned int logic_probe_count = 0;
unsigned int analog_probe_count = 0;
unsigned int logic_probe_count = 0;
unsigned int analog_probe_count = 0;
+ // Clear the decode traces
+ _decode_traces.clear();
+
// Detect what data types we will receive
if(sdi) {
for (const GSList *l = sdi->probes; l; l = l->next) {
// Detect what data types we will receive
if(sdi) {
for (const GSList *l = sdi->probes; l; l = l->next) {