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

# Class List

Here are the classes, structs, unions and interfaces with brief descriptions:

alpha_t | Alpha
any_image | Represents a run-time specified image. Note it does NOT model ImageConcept
any_image_view | Represents a run-time specified image view. Models HasDynamicXStepTypeConcept, HasDynamicYStepTypeConcept, Note that this class does NOT model ImageViewConcept
Assignable |

binary_operation_obj

A generic binary operation on views

Use this class as a convenience superclass when defining an operation for any image views. Many operations have different behavior when the two views are compatible. This class checks for compatibility and invokes apply_compatible(V1,V2) or apply_incompatible(V1,V2) of the subclass. You must provide apply_compatible(V1,V2) method in your subclass, but apply_incompatible(V1,V2) is not required and the default throws std::bad_cast

bit_aligned_image1_type | Returns the type of a single-channel bit-aligned image given the bit size of its channel and its layout
bit_aligned_image2_type | Returns the type of a two channel bit-aligned image given the bit size of its channels and its layout
bit_aligned_image3_type | Returns the type of a three channel bit-aligned image given the bit size of its channels and its layout
bit_aligned_image4_type | Returns the type of a four channel bit-aligned image given the bit size of its channels and its layout
bit_aligned_image5_type | Returns the type of a five channel bit-aligned image given the bit size of its channels and its layout
bit_aligned_image_type | Returns the type of a packed image whose pixels may not be byte aligned. For example, an "rgb222" image is bit-aligned because its pixel spans six bits
bit_aligned_pixel_iterator | An iterator over non-byte-aligned pixels. Models PixelIteratorConcept, PixelBasedConcept, MemoryBasedIteratorConcept, HasDynamicXStepTypeConcept
bit_aligned_pixel_reference | Heterogeneous pixel reference corresponding to non-byte-aligned bit range. Models ColorBaseConcept, PixelConcept, PixelBasedConcept
black_t | Black
blue_t | Blue
byte_to_memunit |
channel_converter | A unary function object converting between channel types
channel_converter_unsigned< bits32, bits32f > | 32 bit <-> float channel conversion
channel_converter_unsigned< bits32f, bits32 > | 32 bit <-> float channel conversion
channel_converter_unsigned< bits32f, DstChannelV > |
channel_converter_unsigned< T, T > | Converting a channel to itself - identity operation
channel_converter_unsigned_impl | This is the default implementation. Performance specializatons are provided
channel_mapping_type< planar_pixel_reference< ChannelReference, ColorSpace > > | Specifies the color space type of a planar pixel reference. Required by PixelBasedConcept
channel_multiplier | A function object to multiply two channels. result = a * b / max_value
channel_multiplier_unsigned | This is the default implementation. Performance specializatons are provided
channel_multiplier_unsigned< bits16 > | Specialization of channel_multiply for 16-bit unsigned channels
channel_multiplier_unsigned< bits32f > | Specialization of channel_multiply for float 0..1 channels
channel_multiplier_unsigned< bits8 > | Specialization of channel_multiply for 8-bit unsigned channels
channel_traits | Traits for channels. Contains the following members:
channel_type< planar_pixel_reference< ChannelReference, ColorSpace > > | Specifies the color space type of a planar pixel reference. Required by HomogeneousPixelBasedConcept
ChannelConcept | A channel is the building block of a color. Color is defined as a mixture of primary colors and a channel defines the degree to which each primary color is used in the mixture
ChannelConvertibleConcept | A channel is convertible to another one if the `channel_convert` algorithm is defined for the two channels
ChannelMappingConcept | Channel mapping concept
channels_are_compatible | Predicate metafunction returning whether two channels are compatible Channels are considered compatible if their value types (ignoring constness and references) are the same
ChannelsCompatibleConcept | Channels are compatible if their associated value types (ignoring constness and references) are the same
ChannelValueConcept | A channel that supports default construction
color_convert_deref_fn | Function object that given a source pixel, returns it converted to a given color space and channel depth. Models: PixelDereferenceAdaptorConcept
color_converted_view_type | Returns the type of a view that does color conversion upon dereferencing its pixels
color_converted_view_type< any_image_view< ViewTypes >, DstP > | Returns the type of a runtime-specified view, color-converted to a given pixel type with the default coor converter
color_converted_view_type< any_image_view< ViewTypes >, DstP, CC > | Returns the type of a runtime-specified view, color-converted to a given pixel type with user specified color converter
color_element_const_reference_type | Specifies the return type of the constant element accessor by color name, get_color(color_base, Color());
color_element_reference_type | Specifies the return type of the mutable element accessor by color name, get_color(color_base, Color());
color_element_type | Specifies the type of the element associated with a given color tag
color_space_type< planar_pixel_reference< ChannelReference, ColorSpace > > | Specifies the color space type of a planar pixel reference. Required by PixelBasedConcept
ColorBaseConcept | A color base is a container of color elements (such as channels, channel references or channel pointers)
ColorBasesCompatibleConcept | Two color bases are compatible if they have the same color space and their elements are compatible, semantic-pairwise
ColorBaseValueConcept | Color base that also has a default-constructor. Refines Regular
ColorSpaceConcept | Color space type concept
ColorSpacesCompatibleConcept | Two color spaces are compatible if they are the same
contains_color | A predicate metafunction determining whether a given color base contains a given color
copier_n |
copier_n< I, iterator_from_2d< OL > > | Destination range is delimited by image iterators
copier_n< iterator_from_2d< IL >, iterator_from_2d< OL > > | Both source and destination ranges are delimited by image iterators
copier_n< iterator_from_2d< IL >, O > | Source range is delimited by image iterators
CopyConstructible |
cyan_t | Cyan
dec | Operator-- wrapped in a function object
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
default_color_converter | Class for color-converting one pixel to another
default_color_converter_impl | Color Convertion function object. To be specialized for every src/dst color space
default_color_converter_impl< C, C > | When the color space is the same, color convertion performs channel depth conversion
default_color_converter_impl< C1, rgba_t > | Converting any pixel type to RGBA. Note: Supports homogeneous pixels only
default_color_converter_impl< cmyk_t, gray_t > | CMYK to Gray
default_color_converter_impl< cmyk_t, rgb_t > | CMYK to RGB (not the fastest code in the world)
default_color_converter_impl< gray_t, cmyk_t > | Gray to CMYK
default_color_converter_impl< gray_t, rgb_t > | Gray to RGB
default_color_converter_impl< rgb_t, cmyk_t > | RGB to CMYK (not the fastest code in the world)
default_color_converter_impl< rgb_t, gray_t > | RGB to Gray
default_color_converter_impl< rgba_t, C2 > | Converting RGBA to any pixel type. Note: Supports homogeneous pixels only
default_color_converter_impl< rgba_t, rgba_t > | Unfortunately RGBA to RGBA must be explicitly provided - otherwise we get ambiguous specialization error
DefaultConstructible |
deref_base | Helper base class for pixel dereference adaptors
deref_compose | Composes two dereference function objects. Similar to std::unary_compose but needs to pull some typedefs from the component types. Models: PixelDereferenceAdaptorConcept
dereference_iterator_adaptor | An adaptor over an existing iterator that provides for custom filter on dereferencing the object. Models: IteratorAdaptorConcept, PixelIteratorConcept
derived_image_type | Constructs a homogeneous image type from a source image type by changing some of the properties. Use use_default for the properties of the source image that you want to keep
derived_iterator_type | Constructs a pixel iterator type from a source pixel iterator type by changing some of the properties. Use use_default for the properties of the source view that you want to keep
derived_pixel_reference_type | Constructs a pixel reference type from a source pixel reference type by changing some of the properties. Use use_default for the properties of the source view that you want to keep
derived_view_type | Constructs an image view type from a source view type by changing some of the properties. Use use_default for the properties of the source view that you want to keep
devicen_color_t | Unnamed color
devicen_layout_t | Unnamed color layout of up to five channels
devicen_t< 1 > | Unnamed color space of one channel
devicen_t< 2 > | Unnamed color space of two channels
devicen_t< 3 > | Unnamed color space of three channels
devicen_t< 4 > | Unnamed color space of four channels
devicen_t< 5 > | Unnamed color space of five channels
dynamic_xy_step_transposed_type | Returns the type of a transposed view that has a dynamic step along both X and Y
dynamic_xy_step_type | Returns the type of a view that has a dynamic step along both X and Y
element_const_reference_type | Specifies the return type of the constant element accessor at_c of a homogeneous color base
element_reference_type | Specifies the return type of the mutable element accessor at_c of a homogeneous color base
element_type | Specifies the element type of a homogeneous color base
equal_n_fn< boost::gil::iterator_from_2d< Loc >, I2 > | Source range is delimited by image iterators
equal_n_fn< boost::gil::iterator_from_2d< Loc1 >, boost::gil::iterator_from_2d< Loc2 > > | Both source and destination ranges are delimited by image iterators
equal_n_fn< const pixel< T, Cs > *, const pixel< T, Cs > * > |
equal_n_fn< I1, boost::gil::iterator_from_2d< Loc > > | Destination range is delimited by image iterators
equal_n_fn< planar_pixel_iterator< IC, Cs >, planar_pixel_iterator< IC, Cs > > |
EqualityComparable |
gray_color_t | Gray
green_t | Green
HasDynamicXStepTypeConcept | Concept for iterators, locators and views that can define a type just like the given iterator/locator/view, except it supports runtime specified step along the X navigation
HasDynamicYStepTypeConcept | Concept for locators and views that can define a type just like the given locator or view, except it supports runtime specified step along the Y navigation
HasTransposedTypeConcept | Concept for locators and views that can define a type just like the given locator or view, except X and Y is swapped
homogeneous_color_base< Element, Layout, 1 > | A homogeneous color base holding one color element. Models HomogeneousColorBaseConcept or HomogeneousColorBaseValueConcept
homogeneous_color_base< Element, Layout, 2 > | A homogeneous color base holding two color elements. Models HomogeneousColorBaseConcept or HomogeneousColorBaseValueConcept
homogeneous_color_base< Element, Layout, 3 > | A homogeneous color base holding three color elements. Models HomogeneousColorBaseConcept or HomogeneousColorBaseValueConcept
homogeneous_color_base< Element, Layout, 4 > | A homogeneous color base holding four color elements. Models HomogeneousColorBaseConcept or HomogeneousColorBaseValueConcept
homogeneous_color_base< Element, Layout, 5 > | A homogeneous color base holding five color elements. Models HomogeneousColorBaseConcept or HomogeneousColorBaseValueConcept
HomogeneousColorBaseConcept | Color base whose elements all have the same type
HomogeneousColorBaseValueConcept | Homogeneous color base that also has a default constructor. Refines Regular
HomogeneousPixelBasedConcept | Concept for homogeneous pixel-based GIL constructs
HomogeneousPixelConcept | Homogeneous pixel concept
HomogeneousPixelValueConcept | Homogeneous pixel concept that is a Regular type
identity | Identity taken from SGI STL
image | Container interface over image view. Models ImageConcept, PixelBasedConcept
image_is_basic | Basic images must use basic views and std::allocator of char
image_type | Returns the type of a homogeneous image given the channel type, layout, and whether it operates on planar data
image_view | A lightweight object that interprets memory as a 2D array of pixels. Models ImageViewConcept,PixelBasedConcept,HasDynamicXStepTypeConcept,HasDynamicYStepTypeConcept,HasTransposedTypeConcept
ImageConcept | 2-dimensional image whose value type models PixelValueConcept
ImageViewConcept | GIL's 2-dimensional view over immutable GIL pixels
inc | Operator++ wrapped in a function object
is_iterator_adaptor | Metafunction predicate determining whether the given iterator is a plain one or an adaptor over another iterator. Examples of adaptors are the step iterator and the dereference iterator adaptor
is_pixel< bit_aligned_pixel_reference< B, C, L, M > > | Metafunction predicate that flags bit_aligned_pixel_reference as a model of PixelConcept. Required by PixelConcept
is_pixel< planar_pixel_reference< ChannelReference, ColorSpace > > | Metafunction predicate that flags planar_pixel_reference as a model of PixelConcept. Required by PixelConcept
is_planar< planar_pixel_reference< ChannelReference, ColorSpace > > | Specifies that planar_pixel_reference represents a planar construct. Required by PixelBasedConcept
iterator_add_deref | Returns the type (and creates an instance) of an iterator that invokes the given dereference adaptor upon dereferencing
iterator_add_deref< dereference_iterator_adaptor< Iterator, PREV_DEREF >, Deref > | For dereference iterator adaptors, compose the new function object after the old one
iterator_from_2d | Provides 1D random-access navigation to the pixels of the image. Models: PixelIteratorConcept, PixelBasedConcept, HasDynamicXStepTypeConcept
iterator_is_basic | Determines if a given pixel iterator is basic Basic iterators must use gil::pixel (if interleaved), gil::planar_pixel_iterator (if planar) and gil::memory_based_step_iterator (if step). They must use the standard constness rules
iterator_is_mutable | Metafunction predicate returning whether the given iterator allows for changing its values
iterator_is_step | Determines if the given iterator has a step that could be set dynamically
iterator_type | Returns the type of a homogeneous iterator given the channel type, layout, whether it operates on planar data, whether it is a step iterator, and whether it is mutable
iterator_type_from_pixel | Returns the type of a pixel iterator given the pixel type, whether it operates on planar data, whether it is a step iterator, and whether it is mutable
IteratorAdaptorConcept | Iterator adaptor is a forward iterator adapting another forward iterator
jpeg_read_support | Determines whether the given view type is supported for reading
jpeg_write_support | Determines whether the given view type is supported for writing
kth_channel_deref_fn | Function object that returns a grayscale reference of the K-th channel (specified as a template parameter) of a given reference. Models: PixelDereferenceAdaptorConcept. If the input is a pixel value or constant reference, the function object is immutable. Otherwise it is mutable (and returns non-const reference to the k-th channel)

