Modules | Alphabetical List | Class List | Directories | File List | GIL Home Page # channel_algorithm.hpp File Reference ## Detailed Description Channel algorithms. Author: Lubomir Bourdev and Hailin Jin Adobe Systems Incorporated Date: 2005-2007 Last updated on May 6, 2007 Definitions of standard GIL 8-bit, 16-bit, 32-bit channels `#include "gil_config.hpp"` `#include "channel.hpp"` `#include <boost/mpl/less.hpp>` `#include <boost/mpl/integral_c.hpp>` `#include <boost/mpl/greater.hpp>` `#include <boost/type_traits.hpp>` Go to the source code of this file.
## Namespaces
namespace | boost
namespace | boost::gil
namespace | boost::gil::detail
## Classes
struct | channel_converter_unsigned< T, T >
| Converting a channel to itself - identity operation. More...
struct | channel_converter_unsigned_impl
| This is the default implementation. Performance specializatons are provided. More...
struct | channel_converter_unsigned< bits32f, DstChannelV >
struct | channel_converter_unsigned< bits32, bits32f >
| 32 bit <-> float channel conversion More...
struct | channel_converter_unsigned< bits32f, bits32 >
| 32 bit <-> float channel conversion More...
struct | channel_converter
| A unary function object converting between channel types. More...
struct | default_channel_converter
| Same as channel_converter, except it takes the destination channel by reference, which allows us to move the templates from the class level to the method level. This is important when invoking it on heterogeneous pixels. More...
struct | channel_multiplier_unsigned
| This is the default implementation. Performance specializatons are provided. More...
struct | channel_multiplier_unsigned< bits8 >
| Specialization of channel_multiply for 8-bit unsigned channels. More...
struct | channel_multiplier_unsigned< bits16 >
| Specialization of channel_multiply for 16-bit unsigned channels. More...
struct | channel_multiplier_unsigned< bits32f >
| Specialization of channel_multiply for float 0..1 channels. More...
struct | channel_multiplier
| A function object to multiply two channels. result = a * b / max_value. More...
## Functions
template<typename DstChannel, typename SrcChannel>
channel_traits< DstChannel > ::value_type | channel_convert (SrcChannel src)
| Converting from one channel type to another.
uint32_t | div255 (uint32_t in)
uint32_t | div32768 (uint32_t in)
template<typename Channel>
channel_traits< Channel > ::value_type | channel_multiply (Channel a, Channel b)
| A function multiplying two channels. result = a * b / max_value.
template<typename Channel>
channel_traits< Channel > ::value_type | channel_invert (Channel x)
| Default implementation. Provide overloads for performance.