diff --git a/DSView/pv/data/analogsnapshot.cpp b/DSView/pv/data/analogsnapshot.cpp index cb8e2f0a..0e5e8296 100644 --- a/DSView/pv/data/analogsnapshot.cpp +++ b/DSView/pv/data/analogsnapshot.cpp @@ -76,6 +76,7 @@ void AnalogSnapshot::init_all() _ring_sample_count = 0; _memory_failed = false; _last_ended = true; + for (unsigned int i = 0; i < _channel_num; i++) { for (unsigned int level = 0; level < ScaleStepCount; level++) { _envelope_levels[i][level].length = 0; @@ -103,7 +104,6 @@ void AnalogSnapshot::clear() free_data(); free_envelop(); init_all(); - _have_data = false; } void AnalogSnapshot::first_payload(const sr_datafeed_analog &analog, uint64_t total_sample_count, GSList *channels) @@ -179,8 +179,6 @@ void AnalogSnapshot::append_payload( // Generate the first mip-map from the data if (analog.num_samples != 0) // guarantee new samples to compute append_payload_to_envelope_levels(); - - _have_data = true; } void AnalogSnapshot::append_data(void *data, uint64_t samples, uint16_t pitch) diff --git a/DSView/pv/data/dsosnapshot.cpp b/DSView/pv/data/dsosnapshot.cpp index 6dcb24f2..69ad0bee 100644 --- a/DSView/pv/data/dsosnapshot.cpp +++ b/DSView/pv/data/dsosnapshot.cpp @@ -99,7 +99,6 @@ void DsoSnapshot::clear() free_data(); free_envelop(); init_all(); - _have_data = false; _envelope_en = false; } @@ -224,8 +223,6 @@ void DsoSnapshot::append_payload(const sr_datafeed_dso &dso) // Generate the first mip-map from the data if (_envelope_en) append_payload_to_envelope_levels(dso.samplerate_tog); - - _have_data = true; } } diff --git a/DSView/pv/data/logicsnapshot.cpp b/DSView/pv/data/logicsnapshot.cpp index 5fdf9a10..f50fd8f0 100644 --- a/DSView/pv/data/logicsnapshot.cpp +++ b/DSView/pv/data/logicsnapshot.cpp @@ -109,7 +109,6 @@ void LogicSnapshot::clear() std::lock_guard lock(_mutex); free_data(); init_all(); - _have_data = false; } void LogicSnapshot::first_payload(const sr_datafeed_logic &logic, uint64_t total_sample_count, GSList *channels, bool able_free) @@ -202,8 +201,6 @@ void LogicSnapshot::append_payload(const sr_datafeed_logic &logic) std::lock_guard lock(_mutex); append_cross_payload(logic); - - _have_data = true; } void LogicSnapshot::append_cross_payload(const sr_datafeed_logic &logic) diff --git a/DSView/pv/data/snapshot.cpp b/DSView/pv/data/snapshot.cpp index 5083e4ba..02669025 100644 --- a/DSView/pv/data/snapshot.cpp +++ b/DSView/pv/data/snapshot.cpp @@ -43,7 +43,6 @@ Snapshot::Snapshot(int unit_size, uint64_t total_sample_count, unsigned int chan _last_ended = true; _unit_bytes = 1; _unit_pitch = 0; - _have_data = false; } Snapshot::~Snapshot() diff --git a/DSView/pv/data/snapshot.h b/DSView/pv/data/snapshot.h index e6f54913..fa7bce4b 100644 --- a/DSView/pv/data/snapshot.h +++ b/DSView/pv/data/snapshot.h @@ -67,7 +67,7 @@ public: } inline bool have_data(){ - return _have_data; + return !empty(); } inline double samplerate(){ @@ -106,7 +106,6 @@ protected: uint16_t _unit_pitch; bool _memory_failed; bool _last_ended; - bool _have_data; double _samplerate; }; diff --git a/DSView/pv/view/dsosignal.cpp b/DSView/pv/view/dsosignal.cpp index 65e0189b..46f6b8be 100644 --- a/DSView/pv/view/dsosignal.cpp +++ b/DSView/pv/view/dsosignal.cpp @@ -521,6 +521,10 @@ QString DsoSignal::get_measure(enum DSO_MEASURE_TYPE type) const QString mNone = "--"; QString mString; + if (_data->empty()){ + return mNone; + } + if (_mValid) { const int hw_offset = get_hw_offset();