diff layer/SliceLayer.h @ 198:c2ed5014d4ff

* Scale fixes and feature descriptions in slice layer
author Chris Cannam
date Thu, 01 Feb 2007 16:54:42 +0000
parents 6b023411087b
children 45e995ed84d9
line wrap: on
line diff
--- a/layer/SliceLayer.h	Thu Feb 01 14:31:28 2007 +0000
+++ b/layer/SliceLayer.h	Thu Feb 01 16:54:42 2007 +0000
@@ -41,6 +41,8 @@
 
     virtual void paint(View *v, QPainter &paint, QRect rect) const;
 
+    virtual QString getFeatureDescription(View *v, QPoint &) const;
+
     virtual int getVerticalScaleWidth(View *v, QPainter &) const;
     virtual void paintVerticalScale(View *v, QPainter &paint, QRect rect) const;
 
@@ -101,6 +103,9 @@
     void modelAboutToBeDeleted(Model *);
 
 protected:
+    float getXForBin(int bin, int totalBins, float w) const;
+    int getBinForX(float x, int totalBins, float w) const;
+    
     const DenseThreeDimensionalModel *m_sliceableModel;
     QColor                            m_colour;
     int                               m_colourMap;
@@ -112,6 +117,10 @@
     bool                              m_bias;
     float                             m_gain;
     mutable std::vector<int>          m_scalePoints;
+    mutable std::map<View *, int>     m_xorigins;
+    mutable size_t                    m_currentf0;
+    mutable size_t                    m_currentf1;
+    mutable std::vector<float>        m_values;
 };
 
 #endif