channel_multiply
[Algorithms and Utility Functions]


Detailed Description

Multiplying unsigned channel values of the same type. Performs scaled multiplication result = a * b / max_value.

Example:

bits8 x=128;
bits8 y=128;
bits8 mul = channel_multiply(x,y);
assert(mul == 64);    // 64 = 128 * 128 / 255


Classes

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 Channel>
channel_traits< Channel >
::value_type 
channel_multiply (Channel a, Channel b)
 A function multiplying two channels. result = a * b / max_value.

Generated on Sat May 2 13:50:17 2009 for Generic Image Library by  doxygen 1.5.6