projects
/
pulseview.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix #1182 by only considering enabled channels
[pulseview.git]
/
pv
/
data
/
decodesignal.cpp
diff --git
a/pv/data/decodesignal.cpp
b/pv/data/decodesignal.cpp
index d60c53e48b6e8df403d7350deaf091d94e866740..fbbdd793952d4ffd578532944ae4cab9c66ecfe5 100644
(file)
--- a/
pv/data/decodesignal.cpp
+++ b/
pv/data/decodesignal.cpp
@@
-280,6
+280,9
@@
void DecodeSignal::auto_assign_signals(const shared_ptr<Decoder> dec)
continue;
for (shared_ptr<data::SignalBase> s : session_.signalbases()) {
continue;
for (shared_ptr<data::SignalBase> s : session_.signalbases()) {
+ if (!s->enabled())
+ continue;
+
const QString ch_name = ch.name.toLower();
const QString s_name = s->name().toLower();
const QString ch_name = ch.name.toLower();
const QString s_name = s->name().toLower();
@@
-1020,9
+1023,12
@@
void DecodeSignal::start_srd_session()
terminate_srd_session();
// Metadata is cleared also, so re-set it
terminate_srd_session();
// Metadata is cleared also, so re-set it
+ uint64_t samplerate = 0;
if (segments_.size() > 0)
if (segments_.size() > 0)
+ samplerate = segments_.at(current_segment_id_).samplerate;
+ if (samplerate)
srd_session_metadata_set(srd_session_, SRD_CONF_SAMPLERATE,
srd_session_metadata_set(srd_session_, SRD_CONF_SAMPLERATE,
- g_variant_new_uint64(s
egments_.at(current_segment_id_).s
amplerate));
+ g_variant_new_uint64(samplerate));
for (const shared_ptr<decode::Decoder> &dec : stack_)
dec->apply_all_options();
srd_session_start(srd_session_);
for (const shared_ptr<decode::Decoder> &dec : stack_)
dec->apply_all_options();
srd_session_start(srd_session_);
@@
-1077,9
+1083,12
@@
void DecodeSignal::terminate_srd_session()
srd_session_terminate_reset(srd_session_);
// Metadata is cleared also, so re-set it
srd_session_terminate_reset(srd_session_);
// Metadata is cleared also, so re-set it
+ uint64_t samplerate = 0;
if (segments_.size() > 0)
if (segments_.size() > 0)
+ samplerate = segments_.at(current_segment_id_).samplerate;
+ if (samplerate)
srd_session_metadata_set(srd_session_, SRD_CONF_SAMPLERATE,
srd_session_metadata_set(srd_session_, SRD_CONF_SAMPLERATE,
- g_variant_new_uint64(s
egments_.at(current_segment_id_).s
amplerate));
+ g_variant_new_uint64(samplerate));
for (const shared_ptr<decode::Decoder> &dec : stack_)
dec->apply_all_options();
}
for (const shared_ptr<decode::Decoder> &dec : stack_)
dec->apply_all_options();
}