projects
/
pulseview.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (from parent 1:
932bc24
)
Use min/max notification for autoranging of analog signals
author
Soeren Apel
<soeren@apelpie.net>
Wed, 2 Aug 2017 16:23:32 +0000
(18:23 +0200)
committer
Uwe Hermann
<uwe@hermann-uwe.de>
Thu, 3 Aug 2017 11:16:21 +0000
(13:16 +0200)
pv/data/signalbase.cpp
patch
|
blob
|
history
pv/data/signalbase.hpp
patch
|
blob
|
history
pv/views/trace/analogsignal.cpp
patch
|
blob
|
history
pv/views/trace/analogsignal.hpp
patch
|
blob
|
history
diff --git
a/pv/data/signalbase.cpp
b/pv/data/signalbase.cpp
index da05f1079597bb2e708d587bb9f3789594baeb82..e267885d8d214356d6e19692decf19cf7f56d796 100644
(file)
--- a/
pv/data/signalbase.cpp
+++ b/
pv/data/signalbase.cpp
@@
-590,13
+590,12
@@
void SignalBase::on_samples_added(QObject* segment, uint64_t start_sample,
void SignalBase::on_min_max_changed(float min, float max)
{
void SignalBase::on_min_max_changed(float min, float max)
{
- (void)min;
- (void)max;
-
// Restart conversion if one is enabled and uses a calculated threshold
if ((conversion_type_ != NoConversion) &&
(get_current_conversion_preset() == DynamicPreset))
start_conversion(true);
// Restart conversion if one is enabled and uses a calculated threshold
if ((conversion_type_ != NoConversion) &&
(get_current_conversion_preset() == DynamicPreset))
start_conversion(true);
+
+ min_max_changed(min, max);
}
void SignalBase::on_capture_state_changed(int state)
}
void SignalBase::on_capture_state_changed(int state)
diff --git
a/pv/data/signalbase.hpp
b/pv/data/signalbase.hpp
index 16a94bd43b816ce47ac6c7ca067b0611ea19bb93..865f2551662fed2ab137781752c9064191cb698d 100644
(file)
--- a/
pv/data/signalbase.hpp
+++ b/
pv/data/signalbase.hpp
@@
-284,6
+284,8
@@
Q_SIGNALS:
void samples_added(QObject* segment, uint64_t start_sample,
uint64_t end_sample);
void samples_added(QObject* segment, uint64_t start_sample,
uint64_t end_sample);
+ void min_max_changed(float min, float max);
+
private Q_SLOTS:
void on_samples_cleared();
private Q_SLOTS:
void on_samples_cleared();
diff --git
a/pv/views/trace/analogsignal.cpp
b/pv/views/trace/analogsignal.cpp
index 81dd551b91d33b3913ccb53cb7c81b9e2ba12d56..90bf9673336f0da6b419140db785806445eef65b 100644
(file)
--- a/
pv/views/trace/analogsignal.cpp
+++ b/
pv/views/trace/analogsignal.cpp
@@
-105,8
+105,8
@@
AnalogSignal::AnalogSignal(
pv::data::Analog* analog_data =
dynamic_cast<pv::data::Analog*>(data().get());
pv::data::Analog* analog_data =
dynamic_cast<pv::data::Analog*>(data().get());
- connect(analog_data, SIGNAL(
samples_added(QObject*, uint64_t, uint64_
t)),
- this, SLOT(on_
samples_added(
)));
+ connect(analog_data, SIGNAL(
min_max_changed(float, floa
t)),
+ this, SLOT(on_
min_max_changed(float, float
)));
GlobalSettings gs;
div_height_ = gs.value(GlobalSettings::Key_View_DefaultDivHeight).toInt();
GlobalSettings gs;
div_height_ = gs.value(GlobalSettings::Key_View_DefaultDivHeight).toInt();
@@
-861,9
+861,13
@@
void AnalogSignal::populate_popup_form(QWidget *parent, QFormLayout *form)
form->addRow(layout);
}
form->addRow(layout);
}
-void AnalogSignal::on_
samples_added(
)
+void AnalogSignal::on_
min_max_changed(float min, float max
)
{
{
- perform_autoranging(false, false);
+ (void)min;
+ (void)max;
+
+ if (autoranging_)
+ perform_autoranging(false, false);
}
void AnalogSignal::on_pos_vdivs_changed(int vdivs)
}
void AnalogSignal::on_pos_vdivs_changed(int vdivs)
diff --git
a/pv/views/trace/analogsignal.hpp
b/pv/views/trace/analogsignal.hpp
index 24d4a21cacb6dae92aba8a37d85fb39f028ce86f..cf4938a721df410c67cb452e9ba13319c98a96fd 100644
(file)
--- a/
pv/views/trace/analogsignal.hpp
+++ b/
pv/views/trace/analogsignal.hpp
@@
-156,7
+156,7
@@
protected:
void populate_popup_form(QWidget *parent, QFormLayout *form);
private Q_SLOTS:
void populate_popup_form(QWidget *parent, QFormLayout *form);
private Q_SLOTS:
- void on_
samples_added(
);
+ void on_
min_max_changed(float min, float max
);
void on_pos_vdivs_changed(int vdivs);
void on_neg_vdivs_changed(int vdivs);
void on_pos_vdivs_changed(int vdivs);
void on_neg_vdivs_changed(int vdivs);