[med-svn] [aghermann] 16/24: sf: ensure diaplay scales are good as loaded/computed
andrei zavada
hmmr-guest at moszumanska.debian.org
Mon Jun 15 01:48:26 UTC 2015
This is an automated email from the git hooks/post-receive script.
hmmr-guest pushed a commit to branch WIP
in repository aghermann.
commit 02c96539c4de928b61a6d39fead6a674e7f47208
Author: Andrei Zavada <hmmr at ra>
Date: Sun Jun 14 22:22:44 2015 +0300
sf: ensure diaplay scales are good as loaded/computed
---
upstream/src/aghermann/ui/sf/sf.cc | 22 ++++++++++++++--------
1 file changed, 14 insertions(+), 8 deletions(-)
diff --git a/upstream/src/aghermann/ui/sf/sf.cc b/upstream/src/aghermann/ui/sf/sf.cc
index 73595c7..6a27404 100644
--- a/upstream/src/aghermann/ui/sf/sf.cc
+++ b/upstream/src/aghermann/ui/sf/sf.cc
@@ -169,40 +169,46 @@ SScoringFacility (agh::CSubject& J,
if ( !isfinite(da_ht) )
estimate_montage_height();
+ // take care scales are good
+ const double scale_min = 1e-9, scale_max = 1e9;
+ auto sane_scale = [&scale_min, &scale_max] (const double& v) -> bool
+ {
+ return isfinite(v) and agh::alg::value_within(v, scale_min, scale_max) == v;
+ };
for ( auto &h : channels ) {
- if ( not isfinite(h.signal_display_scale) )
+ if ( not sane_scale(h.signal_display_scale) )
h.signal_display_scale =
agh::alg::calibrate_display_scale(
h.signal_filtered,
vpagesize() * h.samplerate() * min (h.crecording.full_pages(), (size_t)10),
interchannel_gap / 2);
- agh::alg::ensure_within( h.signal_display_scale, 1e-6, 1e6);
+ agh::alg::ensure_within( h.signal_display_scale, scale_min, scale_max);
if ( h.type() == sigfile::SChannel::TType::eeg ) {
// calibrate profile display scales
- if ( not isfinite(h.psd.display_scale) )
+ if ( not sane_scale(h.psd.display_scale) )
h.psd.display_scale =
agh::alg::calibrate_display_scale(
h.psd.course_in_bands[metrics::TBand::delta],
h.psd.course.size(),
interchannel_gap / 4);
- agh::alg::ensure_within( h.psd.display_scale, 1e-9, 1e9);
+ agh::alg::ensure_within( h.psd.display_scale, scale_min, scale_max);
- if ( not isfinite(h.mc.display_scale) )
+ if ( not sane_scale(h.mc.display_scale) )
h.mc.display_scale =
agh::alg::calibrate_display_scale(
h.mc.course,
h.mc.course.size(),
interchannel_gap / 4);
- agh::alg::ensure_within( h.mc.display_scale, 1e-9, 1e9);
+ agh::alg::ensure_within( h.mc.display_scale, scale_min, scale_max);
- if ( not isfinite(h.swu.display_scale) )
+ if ( not sane_scale(h.swu.display_scale) )
h.swu.display_scale =
agh::alg::calibrate_display_scale(
h.swu.course,
h.swu.course.size(),
interchannel_gap / 4);
- agh::alg::ensure_within( h.swu.display_scale, 1e-9, 1e9);
+ agh::alg::ensure_within( h.swu.display_scale, scale_min, scale_max);
}
h._put_selection();
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-med/aghermann.git
More information about the debian-med-commit
mailing list