The following commit has been merged in the master branch:
commit f315f3b8cb781458d7c452a87668b36ea2e7fc2b
Author: Andrei Zavada <[email protected]>
Date:   Tue Apr 23 23:27:33 2013 +0300

    clear up display scale calibration

diff --git a/src/ui/sf/sf.cc b/src/ui/sf/sf.cc
index 6f306c1..941330d 100644
--- a/src/ui/sf/sf.cc
+++ b/src/ui/sf/sf.cc
@@ -159,44 +159,48 @@ SScoringFacility (agh::CSubject& J,
                estimate_montage_height();
 
        for ( auto &h : channels ) {
-               if ( not isfinite(h.signal_display_scale) ||
-                    !agh::alg::value_within( h.signal_display_scale, 0., 1e-9) 
)
+               if ( not isfinite(h.signal_display_scale) )
                        h.signal_display_scale =
                                agh::alg::calibrate_display_scale(
                                        h.signal_filtered,
                                        vpagesize() * h.samplerate() * min 
(h.crecording.total_pages(), (size_t)10),
                                        interchannel_gap / 2);
+               agh::alg::ensure_within( h.signal_display_scale, 1e-9, 1e9);
+
                if ( h.type == sigfile::SChannel::TType::eeg ) {
                      // calibrate profile display scales
-                       if ( not isfinite(h.psd.display_scale) ||
-                            !agh::alg::value_within( h.psd.display_scale, 0., 
1e-9) )
+                       if ( not isfinite(h.psd.display_scale) )
                                h.psd.display_scale =
                                        agh::alg::calibrate_display_scale(
                                                
h.psd.course_in_bands[metrics::psd::TBand::delta],
                                                h.psd.course.size(),
                                                interchannel_gap / 4);
-                       if ( not isfinite(h.mc.display_scale) ||
-                            !agh::alg::value_within( h.mc.display_scale, 0., 
1e-9) )
+                       agh::alg::ensure_within( h.psd.display_scale, 1e-9, 
1e9);
+
+                       if ( not isfinite(h.mc.display_scale) )
                                h.mc.display_scale =
                                        agh::alg::calibrate_display_scale(
                                                h.mc.course,
                                                h.mc.course.size(),
                                                interchannel_gap / 4);
-                       if ( not isfinite(h.swu.display_scale) ||
-                            !agh::alg::value_within( h.swu.display_scale, 0., 
1e-9) )
+                       agh::alg::ensure_within( h.mc.display_scale, 1e-9, 1e9);
+
+                       if ( not isfinite(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);
+
                } else if ( h.type == sigfile::SChannel::TType::emg ) {
-                       if ( not isfinite(h.emg_display_scale) ||
-                            !agh::alg::value_within( h.emg_display_scale, 0., 
1e-9) )
+                       if ( not isfinite(h.emg_display_scale) )
                                h.emg_display_scale =
                                        agh::alg::calibrate_display_scale(
                                                h.raw_profile,
                                                h.raw_profile.size(),
                                                interchannel_gap / 4);
+                       agh::alg::value_within( h.emg_display_scale, 1e-9, 1e9);
                }
 
                h._put_selection();

-- 
Sleep experiment manager

_______________________________________________
debian-med-commit mailing list
[email protected]
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/debian-med-commit

Reply via email to