X-Git-Url: https://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fdata%2Fsignalbase.cpp;h=5f95ec337b16d5504000ce02736d29d31f4c924c;hp=46ed87834a455681dbf179f9a7005a6d0be8a435;hb=HEAD;hpb=db51130df74d9188d98e1a3b8073d9d482d6fa60 diff --git a/pv/data/signalbase.cpp b/pv/data/signalbase.cpp index 46ed8783..97f70508 100644 --- a/pv/data/signalbase.cpp +++ b/pv/data/signalbase.cpp @@ -124,6 +124,7 @@ SignalBase::SignalBase(shared_ptr channel, ChannelType channel_ conversion_type_(NoConversion), min_value_(0), max_value_(0), + index_(0), error_message_("") { if (channel_) { @@ -318,15 +319,22 @@ shared_ptr SignalBase::logic_data() const if (!data_) return nullptr; - shared_ptr result = dynamic_pointer_cast(data_); + shared_ptr result; if (((conversion_type_ == A2LConversionByThreshold) || (conversion_type_ == A2LConversionBySchmittTrigger))) result = dynamic_pointer_cast(converted_data_); + else + result = dynamic_pointer_cast(data_); return result; } +shared_ptr SignalBase::data() const +{ + return data_; +} + bool SignalBase::segment_is_complete(uint32_t segment_id) const { bool result = true; @@ -582,7 +590,12 @@ void SignalBase::restore_settings(QSettings &settings) QVariant value = settings.value("color"); // Workaround for Qt QColor serialization bug on OSX - if ((QMetaType::Type)(value.type()) == QMetaType::QColor) +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) + bool is_qcolor = (QMetaType::Type)(value.typeId()) == QMetaType::QColor; +#else + bool is_qcolor = (QMetaType::Type)(value.type()) == QMetaType::QColor; +#endif + if (is_qcolor) set_color(value.value()); else set_color(QColor::fromRgba(value.value())); @@ -715,6 +728,8 @@ void SignalBase::convert_single_segment_range(shared_ptr asegment delete[] lsamples; delete[] asamples; } + + samples_added(lsegment->segment_id(), start_sample, end_sample); } void SignalBase::convert_single_segment(shared_ptr asegment,