• Main Page
  • Related Pages
  • Modules
  • Namespaces
  • Data Structures
  • Files
  • Examples
  • File List
  • Globals

GrayscaleColorMap.h

Go to the documentation of this file.
00001 
00017 #pragma once
00018 
00031 #if defined(GrayscaleColorMap_RECURSES)
00032 #error Recursive header files inclusion detected in GrayscaleColorMap.h
00033 #else // defined(GrayscaleColorMap_RECURSES)
00034 
00035 #define GrayscaleColorMap_RECURSES
00036 
00037 #if !defined GrayscaleColorMap_h
00038 
00039 #define GrayscaleColorMap_h
00040 
00042 // Inclusions
00043 #include <iostream>
00044 #include "DGtal/base/Common.h"
00045 #include "Board/Board.h"
00046 #include "Board/Color.h"
00048 
00049 namespace DGtal
00050 {
00051 
00053   // template class GrayscaleColorMap
00080   template <typename PValueType>
00081   class GrayscaleColorMap
00082   {
00083     
00084   public:
00085     
00086     typedef PValueType ValueType;
00087 
00088     // ----------------------- Standard services ------------------------------
00089   public:
00090 
00097     GrayscaleColorMap( const PValueType & min,
00098                        const PValueType & max );
00099 
00100 
00108     LibBoard::Color operator()( const PValueType & value ) const;
00109       
00113     ~GrayscaleColorMap();
00114 
00119     GrayscaleColorMap ( const GrayscaleColorMap & other );
00120 
00126     GrayscaleColorMap & operator= ( const GrayscaleColorMap & other );
00127 
00128     // ----------------------- Interface --------------------------------------
00129   public:
00130 
00135     void selfDisplay ( std::ostream & out ) const;
00136 
00141     bool isValid() const;
00142 
00148     const PValueType & min() const;
00149 
00155     const PValueType & max() const;
00156 
00157     // ----------------------- Static methods ---------------------------------
00158 
00159 
00169     static LibBoard::Color getColor( const PValueType & min,
00170                                      const PValueType & max,
00171                                      const PValueType & value );
00172     
00173     // ------------------------- Protected Datas ------------------------------
00174   private:
00175 
00176     // ------------------------- Private Datas --------------------------------
00177   private:
00178 
00179     // ------------------------- Hidden services ------------------------------
00180   protected:
00181 
00182     PValueType myMin;           
00183     PValueType myMax;            
00189     GrayscaleColorMap();
00190 
00191     // ------------------------- Internals ------------------------------------
00192   private:
00193 
00194   }; // end of class GrayscaleColorMap
00195 
00196 
00203   template <typename PValueType>
00204   std::ostream&
00205   operator<< ( std::ostream & out, const GrayscaleColorMap<PValueType> & object );
00206   
00207 } // namespace DGtal
00208 
00209 
00211 // Includes inline functions.
00212 #include "DGtal/io/colormaps/GrayscaleColorMap.ih"
00213 
00214 //                                                                           //
00216 
00217 #endif // !defined GrayscaleColorMap_h
00218 
00219 #undef GrayscaleColorMap_RECURSES
00220 #endif // else defined(GrayscaleColorMap_RECURSES)

Generated on Fri Nov 26 2010 15:11:46 for DGtal by  doxygen 1.7.1