Modules | Alphabetical List | Class List | Directories | File List | GIL Home Page # RandomAccess2DLocatorConcept Struct Template Reference [RandomAccess2DLocatorConcept] `#include <gil_concept.hpp>` List of all members. ## Detailed Description ### template<typename Loc> struct boost::gil::RandomAccess2DLocatorConcept< Loc > 2-dimensional locator over immutable values
    concept RandomAccess2DLocatorConcept<RandomAccessNDLocatorConcept Loc> {
        where num_dimensions==2;
        where Point2DConcept<point_t>;

        typename x_iterator = axis<0>::iterator;
        typename y_iterator = axis<1>::iterator;
        typename x_coord_t  = axis<0>::coord_t;
        typename y_coord_t  = axis<1>::coord_t;

        // Only available to locators that have dynamic step in Y
        //Loc::Loc(const Loc& loc, y_coord_t);

        // Only available to locators that have dynamic step in X and Y
        //Loc::Loc(const Loc& loc, x_coord_t, y_coord_t, bool transposed=false);

        x_iterator&       Loc::x();
        x_iterator const& Loc::x() const;
        y_iterator&       Loc::y();
        y_iterator const& Loc::y() const;

        x_iterator Loc::x_at(const difference_type&) const;
        y_iterator Loc::y_at(const difference_type&) const;
        Loc Loc::xy_at(const difference_type&) const;

        // x/y versions of all methods that can take difference type
        x_iterator        Loc::x_at(x_coord_t, y_coord_t) const;
        y_iterator        Loc::y_at(x_coord_t, y_coord_t) const;
        Loc               Loc::xy_at(x_coord_t, y_coord_t) const;
        reference         operator()(const Loc&, x_coord_t, y_coord_t);
        cached_location_t Loc::cache_location(x_coord_t, y_coord_t) const;

        bool      Loc::is_1d_traversable(x_coord_t width) const;
        y_coord_t Loc::y_distance_to(const Loc& loc2, x_coord_t x_diff) const;
    };
## Public Member Functions
void | constraints ()
## Public Attributes
Loc | loc
The documentation for this struct was generated from the following file: gil_concept.hpp