Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits > Class Template Reference

#include <itkConvertPixelBuffer.h>

List of all members.


Detailed Description

template<typename InputPixelType, typename OutputPixelType, class OutputConvertTraits>
class itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >

Class to convert blocks of data from one type to another.

ConvertPixelBuffer has a static method Convert(). It is used by itkImageFileReader to convert from an unknown type at run-time to the compile-time template pixel type in itkImageFileReader. To work with complex pixel types like RGB and RGBA a traits class is used. OutputConvertTraits() is the traits class. The default one used is DefaultConvertPixelTraits.

Definition at line 39 of file itkConvertPixelBuffer.h.

Public Types

typedef OutputConvertTraits::ComponentType OutputComponentType

Static Public Member Functions

static void Convert (InputPixelType *inputData, int inputNumberOfComponents, OutputPixelType *outputData, int size)
static void ConvertVectorImage (InputPixelType *inputData, int inputNumberOfComponents, OutputPixelType *outputData, int size)

Static Protected Member Functions

static void ConvertGrayToGray (InputPixelType *inputData, OutputPixelType *outputData, int size)
static void ConvertGrayToRGB (InputPixelType *inputData, OutputPixelType *outputData, int size)
static void ConvertMultiComponentToRGB (InputPixelType *inputData, int inputNumberOfComponents, OutputPixelType *outputData, int size)
static void ConvertRGBAToRGB (InputPixelType *inputData, OutputPixelType *outputData, int size)
static void ConvertRGBToGray (InputPixelType *inputData, OutputPixelType *outputData, int size)
static void ConvertRGBToRGB (InputPixelType *inputData, OutputPixelType *outputData, int size)
static void ConvertGrayToRGBA (InputPixelType *inputData, OutputPixelType *outputData, int size)
static void ConvertMultiComponentToRGBA (InputPixelType *inputData, int inputNumberOfComponents, OutputPixelType *outputData, int size)
static void ConvertRGBAToRGBA (InputPixelType *inputData, OutputPixelType *outputData, int size)
static void ConvertRGBToRGBA (InputPixelType *inputData, OutputPixelType *outputData, int size)
static void ConvertMultiComponentToGray (InputPixelType *inputData, int inputNumberOfComponents, OutputPixelType *outputData, int size)
static void ConvertRGBAToGray (InputPixelType *inputData, OutputPixelType *outputData, int size)


Member Typedef Documentation

template<typename InputPixelType, typename OutputPixelType, class OutputConvertTraits>
typedef OutputConvertTraits::ComponentType itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::OutputComponentType

Determine the output data type.

Definition at line 43 of file itkConvertPixelBuffer.h.


Member Function Documentation

template<typename InputPixelType, typename OutputPixelType, class OutputConvertTraits>
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::Convert ( InputPixelType *  inputData,
int  inputNumberOfComponents,
OutputPixelType *  outputData,
int  size 
) [static]

General method converts from one type to another.

template<typename InputPixelType, typename OutputPixelType, class OutputConvertTraits>
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertGrayToGray ( InputPixelType *  inputData,
OutputPixelType *  outputData,
int  size 
) [static, protected]

Input values are cast to output values.

template<typename InputPixelType, typename OutputPixelType, class OutputConvertTraits>
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertGrayToRGB ( InputPixelType *  inputData,
OutputPixelType *  outputData,
int  size 
) [static, protected]

Each RGB output component is set the the input Gray value.

template<typename InputPixelType, typename OutputPixelType, class OutputConvertTraits>
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertGrayToRGBA ( InputPixelType *  inputData,
OutputPixelType *  outputData,
int  size 
) [static, protected]

Convert to RGBA output.

template<typename InputPixelType, typename OutputPixelType, class OutputConvertTraits>
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertMultiComponentToGray ( InputPixelType *  inputData,
int  inputNumberOfComponents,
OutputPixelType *  outputData,
int  size 
) [static, protected]

template<typename InputPixelType, typename OutputPixelType, class OutputConvertTraits>
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertMultiComponentToRGB ( InputPixelType *  inputData,
int  inputNumberOfComponents,
OutputPixelType *  outputData,
int  size 
) [static, protected]

Conversion depends upon the number of components in the input. If the number of input components is 2, the output components are each set to the first input component attenuated by the second input component. This assumes that a two input pixel represents intensity and alpha. If the number of input components is not 2, the first three output components a are set to the first three input components. The remaining input components are ignored.

template<typename InputPixelType, typename OutputPixelType, class OutputConvertTraits>
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertMultiComponentToRGBA ( InputPixelType *  inputData,
int  inputNumberOfComponents,
OutputPixelType *  outputData,
int  size 
) [static, protected]

Convert to RGBA output.

template<typename InputPixelType, typename OutputPixelType, class OutputConvertTraits>
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertRGBAToGray ( InputPixelType *  inputData,
OutputPixelType *  outputData,
int  size 
) [static, protected]

Weights convert from linear RGB to CIE luminance assuming a modern monitor. Values are attentuated by the Alpha channel. See Charles Poynton's Colour FAQ http://www.inforamp.net/~poynton/notes/colour_and_gamma/ColorFAQ.html

template<typename InputPixelType, typename OutputPixelType, class OutputConvertTraits>
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertRGBAToRGB ( InputPixelType *  inputData,
OutputPixelType *  outputData,
int  size 
) [static, protected]

Input values are attenuated by the Alpha channel.

template<typename InputPixelType, typename OutputPixelType, class OutputConvertTraits>
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertRGBAToRGBA ( InputPixelType *  inputData,
OutputPixelType *  outputData,
int  size 
) [static, protected]

Convert to RGBA output.

template<typename InputPixelType, typename OutputPixelType, class OutputConvertTraits>
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertRGBToGray ( InputPixelType *  inputData,
OutputPixelType *  outputData,
int  size 
) [static, protected]

Weights convert from linear RGB to CIE luminance assuming a modern monitor. See Charles Poynton's Colour FAQ

http://www.inforamp.net/~poynton/notes/colour_and_gamma/ColorFAQ.html

template<typename InputPixelType, typename OutputPixelType, class OutputConvertTraits>
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertRGBToRGB ( InputPixelType *  inputData,
OutputPixelType *  outputData,
int  size 
) [static, protected]

Input values are cast component by component to output values.

template<typename InputPixelType, typename OutputPixelType, class OutputConvertTraits>
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertRGBToRGBA ( InputPixelType *  inputData,
OutputPixelType *  outputData,
int  size 
) [static, protected]

Convert to RGBA output.

template<typename InputPixelType, typename OutputPixelType, class OutputConvertTraits>
static void itk::ConvertPixelBuffer< InputPixelType, OutputPixelType, OutputConvertTraits >::ConvertVectorImage ( InputPixelType *  inputData,
int  inputNumberOfComponents,
OutputPixelType *  outputData,
int  size 
) [static]


The documentation for this class was generated from the following file:
Generated at Mon Mar 12 05:49:40 2007 for ITK by doxygen 1.5.1 written by Dimitri van Heesch, © 1997-2000