X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=pv%2Fdialogs%2Fdecoder.cpp;h=97df5d45f43c605f3d774d25848d4d0557247e93;hb=708c552391bc942e91bc09bc808577e2564347bd;hp=abd25041e795aa8c1ca1f534cd23792018a233f3;hpb=535554a4d1855b6c15bf20746b3aafd8c53a6ca9;p=pulseview.git diff --git a/pv/dialogs/decoder.cpp b/pv/dialogs/decoder.cpp index abd25041..97df5d45 100644 --- a/pv/dialogs/decoder.cpp +++ b/pv/dialogs/decoder.cpp @@ -22,8 +22,15 @@ extern "C" { #include } +#include + +#include + +#include + #include "decoder.h" +#include #include using namespace boost; @@ -87,6 +94,9 @@ Decoder::Decoder(QWidget *parent, const srd_decoder *decoder, _probe_selector_map[p] = combo; } + + _form_layout.addRow(new QLabel( + tr("* Required Probes"), &_form)); } QComboBox* Decoder::create_probe_selector( @@ -112,5 +122,28 @@ QComboBox* Decoder::create_probe_selector( return selector; } +map > Decoder::get_probes() +{ + map > probe_map; + for(map::const_iterator i = + _probe_selector_map.begin(); + i != _probe_selector_map.end(); i++) + { + const QComboBox *const combo = (*i).second; + const int probe_index = + combo->itemData(combo->currentIndex()).value(); + if(probe_index >= 0) { + shared_ptr sig = _sigs[probe_index]; + if(dynamic_cast(sig.get())) + probe_map[(*i).first] = sig; + else + qDebug() << "Currently only logic signals " + "are supported for decoding"; + } + } + + return probe_map; +} + } // namespace dialogs } // namespace pv