123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193 |
- <!-- HTML header for doxygen 1.8.13-->
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
- <meta http-equiv="X-UA-Compatible" content="IE=9"/>
- <meta name="generator" content="Doxygen 1.8.15"/>
- <meta name="viewport" content="width=device-width, initial-scale=1"/>
- <title>Generic Image Library: pixel_2d_locator_base< Loc, XIterator, YIterator > Class Template Reference</title>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- <script type="text/javascript" src="jquery.js"></script>
- <script type="text/javascript" src="dynsections.js"></script>
- <link href="doxygen.css" rel="stylesheet" type="text/css" />
- <link href="doxygen-boost.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <div class="boost-header">
- <table border="0" cellpadding="7" cellspacing="0" width="100%" summary="header">
- <tr>
- <td valign="top" width="300">
- <h3><a href="../index.html"><img alt="Boost GIL" src="../_static/gil.png" border="0"></a></h3>
- </td>
- <td ><h1 align="center"><a href="../index.html"></a></h1></td>
- <td></td>
- </tr>
- </table>
- </div>
- <hr/>
- <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
- <!-- Generated by Doxygen 1.8.15 -->
- <script type="text/javascript" src="menudata.js"></script>
- <script type="text/javascript" src="menu.js"></script>
- <script type="text/javascript">
- /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
- $(function() {
- initMenu('',false,false,'search.php','Search');
- });
- /* @license-end */</script>
- <div id="main-nav"></div>
- <div id="nav-path" class="navpath">
- <ul>
- <li class="navelem"><b>boost</b></li><li class="navelem"><b>gil</b></li><li class="navelem"><a class="el" href="classboost_1_1gil_1_1pixel__2d__locator__base.html">pixel_2d_locator_base</a></li> </ul>
- </div>
- </div><!-- top -->
- <div class="header">
- <div class="summary">
- <a href="#pub-types">Public Types</a> |
- <a href="#pub-methods">Public Member Functions</a> |
- <a href="#pub-static-attribs">Static Public Attributes</a> |
- <a href="#friends">Friends</a> |
- <a href="classboost_1_1gil_1_1pixel__2d__locator__base-members.html">List of all members</a> </div>
- <div class="headertitle">
- <div class="title">pixel_2d_locator_base< Loc, XIterator, YIterator > Class Template Reference<div class="ingroups"><a class="el" href="group___pixel_locator.html">Pixel Locator</a> » <a class="el" href="group___pixel_locator_model.html">Models</a><a class="el" href="group___pixel_based.html">PixelBased</a> » | <a class="el" href="group___pixel_based_model.html">Models</a></div></div> </div>
- </div><!--header-->
- <div class="contents">
- <p>base class for models of <a class="el" href="structboost_1_1gil_1_1_pixel_locator_concept.html" title="GIL's 2-dimensional locator over immutable GIL pixels.">PixelLocatorConcept</a>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:
- <a href="classboost_1_1gil_1_1pixel__2d__locator__base.html#details">More...</a></p>
- <p><code>#include <<a class="el" href="locator_8hpp_source.html">locator.hpp</a>></code></p>
- <table class="memberdecls">
- <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
- Public Types</h2></td></tr>
- <tr class="memitem:ac8dff97b16cfc859526cbe71bb5e0456"><td class="memItemLeft" align="right" valign="top"><a id="ac8dff97b16cfc859526cbe71bb5e0456"></a>
- using </td><td class="memItemRight" valign="bottom"><b>x_iterator</b> = XIterator</td></tr>
- <tr class="separator:ac8dff97b16cfc859526cbe71bb5e0456"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ac7db843d09573b19a4ec6c70cb699df2"><td class="memItemLeft" align="right" valign="top"><a id="ac7db843d09573b19a4ec6c70cb699df2"></a>
- using </td><td class="memItemRight" valign="bottom"><b>y_iterator</b> = YIterator</td></tr>
- <tr class="separator:ac7db843d09573b19a4ec6c70cb699df2"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a4cf0b4cc09e331d088cba0918375298a"><td class="memItemLeft" align="right" valign="top"><a id="a4cf0b4cc09e331d088cba0918375298a"></a>
- using </td><td class="memItemRight" valign="bottom"><b>value_type</b> = typename std::iterator_traits< x_iterator >::value_type</td></tr>
- <tr class="separator:a4cf0b4cc09e331d088cba0918375298a"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ae4866d87dad1cbb5ec690604b6d7e4c9"><td class="memItemLeft" align="right" valign="top"><a id="ae4866d87dad1cbb5ec690604b6d7e4c9"></a>
- using </td><td class="memItemRight" valign="bottom"><b>reference</b> = typename std::iterator_traits< x_iterator >::reference</td></tr>
- <tr class="separator:ae4866d87dad1cbb5ec690604b6d7e4c9"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a6b1fc581762647c48e112deb1b043ab5"><td class="memItemLeft" align="right" valign="top"><a id="a6b1fc581762647c48e112deb1b043ab5"></a>
- using </td><td class="memItemRight" valign="bottom"><b>coord_t</b> = typename std::iterator_traits< x_iterator >::<a class="el" href="classboost_1_1gil_1_1point.html">difference_type</a></td></tr>
- <tr class="separator:a6b1fc581762647c48e112deb1b043ab5"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:afb01b687e5fb83d62030e97956f78df8"><td class="memItemLeft" align="right" valign="top"><a id="afb01b687e5fb83d62030e97956f78df8"></a>
- using </td><td class="memItemRight" valign="bottom"><b>difference_type</b> = <a class="el" href="classboost_1_1gil_1_1point.html">point</a>< coord_t ></td></tr>
- <tr class="separator:afb01b687e5fb83d62030e97956f78df8"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ad3b7e554a3f62b6ae64646320bdf4707"><td class="memItemLeft" align="right" valign="top"><a id="ad3b7e554a3f62b6ae64646320bdf4707"></a>
- using </td><td class="memItemRight" valign="bottom"><b>point_t</b> = <a class="el" href="classboost_1_1gil_1_1point.html">difference_type</a></td></tr>
- <tr class="separator:ad3b7e554a3f62b6ae64646320bdf4707"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:af57b12c880c8e86ceb3ae23874ca5921"><td class="memItemLeft" align="right" valign="top"><a id="af57b12c880c8e86ceb3ae23874ca5921"></a>
- using </td><td class="memItemRight" valign="bottom"><b>x_coord_t</b> = typename point_t::template axis< 0 >::coord_t</td></tr>
- <tr class="separator:af57b12c880c8e86ceb3ae23874ca5921"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a1f91fc1334430fa1687684fcc107b480"><td class="memItemLeft" align="right" valign="top"><a id="a1f91fc1334430fa1687684fcc107b480"></a>
- using </td><td class="memItemRight" valign="bottom"><b>y_coord_t</b> = typename point_t::template axis< 1 >::coord_t</td></tr>
- <tr class="separator:a1f91fc1334430fa1687684fcc107b480"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a7192e60183dc5bbaaa9c9344e2b00ccc"><td class="memItemLeft" align="right" valign="top"><a id="a7192e60183dc5bbaaa9c9344e2b00ccc"></a>
- using </td><td class="memItemRight" valign="bottom"><b>cached_location_t</b> = <a class="el" href="classboost_1_1gil_1_1point.html">difference_type</a></td></tr>
- <tr class="separator:a7192e60183dc5bbaaa9c9344e2b00ccc"><td class="memSeparator" colspan="2"> </td></tr>
- </table><table class="memberdecls">
- <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
- Public Member Functions</h2></td></tr>
- <tr class="memitem:a2fc5cf8788f95bf50cdab2e272fc7708"><td class="memItemLeft" align="right" valign="top"><a id="a2fc5cf8788f95bf50cdab2e272fc7708"></a>
- bool </td><td class="memItemRight" valign="bottom"><b>operator!=</b> (const Loc &p) const</td></tr>
- <tr class="separator:a2fc5cf8788f95bf50cdab2e272fc7708"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ac677b8d3ec02b5e28f5b485c6688f347"><td class="memItemLeft" align="right" valign="top"><a id="ac677b8d3ec02b5e28f5b485c6688f347"></a>
- x_iterator </td><td class="memItemRight" valign="bottom"><b>x_at</b> (x_coord_t dx, y_coord_t dy) const</td></tr>
- <tr class="separator:ac677b8d3ec02b5e28f5b485c6688f347"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a9254747c0198383ecf39c10f4a7844c5"><td class="memItemLeft" align="right" valign="top"><a id="a9254747c0198383ecf39c10f4a7844c5"></a>
- x_iterator </td><td class="memItemRight" valign="bottom"><b>x_at</b> (const <a class="el" href="classboost_1_1gil_1_1point.html">difference_type</a> &d) const</td></tr>
- <tr class="separator:a9254747c0198383ecf39c10f4a7844c5"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:abd3d3c6fcce3ce7c72de0d2059fd015e"><td class="memItemLeft" align="right" valign="top"><a id="abd3d3c6fcce3ce7c72de0d2059fd015e"></a>
- y_iterator </td><td class="memItemRight" valign="bottom"><b>y_at</b> (x_coord_t dx, y_coord_t dy) const</td></tr>
- <tr class="separator:abd3d3c6fcce3ce7c72de0d2059fd015e"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a4c22db3e04d46f370dae91de935233fb"><td class="memItemLeft" align="right" valign="top"><a id="a4c22db3e04d46f370dae91de935233fb"></a>
- y_iterator </td><td class="memItemRight" valign="bottom"><b>y_at</b> (const <a class="el" href="classboost_1_1gil_1_1point.html">difference_type</a> &d) const</td></tr>
- <tr class="separator:a4c22db3e04d46f370dae91de935233fb"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a26fb7b21c165511095079ac298816209"><td class="memItemLeft" align="right" valign="top"><a id="a26fb7b21c165511095079ac298816209"></a>
- Loc </td><td class="memItemRight" valign="bottom"><b>xy_at</b> (x_coord_t dx, y_coord_t dy) const</td></tr>
- <tr class="separator:a26fb7b21c165511095079ac298816209"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a7cd646736e5f090adc2ae141a5f690c9"><td class="memItemLeft" align="right" valign="top"><a id="a7cd646736e5f090adc2ae141a5f690c9"></a>
- Loc </td><td class="memItemRight" valign="bottom"><b>xy_at</b> (const <a class="el" href="classboost_1_1gil_1_1point.html">difference_type</a> &d) const</td></tr>
- <tr class="separator:a7cd646736e5f090adc2ae141a5f690c9"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a99149c579785498e03160ecb1a41609d"><td class="memTemplParams" colspan="2"><a id="a99149c579785498e03160ecb1a41609d"></a>
- template<std::size_t D> </td></tr>
- <tr class="memitem:a99149c579785498e03160ecb1a41609d"><td class="memTemplItemLeft" align="right" valign="top">axis< D >::iterator & </td><td class="memTemplItemRight" valign="bottom"><b>axis_iterator</b> ()</td></tr>
- <tr class="separator:a99149c579785498e03160ecb1a41609d"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:afbe31de642fbd6534226beb9eaeeba17"><td class="memTemplParams" colspan="2"><a id="afbe31de642fbd6534226beb9eaeeba17"></a>
- template<std::size_t D> </td></tr>
- <tr class="memitem:afbe31de642fbd6534226beb9eaeeba17"><td class="memTemplItemLeft" align="right" valign="top">axis< D >::iterator const & </td><td class="memTemplItemRight" valign="bottom"><b>axis_iterator</b> () const</td></tr>
- <tr class="separator:afbe31de642fbd6534226beb9eaeeba17"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a149f9c63d1806d859360960fb66f7e71"><td class="memTemplParams" colspan="2"><a id="a149f9c63d1806d859360960fb66f7e71"></a>
- template<std::size_t D> </td></tr>
- <tr class="memitem:a149f9c63d1806d859360960fb66f7e71"><td class="memTemplItemLeft" align="right" valign="top">axis< D >::iterator </td><td class="memTemplItemRight" valign="bottom"><b>axis_iterator</b> (const <a class="el" href="classboost_1_1gil_1_1point.html">point_t</a> &p) const</td></tr>
- <tr class="separator:a149f9c63d1806d859360960fb66f7e71"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a589233c96e618890b464e6ff4d53f36d"><td class="memItemLeft" align="right" valign="top"><a id="a589233c96e618890b464e6ff4d53f36d"></a>
- reference </td><td class="memItemRight" valign="bottom"><b>operator()</b> (x_coord_t dx, y_coord_t dy) const</td></tr>
- <tr class="separator:a589233c96e618890b464e6ff4d53f36d"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:aad6377cfeb4cde7ec3c0d98ca3ee943a"><td class="memItemLeft" align="right" valign="top"><a id="aad6377cfeb4cde7ec3c0d98ca3ee943a"></a>
- reference </td><td class="memItemRight" valign="bottom"><b>operator[]</b> (const <a class="el" href="classboost_1_1gil_1_1point.html">difference_type</a> &d) const</td></tr>
- <tr class="separator:aad6377cfeb4cde7ec3c0d98ca3ee943a"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a5b18bb8c3a765334dd1e3bd2eb8374f3"><td class="memItemLeft" align="right" valign="top"><a id="a5b18bb8c3a765334dd1e3bd2eb8374f3"></a>
- reference </td><td class="memItemRight" valign="bottom"><b>operator *</b> () const</td></tr>
- <tr class="separator:a5b18bb8c3a765334dd1e3bd2eb8374f3"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a5183ba70dbe786e8dd0cb258b73ed2d2"><td class="memItemLeft" align="right" valign="top"><a id="a5183ba70dbe786e8dd0cb258b73ed2d2"></a>
- Loc & </td><td class="memItemRight" valign="bottom"><b>operator+=</b> (const <a class="el" href="classboost_1_1gil_1_1point.html">difference_type</a> &d)</td></tr>
- <tr class="separator:a5183ba70dbe786e8dd0cb258b73ed2d2"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ae4adb8167f7979861b075323379317de"><td class="memItemLeft" align="right" valign="top"><a id="ae4adb8167f7979861b075323379317de"></a>
- Loc & </td><td class="memItemRight" valign="bottom"><b>operator-=</b> (const <a class="el" href="classboost_1_1gil_1_1point.html">difference_type</a> &d)</td></tr>
- <tr class="separator:ae4adb8167f7979861b075323379317de"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a889204668e3638b29078a7c51563f8e3"><td class="memItemLeft" align="right" valign="top"><a id="a889204668e3638b29078a7c51563f8e3"></a>
- Loc </td><td class="memItemRight" valign="bottom"><b>operator+</b> (const <a class="el" href="classboost_1_1gil_1_1point.html">difference_type</a> &d) const</td></tr>
- <tr class="separator:a889204668e3638b29078a7c51563f8e3"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ad00224b883bb26060c9b155e1b6b582d"><td class="memItemLeft" align="right" valign="top"><a id="ad00224b883bb26060c9b155e1b6b582d"></a>
- Loc </td><td class="memItemRight" valign="bottom"><b>operator-</b> (const <a class="el" href="classboost_1_1gil_1_1point.html">difference_type</a> &d) const</td></tr>
- <tr class="separator:ad00224b883bb26060c9b155e1b6b582d"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:abf9358069730bd5cd114f5cc07ee1f02"><td class="memItemLeft" align="right" valign="top"><a id="abf9358069730bd5cd114f5cc07ee1f02"></a>
- <a class="el" href="classboost_1_1gil_1_1point.html">cached_location_t</a> </td><td class="memItemRight" valign="bottom"><b>cache_location</b> (const <a class="el" href="classboost_1_1gil_1_1point.html">difference_type</a> &d) const</td></tr>
- <tr class="separator:abf9358069730bd5cd114f5cc07ee1f02"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a2e1034acfdb761f1457673463f2b8610"><td class="memItemLeft" align="right" valign="top"><a id="a2e1034acfdb761f1457673463f2b8610"></a>
- <a class="el" href="classboost_1_1gil_1_1point.html">cached_location_t</a> </td><td class="memItemRight" valign="bottom"><b>cache_location</b> (x_coord_t dx, y_coord_t dy) const</td></tr>
- <tr class="separator:a2e1034acfdb761f1457673463f2b8610"><td class="memSeparator" colspan="2"> </td></tr>
- </table><table class="memberdecls">
- <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-attribs"></a>
- Static Public Attributes</h2></td></tr>
- <tr class="memitem:acf81c27b3fffa67d66b47f46979b607e"><td class="memItemLeft" align="right" valign="top"><a id="acf81c27b3fffa67d66b47f46979b607e"></a>
- static const std::size_t </td><td class="memItemRight" valign="bottom"><b>num_dimensions</b> =2</td></tr>
- <tr class="separator:acf81c27b3fffa67d66b47f46979b607e"><td class="memSeparator" colspan="2"> </td></tr>
- </table><table class="memberdecls">
- <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
- Friends</h2></td></tr>
- <tr class="memitem:aec74e850d62b81bd65c6eec74f0c3352"><td class="memTemplParams" colspan="2"><a id="aec74e850d62b81bd65c6eec74f0c3352"></a>
- template<typename X > </td></tr>
- <tr class="memitem:aec74e850d62b81bd65c6eec74f0c3352"><td class="memTemplItemLeft" align="right" valign="top">class </td><td class="memTemplItemRight" valign="bottom"><b>pixel_2d_locator</b></td></tr>
- <tr class="separator:aec74e850d62b81bd65c6eec74f0c3352"><td class="memSeparator" colspan="2"> </td></tr>
- </table>
- <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
- <div class="textblock"><h3>template<typename Loc, typename XIterator, typename YIterator><br />
- class boost::gil::pixel_2d_locator_base< Loc, XIterator, YIterator ></h3>
- <p>base class for models of <a class="el" href="structboost_1_1gil_1_1_pixel_locator_concept.html" title="GIL's 2-dimensional locator over immutable GIL pixels.">PixelLocatorConcept</a></p>
- <p>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: </p>
- <div class="fragment"><div class="line">difference_type offset2(2,3);</div><div class="line">locator+=offset2;</div><div class="line">locator[offset2]=my_pixel;</div></div><!-- fragment --><p>In addition, each coordinate acts as a random-access iterator that can be modified separately: "++locator.x()" or "locator.y()+=10" thereby moving the locator horizontally or vertically.</p>
- <p>It is called a locator because it doesn't implement the complete interface of a random access iterator. For example, increment and decrement operations don't make sense (no way to specify dimension). Also 2D difference between two locators cannot be computed without knowledge of the X position within the image.</p>
- <p>This base class provides most of the methods and type aliases needed to create a model of a locator. GIL provides two locator models as subclasses of <code><a class="el" href="classboost_1_1gil_1_1pixel__2d__locator__base.html" title="base class for models of PixelLocatorConceptPixel locator is similar to a pixel iterator,...">pixel_2d_locator_base</a></code>. A memory-based locator, <code><a class="el" href="classboost_1_1gil_1_1memory__based__2d__locator.html" title="Memory-based pixel locator. Models: PixelLocatorConcept,HasDynamicXStepTypeConcept,...">memory_based_2d_locator</a></code> and a virtual locator, <code><a class="el" href="classboost_1_1gil_1_1virtual__2d__locator.html" title="A 2D locator over a virtual image Upon dereferencing, invokes a given function object passing it its ...">virtual_2d_locator</a></code>. The minimum functionality a subclass must provide is this: </p><div class="fragment"><div class="line"><span class="keyword">class </span>my_locator : <span class="keyword">public</span> pixel_2d_locator_base<my_locator, ..., ...> { <span class="comment">// supply the types for x-iterator and y-iterator</span></div><div class="line"> <span class="keyword">using</span> const_t = ...; <span class="comment">// read-only locator</span></div><div class="line"></div><div class="line"> <span class="keyword">template</span> <<span class="keyword">typename</span> Deref> <span class="keyword">struct </span>add_deref {</div><div class="line"> <span class="keyword">using</span> type = ...; <span class="comment">// locator that invokes the Deref dereference object upon pixel access</span></div><div class="line"> <span class="keyword">static</span> type make(<span class="keyword">const</span> my_locator& loc, <span class="keyword">const</span> Deref& d);</div><div class="line"> };</div><div class="line"></div><div class="line"> my_locator();</div><div class="line"> my_locator(<span class="keyword">const</span> my_locator& pl);</div><div class="line"></div><div class="line"> <span class="comment">// constructors with dynamic step in y (and x). Only valid for locators with dynamic steps</span></div><div class="line"> my_locator(<span class="keyword">const</span> my_locator& loc, coord_t y_step);</div><div class="line"> my_locator(<span class="keyword">const</span> my_locator& loc, coord_t x_step, coord_t y_step, <span class="keywordtype">bool</span> transpose);</div><div class="line"></div><div class="line"> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> my_locator& p) <span class="keyword">const</span>;</div><div class="line"></div><div class="line"> <span class="comment">// return _references_ to horizontal/vertical iterators. Advancing them moves this locator</span></div><div class="line"> x_iterator& x();</div><div class="line"> y_iterator& y();</div><div class="line"> x_iterator <span class="keyword">const</span>& x() <span class="keyword">const</span>;</div><div class="line"> y_iterator <span class="keyword">const</span>& y() <span class="keyword">const</span>;</div><div class="line"></div><div class="line"> <span class="comment">// return the vertical distance to another locator. Some models need the horizontal distance to compute it</span></div><div class="line"> y_coord_t y_distance_to(<span class="keyword">const</span> my_locator& loc2, x_coord_t xDiff) <span class="keyword">const</span>;</div><div class="line"></div><div class="line"> <span class="comment">// return true iff incrementing an x-iterator located at the last column will position it at the first</span></div><div class="line"> <span class="comment">// column of the next row. Some models need the image width to determine that.</span></div><div class="line"> <span class="keywordtype">bool</span> is_1d_traversable(x_coord_t width) <span class="keyword">const</span>;</div><div class="line">};</div></div><!-- fragment --><p>Models may choose to override some of the functions in the base class with more efficient versions. </p>
- </div><hr/>The documentation for this class was generated from the following file:<ul>
- <li><a class="el" href="locator_8hpp_source.html">locator.hpp</a></li>
- </ul>
- </div><!-- contents -->
- <!-- HTML footer for doxygen 1.8.13-->
- <!-- start footer part -->
- <hr class="footer"/>
- <address class="footer">
- <small>
- Generated by  <a href="http://www.doxygen.org/index.html">doxygen</a> 1.8.15
- </small>
- </address>
- </body>
- </html>
|