diff layer/SpectrogramLayer.h @ 719:67e6d518ac27

Bodge in Matthias's suggested normalise-to-log as an option in spectrogram and colour 3d plot layers (not wired into gui)
author Chris Cannam
date Tue, 28 Jan 2014 17:37:42 +0000
parents 0dba6a391760
children 1d526ba11a24
line wrap: on
line diff
--- a/layer/SpectrogramLayer.h	Wed Dec 04 14:00:27 2013 +0000
+++ b/layer/SpectrogramLayer.h	Tue Jan 28 17:37:42 2014 +0000
@@ -170,13 +170,27 @@
      */
     void setBinDisplay(BinDisplay);
     BinDisplay getBinDisplay() const;
-
+ 
+    /**
+     * Normalize each column to its maximum value, independent of its
+     * neighbours.
+     */
     void setNormalizeColumns(bool n);
     bool getNormalizeColumns() const;
 
+    /**
+     * Normalize each value against the maximum in the visible region.
+     */
     void setNormalizeVisibleArea(bool n);
     bool getNormalizeVisibleArea() const;
 
+    /**
+     * Normalize each column to its maximum value, and then scale by
+     * the log of the (absolute) maximum value.
+     */
+    void setNormalizeHybrid(bool n);
+    bool getNormalizeHybrid() const;
+    
     void setColourMap(int map);
     int getColourMap() const;
 
@@ -260,6 +274,7 @@
     BinDisplay          m_binDisplay;
     bool                m_normalizeColumns;
     bool                m_normalizeVisibleArea;
+    bool                m_normalizeHybrid;
     int                 m_lastEmittedZoomStep;
     bool                m_synchronous;
 
@@ -320,7 +335,6 @@
     void rotatePalette(int distance);
 
     unsigned char getDisplayValue(View *v, float input) const;
-    float getInputForDisplayValue(unsigned char uc) const;
 
     int getColourScaleWidth(QPainter &) const;