Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::gil::virtual_2d_locator< Deref, IsTransposed > Class Template Reference

A 2D locator over a virtual image. More...

#include <virtual_locator.hpp>

Inheritance diagram for boost::gil::virtual_2d_locator< Deref, IsTransposed >:
Collaboration diagram for boost::gil::virtual_2d_locator< Deref, IsTransposed >:

Classes

struct  add_deref
 

Public Types

typedef pixel_2d_locator_base
< virtual_2d_locator< Deref,
IsTransposed >
, position_iterator< Deref,
IsTransposed >
, position_iterator< Deref,
1-IsTransposed > > 
parent_t
 
typedef virtual_2d_locator
< typename Deref::const_t,
IsTransposed > 
const_t
 
typedef Deref deref_fn_t
 
typedef parent_t::point_t point_t
 
typedef parent_t::coord_t coord_t
 
typedef parent_t::x_coord_t x_coord_t
 
typedef parent_t::y_coord_t y_coord_t
 
typedef parent_t::x_iterator x_iterator
 
typedef parent_t::y_iterator y_iterator
 
typedef std::iterator_traits
< x_iterator >::value_type 
value_type
 
typedef std::iterator_traits
< x_iterator >::reference 
reference
 
typedef point2< coord_tdifference_type
 
typedef difference_type cached_location_t
 

Public Member Functions

 virtual_2d_locator (const point_t &p=point_t(0, 0), const point_t &step=point_t(1, 1), const deref_fn_t &d=deref_fn_t())
 
template<typename D , bool TR>
 virtual_2d_locator (const virtual_2d_locator< D, TR > &loc, coord_t y_step)
 
template<typename D , bool TR>
 virtual_2d_locator (const virtual_2d_locator< D, TR > &loc, coord_t x_step, coord_t y_step, bool transpose=false)
 
template<typename D , bool TR>
 virtual_2d_locator (const virtual_2d_locator< D, TR > &pl)
 
 virtual_2d_locator (const virtual_2d_locator &pl)
 
bool operator== (const this_t &p) const
 
x_iteratorx ()
 
y_iteratory ()
 
x_iterator const & x () const
 
y_iterator const & y () const
 
y_coord_t y_distance_to (const this_t &it2, x_coord_t xDiff) const
 
bool is_1d_traversable (x_coord_t) const
 
const point_tpos () const
 
const point_tstep () const
 
const deref_fn_tderef_fn () const
 
bool operator!= (const virtual_2d_locator< Deref, IsTransposed > &p) const
 
x_iterator x_at (x_coord_t dx, y_coord_t dy) const
 
x_iterator x_at (const difference_type &d) const
 
y_iterator y_at (x_coord_t dx, y_coord_t dy) const
 
y_iterator y_at (const difference_type &d) const
 
virtual_2d_locator< Deref,
IsTransposed > 
xy_at (x_coord_t dx, y_coord_t dy) const
 
virtual_2d_locator< Deref,
IsTransposed > 
xy_at (const difference_type &d) const
 
axis< D >::iterator & axis_iterator ()
 
axis< D >::iterator const & axis_iterator () const
 
axis< D >::iterator axis_iterator (const point_t &p) const
 
reference operator() (x_coord_t dx, y_coord_t dy) const
 
reference operator[] (const difference_type &d) const
 
reference operator* () const
 
virtual_2d_locator< Deref,
IsTransposed > & 
operator+= (const difference_type &d)
 
virtual_2d_locator< Deref,
IsTransposed > & 
operator-= (const difference_type &d)
 
virtual_2d_locator< Deref,
IsTransposed > 
operator+ (const difference_type &d) const
 
virtual_2d_locator< Deref,
IsTransposed > 
operator- (const difference_type &d) const
 
cached_location_t cache_location (const difference_type &d) const
 
cached_location_t cache_location (x_coord_t dx, y_coord_t dy) const
 

Static Public Attributes

static const std::size_t num_dimensions
 

Friends

