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

# utilities.hpp File Reference

## Detailed Description

Various utilities not specific to the image library. Some are non-standard STL extensions or generic iterator adaptors.

Author:
  Lubomir Bourdev and Hailin Jin
  Adobe Systems Incorporated

Date:
  2005-2007
  Last updated on September 18, 2007

`#include "gil_config.hpp"`
`#include <functional>`
`#include <boost/config/no_tr1/cmath.hpp>`
`#include <cstddef>`
`#include <algorithm>`
`#include <utility>`
`#include <iterator>`
`#include <boost/static_assert.hpp>`
`#include <boost/type_traits.hpp>`
`#include <boost/mpl/size.hpp>`
`#include <boost/mpl/distance.hpp>`
`#include <boost/mpl/begin.hpp>`
`#include <boost/mpl/find.hpp>`
`#include <boost/mpl/range_c.hpp>`
`#include <boost/iterator/iterator_adaptor.hpp>`
`#include <boost/iterator/iterator_facade.hpp>`

Go to the source code of this file.

## Namespaces

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

## Classes

class | point2
| 2D point both axes of which have the same dimension type Models: Point2DConcept More...
struct | deref_base
| Helper base class for pixel dereference adaptors. More...
class | deref_compose
| Composes two dereference function objects. Similar to std::unary_compose but needs to pull some typedefs from the component types. Models: PixelDereferenceAdaptorConcept. More...
struct | identity
| identity taken from SGI STL. More...
struct | plus_asymmetric
| plus function object whose arguments may be of different type. More...
struct | inc
| operator++ wrapped in a function object More...
struct | dec
| operator-- wrapped in a function object More...
struct | type_to_index
| Returns the index corresponding to the first occurrance of a given given type in. More...
struct | layout
| Represents a color space and ordering of channels in memory. More...

## Functions

template<typename T>
GIL_FORCEINLINE bool | operator== (const point2< T > &p1, const point2< T > &p2)
template<typename T>
GIL_FORCEINLINE bool | operator!= (const point2< T > &p1, const point2< T > &p2)
template<typename T>
GIL_FORCEINLINE point2< T > | operator+ (const point2< T > &p1, const point2< T > &p2)
template<typename T>
GIL_FORCEINLINE point2< T > | operator- (const point2< T > &p)
template<typename T>
GIL_FORCEINLINE point2< T > | operator- (const point2< T > &p1, const point2< T > &p2)
template<typename T>
GIL_FORCEINLINE point2< double > | operator/ (const point2< T > &p, double t)
template<typename T>
GIL_FORCEINLINE point2< T > | operator* (const point2< T > &p, std::ptrdiff_t t)
template<typename T>
GIL_FORCEINLINE point2< T > | operator* (std::ptrdiff_t t, const point2< T > &p)
template<std::size_t K, typename T>
const T & | axis_value (const point2< T > &p)
template<std::size_t K, typename T>
T & | axis_value (point2< T > &p)
std::ptrdiff_t | iround (float x)
std::ptrdiff_t | iround (double x)
std::ptrdiff_t | ifloor (float x)
std::ptrdiff_t | ifloor (double x)
std::ptrdiff_t | iceil (float x)
std::ptrdiff_t | iceil (double x)
point2< std::ptrdiff_t > | iround (const point2< float > &p)
point2< std::ptrdiff_t > | iround (const point2< double > &p)
point2< std::ptrdiff_t > | ifloor (const point2< float > &p)
point2< std::ptrdiff_t > | ifloor (const point2< double > &p)
point2< std::ptrdiff_t > | iceil (const point2< float > &p)
point2< std::ptrdiff_t > | iceil (const point2< double > &p)
template<typename T>
T | align (T val, std::size_t alignment)
template<typename OutPtr, typename In>
GIL_FORCEINLINE OutPtr | gil_reinterpret_cast (In *p)
template<typename OutPtr, typename In>
GIL_FORCEINLINE const OutPtr | gil_reinterpret_cast_c (const In *p)
template<class InputIter, class Size, class OutputIter>
std::pair< InputIter, OutputIter > | _copy_n (InputIter first, Size count, OutputIter result, std::input_iterator_tag)
| copy_n taken from SGI STL.
template<class RAIter, class Size, class OutputIter>
std::pair< RAIter, OutputIter > | _copy_n (RAIter first, Size count, OutputIter result, std::random_access_iterator_tag)
template<class InputIter, class Size, class OutputIter>
std::pair< InputIter, OutputIter > | _copy_n (InputIter first, Size count, OutputIter result)
template<class InputIter, class Size, class OutputIter>
std::pair< InputIter, OutputIter > | copy_n (InputIter first, Size count, OutputIter result)
template<typename Value, typename T1, typename T2>
void | swap_proxy (T1 &left, T2 &right)
| A version of swap that also works with reference proxy objects.
bool | little_endian ()
| Run-time detection of whether the underlying architecture is little endian.
bool | big_endian ()
| Run-time detection of whether the underlying architecture is big endian.