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

# color_base_algorithm.hpp File Reference

## Detailed Description

pixel related algorithms

Author:
  Lubomir Bourdev and Hailin Jin
  Adobe Systems Incorporated

Date:
  2005-2007
  Last updated on February 16, 2007

`#include <algorithm>`
`#include <boost/type_traits.hpp>`
`#include <boost/utility/enable_if.hpp>`
`#include <boost/mpl/contains.hpp>`
`#include <boost/mpl/at.hpp>`
`#include "gil_config.hpp"`
`#include "gil_concept.hpp"`
`#include "utilities.hpp"`

Go to the source code of this file.

## Namespaces

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

## Classes

struct | size
| Returns an MPL integral type specifying the number of elements in a color base. More...
struct | kth_semantic_element_type
| Specifies the type of the K-th semantic element of a color base. More...
struct | kth_semantic_element_reference_type
| Specifies the return type of the mutable semantic_at_c<K>(color_base);. More...
struct | kth_semantic_element_const_reference_type
| Specifies the return type of the constant semantic_at_c<K>(color_base);. More...
struct | contains_color
| A predicate metafunction determining whether a given color base contains a given color. More...
struct | color_element_type
| Specifies the type of the element associated with a given color tag. More...
struct | color_element_reference_type
| Specifies the return type of the mutable element accessor by color name, get_color(color_base, Color());. More...
struct | color_element_const_reference_type
| Specifies the return type of the constant element accessor by color name, get_color(color_base, Color());. More...
struct | element_type
| Specifies the element type of a homogeneous color base. More...
struct | element_reference_type
| Specifies the return type of the mutable element accessor at_c of a homogeneous color base. More...
struct | element_const_reference_type
| Specifies the return type of the constant element accessor at_c of a homogeneous color base. More...

## Functions

template<int K, typename ColorBase>
disable_if< is_const < ColorBase >, typename kth_semantic_element_reference_type < ColorBase, K >::type >::type | semantic_at_c (ColorBase &p)
| A mutable accessor to the K-th semantic element of a color base.
template<int K, typename ColorBase>
kth_semantic_element_const_reference_type < ColorBase, K >::type | semantic_at_c (const ColorBase &p)
| A constant accessor to the K-th semantic element of a color base.
template<typename ColorBase, typename Color>
color_element_reference_type < ColorBase, Color >::type | get_color (ColorBase &cb, Color=Color())
| Mutable accessor to the element associated with a given color name.
template<typename ColorBase, typename Color>
color_element_const_reference_type < ColorBase, Color >::type | get_color (const ColorBase &cb, Color=Color())
| Constant accessor to the element associated with a given color name.
template<typename Q>
const Q & | mutable_min (const Q &x, const Q &y)
template<typename Q>
Q & | mutable_min (Q &x, Q &y)
template<typename Q>
const Q & | mutable_max (const Q &x, const Q &y)
template<typename Q>
Q & | mutable_max (Q &x, Q &y)
template<typename P>
GIL_FORCEINLINE element_const_reference_type < P >::type | static_max (const P &p)
template<typename P>
GIL_FORCEINLINE element_reference_type< P > ::type | static_max (P &p)
template<typename P>
GIL_FORCEINLINE element_const_reference_type < P >::type | static_min (const P &p)
template<typename P>
GIL_FORCEINLINE element_reference_type< P > ::type | static_min (P &p)
template<typename P1, typename P2>
GIL_FORCEINLINE bool | static_equal (const P1 &p1, const P2 &p2)
template<typename Src, typename Dst>
GIL_FORCEINLINE void | static_copy (const Src &src, Dst &dst)
template<typename P, typename V>
GIL_FORCEINLINE void | static_fill (P &p, const V &v)
template<typename P1, typename Op>
GIL_FORCEINLINE void | static_generate (P1 &dst, Op op)
template<typename Src, typename Dst, typename Op>
GIL_FORCEINLINE Op | static_transform (Src &src, Dst &dst, Op op)
template<typename Src, typename Dst, typename Op>
GIL_FORCEINLINE Op | static_transform (const Src &src, Dst &dst, Op op)
template<typename P2, typename P3, typename Dst, typename Op>
GIL_FORCEINLINE Op | static_transform (P2 &p2, P3 &p3, Dst &dst, Op op)
template<typename P2, typename P3, typename Dst, typename Op>
GIL_FORCEINLINE Op | static_transform (P2 &p2, const P3 &p3, Dst &dst, Op op)
template<typename P2, typename P3, typename Dst, typename Op>
GIL_FORCEINLINE Op | static_transform (const P2 &p2, P3 &p3, Dst &dst, Op op)
template<typename P2, typename P3, typename Dst, typename Op>
GIL_FORCEINLINE Op | static_transform (const P2 &p2, const P3 &p3, Dst &dst, Op op)
template<typename P1, typename Op>
GIL_FORCEINLINE Op | static_for_each (P1 &p1, Op op)
template<typename P1, typename Op>
GIL_FORCEINLINE Op | static_for_each (const P1 &p1, Op op)
template<typename P1, typename P2, typename Op>
GIL_FORCEINLINE Op | static_for_each (P1 &p1, P2 &p2, Op op)
template<typename P1, typename P2, typename Op>
GIL_FORCEINLINE Op | static_for_each (P1 &p1, const P2 &p2, Op op)
template<typename P1, typename P2, typename Op>
GIL_FORCEINLINE Op | static_for_each (const P1 &p1, P2 &p2, Op op)
template<typename P1, typename P2, typename Op>
GIL_FORCEINLINE Op | static_for_each (const P1 &p1, const P2 &p2, Op op)
template<typename P1, typename P2, typename P3, typename Op>
GIL_FORCEINLINE Op | static_for_each (P1 &p1, P2 &p2, P3 &p3, Op op)
template<typename P1, typename P2, typename P3, typename Op>
GIL_FORCEINLINE Op | static_for_each (P1 &p1, P2 &p2, const P3 &p3, Op op)
template<typename P1, typename P2, typename P3, typename Op>
GIL_FORCEINLINE Op | static_for_each (P1 &p1, const P2 &p2, P3 &p3, Op op)
template<typename P1, typename P2, typename P3, typename Op>
GIL_FORCEINLINE Op | static_for_each (P1 &p1, const P2 &p2, const P3 &p3, Op op)
template<typename P1, typename P2, typename P3, typename Op>
GIL_FORCEINLINE Op | static_for_each (const P1 &p1, P2 &p2, P3 &p3, Op op)
template<typename P1, typename P2, typename P3, typename Op>
GIL_FORCEINLINE Op | static_for_each (const P1 &p1, P2 &p2, const P3 &p3, Op op)
template<typename P1, typename P2, typename P3, typename Op>
GIL_FORCEINLINE Op | static_for_each (const P1 &p1, const P2 &p2, P3 &p3, Op op)
template<typename P1, typename P2, typename P3, typename Op>
GIL_FORCEINLINE Op | static_for_each (const P1 &p1, const P2 &p2, const P3 &p3, Op op)