kth_channel_view_type

Given a source image view type View, returns the type of an image view over a given channel of View.

If the channels in the source view are adjacent in memory (such as planar non-step view or single-channel view) then the return view is a single-channel non-step view. If the channels are non-adjacent (interleaved and/or step view) then the return view is a single-channel step view

kth_semantic_element_const_reference_type | Specifies the return type of the constant semantic_at_c<K>(color_base);
kth_semantic_element_reference_type | Specifies the return type of the mutable semantic_at_c<K>(color_base);
kth_semantic_element_type | Specifies the type of the K-th semantic element of a color base
layout | Represents a color space and ordering of channels in memory
locator_is_basic | Determines if a given locator is basic. A basic locator is memory-based and has basic x_iterator and y_iterator
locator_is_mutable | Determines if the given locator is mutable (i.e. its pixels can be changed)
locator_is_step_in_x | Determines if the given locator has a horizontal step that could be set dynamically
locator_is_step_in_y | Determines if the given locator has a vertical step that could be set dynamically
locator_type | Returns the type of a homogeneous locator given the channel type, layout, whether it operates on planar data and whether it has a step horizontally
magenta_t | Magenta
memory_based_2d_locator | Memory-based pixel locator. Models: PixelLocatorConcept,HasDynamicXStepTypeConcept,HasDynamicYStepTypeConcept,HasTransposedTypeConcept The class takes a step iterator as a parameter. The step iterator provides navigation along the vertical axis while its base iterator provides horizontal navigation
memory_based_step_iterator | Iterator with dynamically specified step in memory units (bytes or bits). Models StepIteratorConcept, IteratorAdaptorConcept, MemoryBasedIteratorConcept, PixelIteratorConcept, HasDynamicXStepTypeConcept
MemoryBasedIteratorConcept | Concept of a random-access iterator that can be advanced in memory units (bytes or bits)
memunit_step_fn | Function object that returns the memory unit distance between two iterators and advances a given iterator a given number of mem units (bytes or bits)
Metafunction |
MutableChannelConcept | A channel that allows for modifying its value
MutableColorBaseConcept | Color base which allows for modifying its elements
MutableHomogeneousColorBaseConcept | Homogeneous color base that allows for modifying its elements
MutableHomogeneousPixelConcept | Homogeneous pixel concept that allows for changing its channels
MutableImageViewConcept | GIL's 2-dimensional view over mutable GIL pixels
MutableIteratorAdaptorConcept | Iterator adaptor that is mutable
MutablePixelConcept | Pixel concept that allows for changing its channels
MutablePixelIteratorConcept | Pixel iterator that allows for changing its pixel
MutablePixelLocatorConcept | GIL's 2-dimensional locator over mutable GIL pixels
MutableRandomAccess2DImageViewConcept | 2-dimensional view over mutable values
MutableRandomAccess2DLocatorConcept | 2-dimensional locator over mutable pixels
MutableRandomAccessNDImageViewConcept | N-dimensional view over mutable values
MutableRandomAccessNDLocatorConcept | N-dimensional locator over mutable pixels
MutableStepIteratorConcept | Step iterator that allows for modifying its current value
nth_channel_deref_fn | Function object that returns a grayscale reference of the N-th channel of a given reference. Models: PixelDereferenceAdaptorConcept. If the input is a pixel value or constant reference, the function object is immutable. Otherwise it is mutable (and returns non-const reference to the n-th channel)

