#include <extdef.h>
-#include <boost/foreach.hpp>
#include <boost/functional/hash.hpp>
#include <QAction>
#include <pv/widgets/decodergroupbox.h>
#include <pv/widgets/decodermenu.h>
-using boost::dynamic_pointer_cast;
-using boost::shared_ptr;
+using std::dynamic_pointer_cast;
using std::list;
using std::max;
using std::map;
using std::min;
+using std::shared_ptr;
using std::vector;
namespace pv {
};
DecodeTrace::DecodeTrace(pv::SigSession &session,
- boost::shared_ptr<pv::data::DecoderStack> decoder_stack, int index) :
+ std::shared_ptr<pv::data::DecoderStack> decoder_stack, int index) :
Trace(QString::fromUtf8(
decoder_stack->stack().front()->decoder()->name)),
_session(session),
return true;
}
-const boost::shared_ptr<pv::data::DecoderStack>& DecodeTrace::decoder() const
+const std::shared_ptr<pv::data::DecoderStack>& DecodeTrace::decoder() const
{
return _decoder_stack;
}
_decoder_stack->get_annotation_subset(annotations, row,
start_sample, end_sample);
if (!annotations.empty()) {
- BOOST_FOREACH(const Annotation &a, annotations)
+ for (const Annotation &a : annotations)
draw_annotation(a, p, get_text_colour(),
annotation_height, left, right,
samples_per_pixel, pixels_offset, y,
}
else
{
- list< shared_ptr<Decoder> >::const_iterator iter =
- stack.begin();
+ auto iter = stack.cbegin();
for (int i = 0; i < (int)stack.size(); i++, iter++) {
shared_ptr<Decoder> dec(*iter);
create_decoder_form(i, dec, parent, form);
QString best_annotation;
int best_width = 0;
- BOOST_FOREACH(const QString &a, annotations) {
+ for (const QString &a : annotations) {
const int w = p.boundingRect(QRectF(), 0, a).width();
if (w <= rect.width() && w > best_width)
best_annotation = a, best_width = w;
// We get the logic data of the first probe in the list.
// This works because we are currently assuming all
// LogicSignals have the same data/snapshot
- BOOST_FOREACH (const shared_ptr<Decoder> &dec, stack)
+ for (const shared_ptr<Decoder> &dec : stack)
if (dec && !dec->channels().empty() &&
((logic_signal = (*dec->channels().begin()).second)) &&
((data = logic_signal->logic_data())))
const vector< shared_ptr<Signal> > sigs = _session.get_signals();
assert(_decoder_stack);
- const map<const srd_channel*,
- shared_ptr<LogicSignal> >::const_iterator probe_iter =
- dec->channels().find(pdch);
+ const auto probe_iter = dec->channels().find(pdch);
QComboBox *selector = new QComboBox(parent);
map<const srd_channel*, shared_ptr<LogicSignal> > probe_map;
const vector< shared_ptr<Signal> > sigs = _session.get_signals();
- BOOST_FOREACH(const ProbeSelector &s, _probe_selectors)
+ for (const ProbeSelector &s : _probe_selectors)
{
if(s._decoder != dec)
break;
(LogicSignal*)s._combo->itemData(
s._combo->currentIndex()).value<void*>();
- BOOST_FOREACH(shared_ptr<Signal> sig, sigs)
+ for (shared_ptr<Signal> sig : sigs)
if(sig.get() == selection) {
probe_map[s._pdch] =
dynamic_pointer_cast<LogicSignal>(sig);
void DecodeTrace::commit_probes()
{
assert(_decoder_stack);
- BOOST_FOREACH(shared_ptr<data::decode::Decoder> dec,
- _decoder_stack->stack())
+ for (shared_ptr<data::decode::Decoder> dec : _decoder_stack->stack())
commit_decoder_probes(dec);
_decoder_stack->begin_decode();
const list< shared_ptr<Decoder> > stack(_decoder_stack->stack());
// Find the decoder in the stack
- list< shared_ptr<Decoder> >::const_iterator iter = stack.begin();
+ auto iter = stack.cbegin();
for(int i = 0; i < index; i++, iter++)
assert(iter != stack.end());