00001
00002
00014 #ifndef _BinToColorMap_H_
00015 #define _BinToColorMap_H_
00016
00017 #include "BinToColor.h"
00018
00019 namespace hippodraw {
00020
00029 class MDL_HIPPOPLOT_API BinToColorMap : public BinToColor
00030 {
00031
00032 private:
00033
00035 double m_gamma;
00036
00039 void calcGamma ( );
00040
00041 protected:
00042
00044 std::vector < int > m_reds;
00045
00047 std::vector < int > m_greens;
00048
00050 std::vector < int > m_blues;
00051
00054 BinToColorMap ( const char * name );
00055
00058 BinToColorMap ( const std::string &);
00059
00060 public:
00061
00063 BinToColorMap ( const BinToColorMap & bin_to_color );
00064
00066 virtual ~BinToColorMap();
00067
00069 virtual BinToColor * clone () const = 0;
00070
00072 bool hasControlPoints ( ) const;
00073
00074 virtual void setControlPoints ( const std::vector < double> & points );
00075
00078 const std::string & name () const;
00079
00083 virtual void doubleToColor ( double value, Color & color ) const;
00084
00085
00086 };
00087
00088 }
00089
00090 #endif // _BinToColor_H_