nth_channel_view_type

Given a source image view type View, returns the type of an image view over a single channel of View

If the channels in the source view are adjacent in memory (such as planar non-step view or single-channel view) then the return view is a single-channel non-step view. If the channels are non-adjacent (interleaved and/or step view) then the return view is a single-channel step view

nth_channel_view_type< any_image_view< ViewTypes > > | Given a runtime source image view, returns the type of a runtime image view over a single channel of the source view
num_channels | Returns the number of channels of a pixel-based GIL construct
packed_channel_reference< BitField, FirstBit, NumBits, false > | A constant subbyte channel reference whose bit offset is fixed at compile time. Models ChannelConcept
packed_channel_reference< BitField, FirstBit, NumBits, true > | A mutable subbyte channel reference whose bit offset is fixed at compile time. Models ChannelConcept
packed_channel_value | The value of a subbyte channel. Models: ChannelValueConcept
packed_dynamic_channel_reference< BitField, NumBits, false > | Models a constant subbyte channel reference whose bit offset is a runtime parameter. Models ChannelConcept Same as packed_channel_reference, except that the offset is a runtime parameter
packed_dynamic_channel_reference< BitField, NumBits, true > | Models a mutable subbyte channel reference whose bit offset is a runtime parameter. Models ChannelConcept Same as packed_channel_reference, except that the offset is a runtime parameter
packed_image1_type | Returns the type of a single-channel image given its bitfield type, the bit size of its channel and its layout
packed_image2_type | Returns the type of a two channel image given its bitfield type, the bit size of its channels and its layout
packed_image3_type | Returns the type of a three channel image given its bitfield type, the bit size of its channels and its layout
packed_image4_type | Returns the type of a four channel image given its bitfield type, the bit size of its channels and its layout
packed_image5_type | Returns the type of a five channel image given its bitfield type, the bit size of its channels and its layout
packed_image_type | Returns the type of an interleaved packed image: an image whose channels may not be byte-aligned, but whose pixels are byte aligned
packed_pixel | Heterogeneous pixel value whose channel references can be constructed from the pixel bitfield and their index. Models ColorBaseValueConcept, PixelValueConcept, PixelBasedConcept Typical use for this is a model of a packed pixel (like 565 RGB)
packed_pixel_type | Returns the type of a packed pixel given its bitfield type, the bit size of its channels and its layout
pixel | Represents a pixel value (a container of channels). Models: HomogeneousColorBaseValueConcept, PixelValueConcept, HomogeneousPixelBasedConcept
pixel_2d_locator_base | Base class for models of PixelLocatorConcept Pixel locator is similar to a pixel iterator, but allows for 2D navigation of pixels within an image view. It has a 2D difference_type and supports random access operations like:
pixel_is_reference | Given a model of a pixel, determines whether the model represents a pixel reference (as opposed to pixel value)
pixel_reference_is_basic | Determines if a given pixel reference is basic Basic references must use gil::pixel& (if interleaved), gil::planar_pixel_reference (if planar). They must use the standard constness rules
pixel_reference_is_mutable | Determines if the given pixel reference is mutable (i.e. its channels can be changed)
pixel_reference_is_proxy | Determines whether the given pixel reference is a proxy class or a native C++ reference
pixel_reference_type | Returns the type of a homogeneous pixel reference given the channel type, layout, whether it operates on planar data and whether it is mutable
pixel_value_type | Returns the type of a homogeneous pixel given the channel type and layout
PixelBasedConcept | Concept for all pixel-based GIL constructs, such as pixels, iterators, locators, views and images whose value type is a pixel
PixelConcept | Pixel concept - A color base whose elements are channels
PixelConvertibleConcept | Pixel convertible concept
PixelDereferenceAdaptorConcept | Represents a unary function object that can be invoked upon dereferencing a pixel iterator
PixelIteratorConcept | An STL random access traversal iterator over a model of PixelConcept
PixelLocatorConcept | GIL's 2-dimensional locator over immutable GIL pixels
pixels_are_compatible | Returns whether two pixels are compatible
PixelsCompatibleConcept | Concept for pixel compatibility Pixels are compatible if their channels and color space types are compatible. Compatible pixels can be assigned and copy constructed from one another
PixelValueConcept | Pixel concept that is a Regular type
planar_pixel_iterator | An iterator over planar pixels. Models HomogeneousColorBaseConcept, PixelIteratorConcept, HomogeneousPixelBasedConcept, MemoryBasedIteratorConcept, HasDynamicXStepTypeConcept
planar_pixel_reference | A reference proxy to a planar pixel. Models: HomogeneousColorBaseConcept, HomogeneousPixelConcept
plus_asymmetric | Plus function object whose arguments may be of different type
png_read_support | Determines whether the given view type is supported for reading
png_write_support | Determines whether the given view type is supported for writing
point2 | 2D point both axes of which have the same dimension type Models: Point2DConcept
Point2DConcept | 2-dimensional point concept
PointNDConcept | N-dimensional point concept
position_iterator | An iterator that remembers its current X,Y position and invokes a function object with it upon dereferencing. Models PixelIteratorConcept. Used to create virtual image views. Models: StepIteratorConcept, PixelIteratorConcept, PixelBasedConcept, HasDynamicXStepTypeConcept
RandomAccess2DImageConcept | 2-dimensional container of values
RandomAccess2DImageViewConcept | 2-dimensional view over immutable values
RandomAccess2DLocatorConcept | 2-dimensional locator over immutable values
RandomAccessNDImageConcept | N-dimensional container of values
RandomAccessNDImageViewConcept | N-dimensional view over immutable values
RandomAccessNDLocatorConcept | N-dimensional locator over immutable values
red_t | Red
Regular |
rgb_to_luminance_fn | Red * .3 + green * .59 + blue * .11 + .5
SameType |
scoped_channel_value | A channel adaptor that modifies the range of the source channel. Models: ChannelValueConcept
size | Returns an MPL integral type specifying the number of elements in a color base
std_fill_t | Struct to do std::fill
step_iterator_adaptor | An adaptor over an existing iterator that changes the step unit
StepIteratorConcept | Step iterator concept
Swappable |
tiff_read_support | Determines whether the given view type is supported for reading
tiff_write_support | Determines whether the given view type is supported for writing
type_from_x_iterator | Given a pixel iterator defining access to pixels along a row, returns the types of the corresponding built-in step_iterator, xy_locator, image_view
type_to_index | Returns the index corresponding to the first occurrance of a given given type in
variant | Represents a concrete instance of a run-time specified type from a set of types A concept is typically modeled by a collection of different types. They may be instantiations of a templated type with different template parameters or even completely unrelated types
view_is_basic | Basic views must be over basic locators
view_is_mutable | Determines if the given view is mutable (i.e. its pixels can be changed)
view_is_step_in_x | Determines if the given view has a horizontal step that could be set dynamically
view_is_step_in_y | Determines if the given view has a vertical step that could be set dynamically
view_type | Returns the type of a homogeneous view given the channel type, layout, whether it operates on planar data and whether it has a step horizontally
view_type_from_pixel | Returns the type of a view the pixel type, whether it operates on planar data and whether it has a step horizontally
views_are_compatible | Returns whether two views are compatible
ViewsCompatibleConcept | Views are compatible if they have the same color spaces and compatible channel values. Constness and layout are not important for compatibility
virtual_2d_locator | A 2D locator over a virtual image. Upon dereferencing, invokes a given function object passing it its coordinates. Models: PixelLocatorConcept, HasDynamicXStepTypeConcept, HasDynamicYStepTypeConcept, HasTransposedTypeConcept
yellow_t | Yellow