template<typename D , bool TR>
class virtual_2d_locator
 

Detailed Description

template<typename Deref, bool IsTransposed>
class boost::gil::virtual_2d_locator< Deref, IsTransposed >

A 2D locator over a virtual image.

Upon dereferencing, invokes a given function object passing it its coordinates. Models: PixelLocatorConcept, HasDynamicXStepTypeConcept, HasDynamicYStepTypeConcept, HasTransposedTypeConcept

Member Typedef Documentation

typedef difference_type boost::gil::pixel_2d_locator_base< virtual_2d_locator< Deref, IsTransposed > , position_iterator< Deref, IsTransposed > , position_iterator< Deref, 1-IsTransposed > >::cached_location_t
inherited
template<typename Deref, bool IsTransposed>
typedef virtual_2d_locator<typename Deref::const_t,IsTransposed> boost::gil::virtual_2d_locator< Deref, IsTransposed >::const_t
template<typename Deref, bool IsTransposed>
typedef parent_t::coord_t boost::gil::virtual_2d_locator< Deref, IsTransposed >::coord_t
template<typename Deref, bool IsTransposed>
typedef Deref boost::gil::virtual_2d_locator< Deref, IsTransposed >::deref_fn_t
typedef point2<coord_t> boost::gil::pixel_2d_locator_base< virtual_2d_locator< Deref, IsTransposed > , position_iterator< Deref, IsTransposed > , position_iterator< Deref, 1-IsTransposed > >::difference_type
inherited
template<typename Deref, bool IsTransposed>
typedef pixel_2d_locator_base<virtual_2d_locator<Deref,IsTransposed>, position_iterator<Deref,IsTransposed>, position_iterator<Deref,1-IsTransposed> > boost::gil::virtual_2d_locator< Deref, IsTransposed >::parent_t
template<typename Deref, bool IsTransposed>
typedef parent_t::point_t boost::gil::virtual_2d_locator< Deref, IsTransposed >::point_t
typedef std::iterator_traits<x_iterator>::reference boost::gil::pixel_2d_locator_base< virtual_2d_locator< Deref, IsTransposed > , position_iterator< Deref, IsTransposed > , position_iterator< Deref, 1-IsTransposed > >::reference
inherited
typedef std::iterator_traits<x_iterator>::value_type boost::gil::pixel_2d_locator_base< virtual_2d_locator< Deref, IsTransposed > , position_iterator< Deref, IsTransposed > , position_iterator< Deref, 1-IsTransposed > >::value_type
inherited
template<typename Deref, bool IsTransposed>
typedef parent_t::x_coord_t boost::gil::virtual_2d_locator< Deref, IsTransposed >::x_coord_t
template<typename Deref, bool IsTransposed>
typedef parent_t::x_iterator boost::gil::virtual_2d_locator< Deref, IsTransposed >::x_iterator
template<typename Deref, bool IsTransposed>
typedef parent_t::y_coord_t boost::gil::virtual_2d_locator< Deref, IsTransposed >::y_coord_t
template<typename Deref, bool IsTransposed>
typedef parent_t::y_iterator boost::gil::virtual_2d_locator< Deref, IsTransposed >::y_iterator

Constructor & Destructor Documentation

template<typename Deref, bool IsTransposed>
boost::gil::virtual_2d_locator< Deref, IsTransposed >::virtual_2d_locator ( const point_t p = point_t(0,0),
const point_t step = point_t(1,1),
const deref_fn_t d = deref_fn_t() 
)
inline
template<typename Deref, bool IsTransposed>
template<typename D , bool TR>
boost::gil::virtual_2d_locator< Deref, IsTransposed >::virtual_2d_locator ( const virtual_2d_locator< D, TR > &  loc,
coord_t  y_step 
)
inline
template<typename Deref, bool IsTransposed>
template<typename D , bool TR>
boost::gil::virtual_2d_locator< Deref, IsTransposed >::virtual_2d_locator ( const virtual_2d_locator< D, TR > &  loc,
coord_t  x_step,
coord_t  y_step,
bool  transpose = false 
)
inline
template<typename Deref, bool IsTransposed>
template<typename D , bool TR>
boost::gil::virtual_2d_locator< Deref, IsTransposed >::virtual_2d_locator ( const virtual_2d_locator< D, TR > &  pl)
inline
template<typename Deref, bool IsTransposed>
boost::gil::virtual_2d_locator< Deref, IsTransposed >::virtual_2d_locator ( const virtual_2d_locator< Deref, IsTransposed > &  pl)
inline

