X-Git-Url: http://sigrok.org/gitweb/?a=blobdiff_plain;f=pv%2Fviews%2Ftrace%2Fview.cpp;h=2e4d147d2fb6a9949d5d4fcb348f1c3bc92ac448;hb=66a43b4f9cf76853e99e7f5fc2f9df49ec58bd34;hp=a1a163b05aeb649b446a2e19596602fe3b7238dc;hpb=b0773a8aa01735d7220284ab7a3e8b5d02b48e9e;p=pulseview.git diff --git a/pv/views/trace/view.cpp b/pv/views/trace/view.cpp index a1a163b0..2e4d147d 100644 --- a/pv/views/trace/view.cpp +++ b/pv/views/trace/view.cpp @@ -41,27 +41,28 @@ #include -#include "analogsignal.hpp" -#include "header.hpp" -#include "logicsignal.hpp" -#include "ruler.hpp" -#include "signal.hpp" -#include "tracegroup.hpp" -#include "triggermarker.hpp" #include "view.hpp" -#include "viewport.hpp" +#include "pv/globalsettings.hpp" #include "pv/metadata_obj.hpp" +#include "pv/session.hpp" +#include "pv/util.hpp" #include "pv/data/logic.hpp" #include "pv/data/logicsegment.hpp" #include "pv/data/signalbase.hpp" #include "pv/devices/device.hpp" -#include "pv/globalsettings.hpp" -#include "pv/session.hpp" -#include "pv/util.hpp" +#include "pv/views/trace/mathsignal.hpp" +#include "pv/views/trace/analogsignal.hpp" +#include "pv/views/trace/header.hpp" +#include "pv/views/trace/logicsignal.hpp" +#include "pv/views/trace/ruler.hpp" +#include "pv/views/trace/signal.hpp" +#include "pv/views/trace/tracegroup.hpp" +#include "pv/views/trace/triggermarker.hpp" +#include "pv/views/trace/viewport.hpp" #ifdef ENABLE_DECODE -#include "decodetrace.hpp" +#include "pv/views/trace/decodetrace.hpp" #endif using pv::data::SignalBase; @@ -358,7 +359,7 @@ void View::add_signalbase(const shared_ptr signalbase) switch (signalbase->type()) { case SignalBase::LogicChannel: - signal = shared_ptr(new LogicSignal(session_, session_.device(), signalbase)); + signal = shared_ptr(new LogicSignal(session_, signalbase)); break; case SignalBase::AnalogChannel: @@ -366,7 +367,7 @@ void View::add_signalbase(const shared_ptr signalbase) break; case SignalBase::MathChannel: - signal = shared_ptr(new AnalogSignal(session_, signalbase)); + signal = shared_ptr(new MathSignal(session_, signalbase)); break; default: @@ -781,7 +782,7 @@ void View::set_segment_display_mode(Trace::SegmentDisplayMode mode) for (const shared_ptr& signal : signals_) signal->set_segment_display_mode(mode); - uint32_t last_segment = session_.get_segment_count() - 1; + uint32_t last_segment = session_.get_highest_segment_id(); switch (mode) { case Trace::ShowLastSegmentOnly: @@ -919,7 +920,7 @@ vector< shared_ptr > View::get_visible_data() const vector< shared_ptr > visible_data; for (const shared_ptr& sig : signals_) if (sig->enabled()) - visible_data.push_back(sig->data()); + visible_data.push_back(sig->base()->data()); return visible_data; } @@ -933,8 +934,8 @@ pair View::get_time_extents() const return make_pair(0, 0); for (shared_ptr s : signals_) - if (s->data() && (s->data()->segments().size() > 0)) - data.push_back(s->data()); + if (s->base()->data() && (s->base()->data()->segments().size() > 0)) + data.push_back(s->base()->data()); for (const shared_ptr& d : data) { const vector< shared_ptr > segments = d->segments(); @@ -1501,7 +1502,7 @@ void View::determine_time_unit() if (time_unit_ == util::TimeUnit::Samples) { // Check all signals but... for (const shared_ptr& signal : signals_) { - const shared_ptr data = signal->data(); + const shared_ptr data = signal->base()->data(); // ...only check first segment of each const vector< shared_ptr > segments = data->segments();