1 <!-- Copyright 2008 Lubomir Bourdev and Hailin Jin
3 Distributed under the Boost Software License, Version 1.0.
4 (See accompanying file LICENSE_1_0.txt or copy at
5 http://www.boost.org/LICENSE_1_0.txt)
9 Copyright 2005-2007 Adobe Systems Incorporated
10 Distributed under the MIT License (see accompanying file LICENSE_1_0_0.txt
11 or a copy at http://stlab.adobe.com/licenses.html)
13 Some files are held under additional license.
14 Please see "http://stlab.adobe.com/licenses.html" for more information.
17 <!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Transitional//EN"
18 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
19 <html xmlns=
"http://www.w3.org/1999/xhtml" lang=
"en" xml:
lang=
"en">
22 <TITLE>Generic Image Library: position_iterator Struct Template Reference
</TITLE>
23 <META HTTP-EQUIV=
"content-type" CONTENT=
"text/html;charset=ISO-8859-1"/>
24 <LINK TYPE=
"text/css" REL=
"stylesheet" HREF=
"adobe_source.css"/>
27 <table border=
"0" cellspacing=
"0" cellpadding=
"0" style='width:
100%; margin:
0; padding:
0'
><tr>
28 <td width=
"100%" valign=
"top" style='padding-left:
10px; padding-right:
10px; padding-bottom:
10px'
>
29 <div class=
"qindex"><a class=
"qindex" href=
"index.html">Modules
</a>
30 |
<a class=
"qindex" href=
"classes.html">Alphabetical List
</a>
31 |
<a class=
"qindex" href=
"annotated.html">Class List
</a>
32 |
<a class=
"qindex" href=
"dirs.html">Directories
</a>
33 |
<a class=
"qindex" href=
"files.html">File List
</a>
34 |
<a class=
"qindex" href=
"../index.html">GIL Home Page
</a>
37 <!-- Generated by Doxygen 1.5.6 -->
38 <div class=
"navpath"><a class=
"el" href=
"namespaceboost.html">boost
</a>::
<b>gil
</b>::
<a class=
"el" href=
"g_i_l_0617.html">position_iterator
</a>
40 <div class=
"contents">
41 <h1>position_iterator Struct Template Reference
<br>
43 [
<a class=
"el" href=
"g_i_l_0200.html">position_iterator
</a>,
<a class=
"el" href=
"g_i_l_0182.html">Models
</a>]
</small>
44 </h1><!-- doxytag: class="boost::gil::position_iterator" --><code>#include
<<a class=
"el" href=
"g_i_l_0255.html">position_iterator.hpp
</a>></code>
48 <a href=
"g_i_l_0616.html">List of all members.
</a><hr><a name=
"_details"></a><h2>Detailed Description
</h2>
49 <h3>template
<typename Deref, int Dim
><br>
50 struct boost::gil::position_iterator
< Deref, Dim
></h3>
52 An iterator that remembers its current X,Y position and invokes a function object with it upon dereferencing. Models
<a class=
"el" href=
"g_i_l_0352.html" title=
"An STL random access traversal iterator over a model of PixelConcept.">PixelIteratorConcept
</a>. Used to create virtual
<a class=
"el" href=
"g_i_l_0038.html" title=
"container interface over image view. Models ImageConcept, PixelBasedConcept">image
</a> views. Models:
<a class=
"el" href=
"g_i_l_0380.html" title=
"Step iterator concept.">StepIteratorConcept
</a>,
<a class=
"el" href=
"g_i_l_0352.html" title=
"An STL random access traversal iterator over a model of PixelConcept.">PixelIteratorConcept
</a>,
<a class=
"el" href=
"g_i_l_0344.html" title=
"Concept for all pixel-based GIL constructs, such as pixels, iterators, locators,...">PixelBasedConcept
</a>,
<a class=
"el" href=
"g_i_l_0290.html" title=
"Concept for iterators, locators and views that can define a type just like the given...">HasDynamicXStepTypeConcept
</a>.
<table border=
"0" cellpadding=
"0" cellspacing=
"0">
54 <tr><td colspan=
"2"><br><h2>Public Types
</h2></td></tr>
55 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top"><a class=
"anchor" name=
"593284971ee6dd339e255eab41daf46e"></a><!-- doxytag: member="boost::gil::position_iterator::parent_t" ref="593284971ee6dd339e255eab41daf46e" args="" -->
56 typedef iterator_facade
<br>
57 < <a class=
"el" href=
"g_i_l_0617.html">position_iterator
</a>< Deref,
<br>
58 Dim
>, typename
<br>
59 Deref::value_type,
<br>
60 random_access_traversal_tag,
<br>
61 typename Deref::reference,
<br>
63 Deref::argument_type::template
<br>
64 axis
< Dim
>::coord_t
> </td><td class=
"memItemRight" valign=
"bottom"><b>parent_t
</b></td></tr>
66 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top"><a class=
"anchor" name=
"af1864eda36a1748894be741b3d64bde"></a><!-- doxytag: member="boost::gil::position_iterator::difference_type" ref="af1864eda36a1748894be741b3d64bde" args="" -->
67 typedef parent_t::difference_type
</td><td class=
"memItemRight" valign=
"bottom"><b>difference_type
</b></td></tr>
69 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top"><a class=
"anchor" name=
"6c80bdd4dcae459dd371e3d941b83468"></a><!-- doxytag: member="boost::gil::position_iterator::reference" ref="6c80bdd4dcae459dd371e3d941b83468" args="" -->
70 typedef parent_t::reference
</td><td class=
"memItemRight" valign=
"bottom"><b>reference
</b></td></tr>
72 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top"><a class=
"anchor" name=
"4f32e0e9608bf2a7624e88e5f28f1662"></a><!-- doxytag: member="boost::gil::position_iterator::point_t" ref="4f32e0e9608bf2a7624e88e5f28f1662" args="" -->
73 typedef Deref::argument_type
</td><td class=
"memItemRight" valign=
"bottom"><b>point_t
</b></td></tr>
75 <tr><td colspan=
"2"><br><h2>Public Member Functions
</h2></td></tr>
76 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top"><a class=
"anchor" name=
"c764aa1824b23c5d449b13402f69e2bc"></a><!-- doxytag: member="boost::gil::position_iterator::position_iterator" ref="c764aa1824b23c5d449b13402f69e2bc" args="(const point_t &p, const point_t &step, const Deref &d)" -->
77 </td><td class=
"memItemRight" valign=
"bottom"><b>position_iterator
</b> (const point_t
&p, const point_t
&step, const Deref
&d)
</td></tr>
79 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top"><a class=
"anchor" name=
"095093a553f6880d130811af0d09cd7f"></a><!-- doxytag: member="boost::gil::position_iterator::position_iterator" ref="095093a553f6880d130811af0d09cd7f" args="(const position_iterator &p)" -->
80 </td><td class=
"memItemRight" valign=
"bottom"><b>position_iterator
</b> (const
<a class=
"el" href=
"g_i_l_0617.html">position_iterator
</a> &p)
</td></tr>
82 <tr><td class=
"memTemplParams" nowrap
colspan=
"2"><a class=
"anchor" name=
"e89fd409b049f2cb1e557eb91a34cc18"></a><!-- doxytag: member="boost::gil::position_iterator::position_iterator" ref="e89fd409b049f2cb1e557eb91a34cc18" args="(const position_iterator< D, Dim > &p)" -->
83 template
<typename D
> </td></tr>
84 <tr><td class=
"memTemplItemLeft" nowrap
align=
"right" valign=
"top"> </td><td class=
"memTemplItemRight" valign=
"bottom"><b>position_iterator
</b> (const
<a class=
"el" href=
"g_i_l_0617.html">position_iterator
</a>< D, Dim
> &p)
</td></tr>
86 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top"><a class=
"anchor" name=
"03e1a07a1c81d6a2526187a21bfb02d4"></a><!-- doxytag: member="boost::gil::position_iterator::operator=" ref="03e1a07a1c81d6a2526187a21bfb02d4" args="(const position_iterator &p)" -->
87 <a class=
"el" href=
"g_i_l_0617.html">position_iterator
</a> & </td><td class=
"memItemRight" valign=
"bottom"><b>operator=
</b> (const
<a class=
"el" href=
"g_i_l_0617.html">position_iterator
</a> &p)
</td></tr>
89 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top"><a class=
"anchor" name=
"aa3dcf1288cb11be49a44552d5916f9b"></a><!-- doxytag: member="boost::gil::position_iterator::pos" ref="aa3dcf1288cb11be49a44552d5916f9b" args="() const " -->
90 const point_t
& </td><td class=
"memItemRight" valign=
"bottom"><b>pos
</b> () const
</td></tr>
92 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top"><a class=
"anchor" name=
"fe5624cfe9b661059ebf68a2c2659275"></a><!-- doxytag: member="boost::gil::position_iterator::step" ref="fe5624cfe9b661059ebf68a2c2659275" args="() const " -->
93 const point_t
& </td><td class=
"memItemRight" valign=
"bottom"><b>step
</b> () const
</td></tr>
95 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top"><a class=
"anchor" name=
"8c1a5da63b9b76a4ffba45b8326ce4ef"></a><!-- doxytag: member="boost::gil::position_iterator::deref_fn" ref="8c1a5da63b9b76a4ffba45b8326ce4ef" args="() const " -->
96 const Deref
& </td><td class=
"memItemRight" valign=
"bottom"><b>deref_fn
</b> () const
</td></tr>
98 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top"><a class=
"anchor" name=
"5114b6c7c715e484fcb9e79b71838215"></a><!-- doxytag: member="boost::gil::position_iterator::set_step" ref="5114b6c7c715e484fcb9e79b71838215" args="(difference_type s)" -->
99 void
</td><td class=
"memItemRight" valign=
"bottom"><b>set_step
</b> (difference_type s)
</td></tr>
101 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top">reference
</td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"g_i_l_0617.html#de1279c4ed222b6efb0867c038765ea1">operator[]
</a> (difference_type d) const
</td></tr>
103 <tr><td colspan=
"2"><br><h2>Friends
</h2></td></tr>
104 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top"><a class=
"anchor" name=
"8e8b17256aa8c6c835e4ae35a5e4e76d"></a><!-- doxytag: member="boost::gil::position_iterator::position_iterator" ref="8e8b17256aa8c6c835e4ae35a5e4e76d" args="" -->
105 struct
</td><td class=
"memItemRight" valign=
"bottom"><b>position_iterator
</b></td></tr>
107 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top"><a class=
"anchor" name=
"c09f73e325921cc50ebcd96bed0f8096"></a><!-- doxytag: member="boost::gil::position_iterator::boost::iterator_core_access" ref="c09f73e325921cc50ebcd96bed0f8096" args="" -->
108 class
</td><td class=
"memItemRight" valign=
"bottom"><b>boost::iterator_core_access
</b></td></tr>
111 <hr><h2>Member Function Documentation
</h2>
112 <a class=
"anchor" name=
"de1279c4ed222b6efb0867c038765ea1"></a><!-- doxytag: member="boost::gil::position_iterator::operator[]" ref="de1279c4ed222b6efb0867c038765ea1" args="(difference_type d) const " -->
113 <div class=
"memitem">
114 <div class=
"memproto">
115 <table class=
"memname">
117 <td class=
"memname">reference operator[]
</td>
119 <td class=
"paramtype">difference_type
</td>
120 <td class=
"paramname"> <em>d
</em> </td>
121 <td> )
</td>
122 <td> const
<code> [inline]
</code></td>
129 For some reason operator[] provided by iterator_adaptor returns a custom class that is convertible to reference We require our own reference because it is registered in iterator_traits
132 <hr>The documentation for this struct was generated from the following file:
<ul>
133 <li><a class=
"el" href=
"g_i_l_0255.html">position_iterator.hpp
</a></ul>
135 <hr size=
"1"><address style=
"text-align: right;"><small>Generated on Sat May
2 13:
50:
18 2009 for Generic Image Library by
136 <a href=
"http://www.doxygen.org/index.html">
137 <img src=
"doxygen.png" alt=
"doxygen" align=
"middle" border=
"0"></a> 1.5.6 </small></address>