From ddee4cf8c09fa27c329084b8706a984995648056 Mon Sep 17 00:00:00 2001 From: Joel Holdsworth Date: Sun, 16 Feb 2014 10:55:27 +0000 Subject: [PATCH] Added LogicSignal::get_data --- pv/data/decode/decoder.cpp | 16 ++++++++++++++++ pv/data/decode/decoder.h | 6 ++++++ 2 files changed, 22 insertions(+) diff --git a/pv/data/decode/decoder.cpp b/pv/data/decode/decoder.cpp index 8cde226..89d19b3 100644 --- a/pv/data/decode/decoder.cpp +++ b/pv/data/decode/decoder.cpp @@ -26,6 +26,7 @@ #include using boost::shared_ptr; +using std::set; using std::map; using std::string; @@ -97,6 +98,21 @@ bool Decoder::have_required_probes() const return true; } +set< shared_ptr > Decoder::get_data() +{ + set< shared_ptr > data; + for(map >:: + const_iterator i = _probes.begin(); + i != _probes.end(); i++) + { + shared_ptr signal((*i).second); + assert(signal); + data.insert(signal->logic_data()); + } + + return data; +} + srd_decoder_inst* Decoder::create_decoder_inst(srd_session *session, int unit_size) const { GHashTable *const opt_hash = g_hash_table_new_full(g_str_hash, diff --git a/pv/data/decode/decoder.h b/pv/data/decode/decoder.h index d8ed469..0c3662c 100644 --- a/pv/data/decode/decoder.h +++ b/pv/data/decode/decoder.h @@ -22,6 +22,7 @@ #define PULSEVIEW_PV_DATA_DECODE_DECODER_H #include +#include #include @@ -39,6 +40,9 @@ class LogicSignal; } namespace data { + +class Logic; + namespace decode { class Decoder @@ -67,6 +71,8 @@ public: srd_decoder_inst* create_decoder_inst( srd_session *session, int unit_size) const; + std::set< boost::shared_ptr > get_data(); + private: const srd_decoder *const _decoder; -- 2.30.2