1 /*========================================================================= 2 * 3 * Copyright Insight Software Consortium 4 * 5 * Licensed under the Apache License, Version 2.0 (the "License"); 6 * you may not use this file except in compliance with the License. 7 * You may obtain a copy of the License at 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0.txt 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, 13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 * See the License for the specific language governing permissions and 15 * limitations under the License. 16 * 17 *=========================================================================*/ 18 #ifndef itkGreenColormapFunction_h 19 #define itkGreenColormapFunction_h 20 21 #include "itkColormapFunction.h" 22 23 namespace itk 24 { 25 namespace Function 26 { 27 /** 28 * \class GreenColormapFunction 29 * \brief Function object which maps a scalar value into an RGB colormap value. 30 * 31 * \image html GreenColormapFunction.png "Green colormap." 32 * \author Nicholas Tustison, Hui Zhang, Gaetan Lehmann, Paul Yushkevich 33 * and James C. Gee 34 * 35 * This code was contributed in the Insight Journal paper: 36 * 37 * "Meeting Andy Warhol Somewhere Over the Rainbow: RGB Colormapping and ITK" 38 * http://www.insight-journal.org/browse/publication/285 39 * https://hdl.handle.net/1926/1452 40 * 41 * \ingroup ITKColormap 42 */ 43 template< typename TScalar, typename TRGBPixel > 44 class ITK_TEMPLATE_EXPORT GreenColormapFunction: 45 public ColormapFunction< TScalar, TRGBPixel > 46 { 47 public: 48 ITK_DISALLOW_COPY_AND_ASSIGN(GreenColormapFunction); 49 50 using Self = GreenColormapFunction; 51 using Superclass = ColormapFunction< TScalar, TRGBPixel >; 52 using Pointer = SmartPointer< Self >; 53 using ConstPointer = SmartPointer< const Self >; 54 55 /** Method for creation through the object factory. */ 56 itkNewMacro(Self); 57 58 using RGBPixelType = typename Superclass::RGBPixelType; 59 using ScalarType = typename Superclass::ScalarType; 60 using RealType = typename Superclass::RealType; 61 62 RGBPixelType operator()(const TScalar &) const override; 63 64 protected: 65 GreenColormapFunction() = default; 66 ~GreenColormapFunction() override = default; 67 }; 68 } // end namespace Function 69 } // end namespace itk 70 71 #ifndef ITK_MANUAL_INSTANTIATION 72 #include "itkGreenColormapFunction.hxx" 73 #endif 74 75 #endif 76