X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=pv%2Fsigsession.cpp;h=cea71bda9cdc6ea4ab42ef42f1ed423762357362;hb=708c552391bc942e91bc09bc808577e2564347bd;hp=c2c2dc983892dc65d1ff94b532b79b83e60a9cf6;hpb=82c7f64018db2a90f44704e55ba469151522762f;p=pulseview.git diff --git a/pv/sigsession.cpp b/pv/sigsession.cpp index c2c2dc9..cea71bd 100644 --- a/pv/sigsession.cpp +++ b/pv/sigsession.cpp @@ -21,8 +21,10 @@ #include "sigsession.h" #include "devicemanager.h" + #include "data/analog.h" #include "data/analogsnapshot.h" +#include "data/decoder.h" #include "data/logic.h" #include "data/logicsnapshot.h" @@ -196,10 +198,16 @@ boost::shared_ptr SigSession::get_data() return _logic_data; } -void SigSession::add_decoder(srd_decoder *const dec) +void SigSession::add_decoder(srd_decoder *const dec, + std::map > probes) { { - shared_ptr d(new view::DecodeSignal(*this, dec)); + lock_guard lock(_signals_mutex); + shared_ptr decoder( + new data::Decoder(dec, probes)); + shared_ptr d( + new view::DecodeSignal(*this, decoder)); _decode_traces.push_back(d); } signals_changed(); @@ -517,6 +525,8 @@ void SigSession::feed_in_meta(const sr_dev_inst *sdi, break; } } + + signals_changed(); } void SigSession::feed_in_logic(const sr_datafeed_logic &logic)