#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"
_sampling_thread.reset();
}
-vector< shared_ptr<view::Signal> > SigSession::get_signals()
+vector< shared_ptr<view::Signal> > SigSession::get_signals() const
{
lock_guard<mutex> lock(_signals_mutex);
return _signals;
return _logic_data;
}
-void SigSession::add_decoder(srd_decoder *const dec)
+void SigSession::add_decoder(srd_decoder *const dec,
+ std::map<const srd_probe*,
+ boost::shared_ptr<view::Signal> > probes)
{
{
- shared_ptr<view::DecodeSignal> d(new view::DecodeSignal(*this, dec));
+ lock_guard<mutex> lock(_signals_mutex);
+ shared_ptr<data::Decoder> decoder(
+ new data::Decoder(dec, probes));
+ shared_ptr<view::DecodeSignal> d(
+ new view::DecodeSignal(*this, decoder));
_decode_traces.push_back(d);
}
signals_changed();
}
+vector< shared_ptr<view::DecodeSignal> > SigSession::get_decode_signals() const
+{
+ lock_guard<mutex> lock(_signals_mutex);
+ return _decode_traces;
+}
+
void SigSession::set_capture_state(capture_state state)
{
lock_guard<mutex> lock(_sampling_mutex);
break;
}
}
+
+ signals_changed();
}
void SigSession::feed_in_logic(const sr_datafeed_logic &logic)