projects
/
pulseview.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Modified Decode to only use LogicSignals
[pulseview.git]
/
pv
/
sigsession.cpp
diff --git
a/pv/sigsession.cpp
b/pv/sigsession.cpp
index a69f068e804f3d249ec831f59395e5dcec31904e..aadaf45011451bc21bad01045f7781347cd1aaaa 100644
(file)
--- a/
pv/sigsession.cpp
+++ b/
pv/sigsession.cpp
@@
-34,6
+34,8
@@
#include <assert.h>
#include <assert.h>
+#include <stdexcept>
+
#include <sys/stat.h>
#include <QDebug>
#include <sys/stat.h>
#include <QDebug>
@@
-193,11
+195,12
@@
boost::shared_ptr<data::Logic> SigSession::get_data()
return _logic_data;
}
return _logic_data;
}
-
void
SigSession::add_decoder(srd_decoder *const dec,
+
bool
SigSession::add_decoder(srd_decoder *const dec,
std::map<const srd_probe*,
std::map<const srd_probe*,
- boost::shared_ptr<view::Signal> > probes,
+ boost::shared_ptr<view::
Logic
Signal> > probes,
GHashTable *options)
{
GHashTable *options)
{
+ try
{
lock_guard<mutex> lock(_signals_mutex);
{
lock_guard<mutex> lock(_signals_mutex);
@@
-208,7
+211,14
@@
void SigSession::add_decoder(srd_decoder *const dec,
_decode_traces.size()));
_decode_traces.push_back(d);
}
_decode_traces.size()));
_decode_traces.push_back(d);
}
+ catch(std::runtime_error e)
+ {
+ return false;
+ }
+
signals_changed();
signals_changed();
+
+ return true;
}
vector< shared_ptr<view::DecodeSignal> > SigSession::get_decode_signals() const
}
vector< shared_ptr<view::DecodeSignal> > SigSession::get_decode_signals() const