Member Function Documentation

axis<D>::iterator& boost::gil::pixel_2d_locator_base< virtual_2d_locator< Deref, IsTransposed > , position_iterator< Deref, IsTransposed > , position_iterator< Deref, 1-IsTransposed > >::axis_iterator ( )
inlineinherited
axis<D>::iterator const& boost::gil::pixel_2d_locator_base< virtual_2d_locator< Deref, IsTransposed > , position_iterator< Deref, IsTransposed > , position_iterator< Deref, 1-IsTransposed > >::axis_iterator ( ) const
inlineinherited
axis<D>::iterator boost::gil::pixel_2d_locator_base< virtual_2d_locator< Deref, IsTransposed > , position_iterator< Deref, IsTransposed > , position_iterator< Deref, 1-IsTransposed > >::axis_iterator ( const point_t p) const
inlineinherited
cached_location_t boost::gil::pixel_2d_locator_base< virtual_2d_locator< Deref, IsTransposed > , position_iterator< Deref, IsTransposed > , position_iterator< Deref, 1-IsTransposed > >::cache_location ( const difference_type d) const
inlineinherited
cached_location_t boost::gil::pixel_2d_locator_base< virtual_2d_locator< Deref, IsTransposed > , position_iterator< Deref, IsTransposed > , position_iterator< Deref, 1-IsTransposed > >::cache_location ( x_coord_t  dx,
y_coord_t  dy 
) const
inlineinherited
template<typename Deref, bool IsTransposed>
const deref_fn_t& boost::gil::virtual_2d_locator< Deref, IsTransposed >::deref_fn ( ) const
inline
template<typename Deref, bool IsTransposed>
bool boost::gil::virtual_2d_locator< Deref, IsTransposed >::is_1d_traversable ( x_coord_t  ) const
inline
bool boost::gil::pixel_2d_locator_base< virtual_2d_locator< Deref, IsTransposed > , position_iterator< Deref, IsTransposed > , position_iterator< Deref, 1-IsTransposed > >::operator!= ( const virtual_2d_locator< Deref, IsTransposed > &  p) const
inlineinherited
reference boost::gil::pixel_2d_locator_base< virtual_2d_locator< Deref, IsTransposed > , position_iterator< Deref, IsTransposed > , position_iterator< Deref, 1-IsTransposed > >::operator() ( x_coord_t  dx,
y_coord_t  dy 
) const
inlineinherited
reference boost::gil::pixel_2d_locator_base< virtual_2d_locator< Deref, IsTransposed > , position_iterator< Deref, IsTransposed > , position_iterator< Deref, 1-IsTransposed > >::operator* ( ) const
inlineinherited
virtual_2d_locator< Deref, IsTransposed > boost::gil::pixel_2d_locator_base< virtual_2d_locator< Deref, IsTransposed > , position_iterator< Deref, IsTransposed > , position_iterator< Deref, 1-IsTransposed > >::operator+ ( const difference_type d) const
inlineinherited
virtual_2d_locator< Deref, IsTransposed > & boost::gil::pixel_2d_locator_base< virtual_2d_locator< Deref, IsTransposed > , position_iterator< Deref, IsTransposed > , position_iterator< Deref, 1-IsTransposed > >::operator+= ( const difference_type d)
inlineinherited
virtual_2d_locator< Deref, IsTransposed > boost::gil::pixel_2d_locator_base< virtual_2d_locator< Deref, IsTransposed > , position_iterator< Deref, IsTransposed > , position_iterator< Deref, 1-IsTransposed > >::operator- ( const difference_type d) const
inlineinherited
virtual_2d_locator< Deref, IsTransposed > & boost::gil::pixel_2d_locator_base< virtual_2d_locator< Deref, IsTransposed > , position_iterator< Deref, IsTransposed > , position_iterator< Deref, 1-IsTransposed > >::operator-= ( const difference_type d)
inlineinherited
template<typename Deref, bool IsTransposed>
bool boost::gil::virtual_2d_locator< Deref, IsTransposed >::operator== ( const this_t p) const
inline
reference boost::gil::pixel_2d_locator_base< virtual_2d_locator< Deref, IsTransposed > , position_iterator< Deref, IsTransposed > , position_iterator< Deref, 1-IsTransposed > >::operator[] ( const difference_type d) const
inlineinherited
template<typename Deref, bool IsTransposed>
x_iterator& boost::gil::virtual_2d_locator< Deref, IsTransposed >::x ( )
inline
template<typename Deref, bool IsTransposed>
x_iterator const& boost::gil::virtual_2d_locator< Deref, IsTransposed >::x ( ) const
inline
x_iterator boost::gil::pixel_2d_locator_base< virtual_2d_locator< Deref, IsTransposed > , position_iterator< Deref, IsTransposed > , position_iterator< Deref, 1-IsTransposed > >::x_at ( x_coord_t  dx,
y_coord_t  dy 
) const
inlineinherited
x_iterator boost::gil::pixel_2d_locator_base< virtual_2d_locator< Deref, IsTransposed > , position_iterator< Deref, IsTransposed > , position_iterator< Deref, 1-IsTransposed > >::x_at ( const difference_type d) const
inlineinherited
virtual_2d_locator< Deref, IsTransposed > boost::gil::pixel_2d_locator_base< virtual_2d_locator< Deref, IsTransposed > , position_iterator< Deref, IsTransposed > , position_iterator< Deref, 1-IsTransposed > >::xy_at ( x_coord_t  dx,
y_coord_t  dy 
) const
inlineinherited
virtual_2d_locator< Deref, IsTransposed > boost::gil::pixel_2d_locator_base< virtual_2d_locator< Deref, IsTransposed > , position_iterator< Deref, IsTransposed > , position_iterator< Deref, 1-IsTransposed > >::xy_at ( const difference_type d) const
inlineinherited
template<typename Deref, bool IsTransposed>
y_iterator& boost::gil::virtual_2d_locator< Deref, IsTransposed >::y ( )
inline
template<typename Deref, bool IsTransposed>
y_iterator const& boost::gil::virtual_2d_locator< Deref, IsTransposed >::y ( ) const
inline
y_iterator boost::gil::pixel_2d_locator_base< virtual_2d_locator< Deref, IsTransposed > , position_iterator< Deref, IsTransposed > , position_iterator< Deref, 1-IsTransposed > >::y_at ( x_coord_t  dx,
y_coord_t  dy 
) const
inlineinherited
y_iterator boost::gil::pixel_2d_locator_base< virtual_2d_locator< Deref, IsTransposed > , position_iterator< Deref, IsTransposed > , position_iterator< Deref, 1-IsTransposed > >::y_at ( const difference_type d) const
inlineinherited
template<typename Deref, bool IsTransposed>
y_coord_t boost::gil::virtual_2d_locator< Deref, IsTransposed >::y_distance_to ( const this_t it2,
x_coord_t  xDiff 
) const
inline

Friends And Related Function Documentation

template<typename Deref, bool IsTransposed>
template<typename D , bool TR>
friend class virtual_2d_locator
friend

Member Data Documentation

const std::size_t boost::gil::pixel_2d_locator_base< virtual_2d_locator< Deref, IsTransposed > , position_iterator< Deref, IsTransposed > , position_iterator< Deref, 1-IsTransposed > >::num_dimensions
staticinherited

The documentation for this class was generated from the following file: