Modules | Alphabetical List | Class List | Directories | File List | GIL Home Page

# color_convert.hpp File Reference

## Detailed Description

GIL default color space conversions.

Author:
  Lubomir Bourdev and Hailin Jin
  Adobe Systems Incorporated

Date:
  2005-2007
  Last updated on January 30, 2007

Support for fast and simple color conversion. Accurate color conversion using color profiles can be supplied separately in a dedicated module

`#include <functional>`
`#include "gil_config.hpp"`
`#include "channel_algorithm.hpp"`
`#include "pixel.hpp"`
`#include "gray.hpp"`
`#include "rgb.hpp"`
`#include "rgba.hpp"`
`#include "cmyk.hpp"`
`#include "metafunctions.hpp"`
`#include "utilities.hpp"`
`#include "color_base_algorithm.hpp"`

Go to the source code of this file.

## Namespaces

namespace | boost
namespace | boost::gil
namespace | boost::gil::detail

## Classes

struct | default_color_converter_impl
| Color Convertion function object. To be specialized for every src/dst color space. More...
struct | default_color_converter_impl< C, C >
| When the color space is the same, color convertion performs channel depth conversion. More...
struct | rgb_to_luminance_fn
| red * .3 + green * .59 + blue * .11 + .5 More...
struct | default_color_converter_impl< gray_t, rgb_t >
| Gray to RGB. More...
struct | default_color_converter_impl< gray_t, cmyk_t >
| Gray to CMYK. More...
struct | default_color_converter_impl< rgb_t, gray_t >
| RGB to Gray. More...
struct | default_color_converter_impl< rgb_t, cmyk_t >
| RGB to CMYK (not the fastest code in the world). More...
struct | default_color_converter_impl< cmyk_t, rgb_t >
| CMYK to RGB (not the fastest code in the world). More...
struct | default_color_converter_impl< cmyk_t, gray_t >
| CMYK to Gray. More...
struct | default_color_converter_impl< C1, rgba_t >
| Converting any pixel type to RGBA. Note: Supports homogeneous pixels only. More...
struct | default_color_converter_impl< rgba_t, C2 >
| Converting RGBA to any pixel type. Note: Supports homogeneous pixels only. More...
struct | default_color_converter_impl< rgba_t, rgba_t >
| Unfortunately RGBA to RGBA must be explicitly provided - otherwise we get ambiguous specialization error. More...
struct | default_color_converter
| class for color-converting one pixel to another More...

## Functions

template<typename GrayChannel, typename RedChannel, typename GreenChannel, typename BlueChannel>
channel_traits< GrayChannel > ::value_type | rgb_to_luminance (const RedChannel &red, const GreenChannel &green, const BlueChannel &blue)
template<typename Pixel>
channel_type< Pixel >::type | alpha_or_max_impl (const Pixel &p, mpl::true_)
template<typename Pixel>
channel_type< Pixel >::type | alpha_or_max_impl (const Pixel &, mpl::false_)
template<typename Pixel>
channel_type< Pixel >::type | alpha_or_max (const Pixel &p)
template<typename SrcP, typename DstP>
void | color_convert (const SrcP &src, DstP &dst)
| helper function for converting one pixel to another using GIL default color-converters where ScrP models HomogeneousPixelConcept DstP models HomogeneousPixelValueConcept