X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=pv%2Fdata%2Fdecoderstack.cpp;h=1cb7d4ff126f7fda54dfac544a24a599e91dd67d;hb=d9aecf1fcd9af471db3b59de7efc65b9632a6d79;hp=9a13769ccf2a32ffbec850b88cf1225b5718a7bc;hpb=1ae8a74b45011027c3719d84f4c5ace5b9ba22d9;p=pulseview.git diff --git a/pv/data/decoderstack.cpp b/pv/data/decoderstack.cpp index 9a13769..1cb7d4f 100644 --- a/pv/data/decoderstack.cpp +++ b/pv/data/decoderstack.cpp @@ -20,7 +20,6 @@ #include -#include #include #include @@ -106,7 +105,7 @@ void DecoderStack::remove(int index) assert(index < (int)_stack.size()); // Find the decoder in the stack - list< shared_ptr >::iterator iter = _stack.begin(); + auto iter = _stack.begin(); for(int i = 0; i < index; i++, iter++) assert(iter != _stack.end()); @@ -126,7 +125,7 @@ std::vector DecoderStack::get_visible_rows() const vector rows; - BOOST_FOREACH (const shared_ptr &dec, _stack) + for (const shared_ptr &dec : _stack) { assert(dec); if (!dec->shown()) @@ -159,8 +158,7 @@ void DecoderStack::get_annotation_subset( { lock_guard lock(_output_mutex); - std::map::const_iterator iter = - _rows.find(row); + const auto iter = _rows.find(row); if (iter != _rows.end()) (*iter).second.get_annotation_subset(dest, start_sample, end_sample); @@ -194,16 +192,16 @@ void DecoderStack::begin_decode() clear(); - // Check that all decoders have the required probes - BOOST_FOREACH(const shared_ptr &dec, _stack) + // Check that all decoders have the required channels + for (const shared_ptr &dec : _stack) if (!dec->have_required_probes()) { - _error_message = tr("One or more required probes " + _error_message = tr("One or more required channels " "have not been specified"); return; } // Add classes - BOOST_FOREACH (const shared_ptr &dec, _stack) + for (const shared_ptr &dec : _stack) { assert(dec); const srd_decoder *const decc = dec->decoder(); @@ -233,12 +231,12 @@ void DecoderStack::begin_decode() } } - // We get the logic data of the first probe in the list. + // We get the logic data of the first channel in the list. // This works because we are currently assuming all // LogicSignals have the same data/snapshot - BOOST_FOREACH (const shared_ptr &dec, _stack) - if (dec && !dec->probes().empty() && - ((logic_signal = (*dec->probes().begin()).second)) && + for (const shared_ptr &dec : _stack) + if (dec && !dec->channels().empty() && + ((logic_signal = (*dec->channels().begin()).second)) && ((data = logic_signal->logic_data()))) break; @@ -265,8 +263,7 @@ uint64_t DecoderStack::get_max_sample_count() const { uint64_t max_sample_count = 0; - for (map::const_iterator i = _rows.begin(); - i != _rows.end(); i++) + for (auto i = _rows.cbegin(); i != _rows.end(); i++) max_sample_count = max(max_sample_count, (*i).second.get_max_sample()); @@ -338,7 +335,7 @@ void DecoderStack::decode_proc() // Create the decoders const unsigned int unit_size = _snapshot->unit_size(); - BOOST_FOREACH(const shared_ptr &dec, _stack) + for (const shared_ptr &dec : _stack) { srd_decoder_inst *const di = dec->create_decoder_inst(session, unit_size); @@ -396,11 +393,10 @@ void DecoderStack::annotation_callback(srd_proto_data *pdata, void *decoder) const srd_decoder *const decc = pdata->pdo->di->decoder; assert(decc); - map::iterator row_iter = d->_rows.end(); + auto row_iter = d->_rows.end(); // Try looking up the sub-row of this class - const map, Row>::const_iterator r = - d->_class_rows.find(make_pair(decc, a.format())); + const auto r = d->_class_rows.find(make_pair(decc, a.format())); if (r != d->_class_rows.end()) row_iter = d->_rows.find((*r).second); else