Imported Upstream version 1.72.0
[platform/upstream/boost.git] / libs / gil / doc / html / reference / classboost_1_1gil_1_1image__view.html
1 <!-- HTML header for doxygen 1.8.13-->
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml">
4   <head>
5     <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
6     <meta http-equiv="X-UA-Compatible" content="IE=9"/>
7     <meta name="generator" content="Doxygen 1.8.15"/>
8     <meta name="viewport" content="width=device-width, initial-scale=1"/>
9     <title>Generic Image Library: image_view&lt; Loc &gt; Class Template Reference</title>
10     <link href="tabs.css" rel="stylesheet" type="text/css"/>
11     <script type="text/javascript" src="jquery.js"></script>
12     <script type="text/javascript" src="dynsections.js"></script>
13     <link href="doxygen.css" rel="stylesheet" type="text/css" />
14     <link href="doxygen-boost.css" rel="stylesheet" type="text/css"/>
15   </head>
16   <body>
17     <div class="boost-header">
18       <table border="0" cellpadding="7" cellspacing="0" width="100%" summary="header">
19         <tr>
20           <td valign="top" width="300">
21             <h3><a href="../index.html"><img alt="Boost GIL" src="../_static/gil.png" border="0"></a></h3>
22           </td>
23           <td ><h1 align="center"><a href="../index.html"></a></h1></td>
24           <td></td>
25         </tr>
26       </table>
27     </div>
28     <hr/>
29     <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
30 <!-- Generated by Doxygen 1.8.15 -->
31 <script type="text/javascript" src="menudata.js"></script>
32 <script type="text/javascript" src="menu.js"></script>
33 <script type="text/javascript">
34 /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
35 $(function() {
36   initMenu('',false,false,'search.php','Search');
37 });
38 /* @license-end */</script>
39 <div id="main-nav"></div>
40 <div id="nav-path" class="navpath">
41   <ul>
42 <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_1image__view.html">image_view</a></li>  </ul>
43 </div>
44 </div><!-- top -->
45 <div class="header">
46   <div class="summary">
47 <a href="#pub-types">Public Types</a> &#124;
48 <a href="#pub-methods">Public Member Functions</a> &#124;
49 <a href="#pub-static-attribs">Static Public Attributes</a> &#124;
50 <a href="#friends">Friends</a> &#124;
51 <a href="classboost_1_1gil_1_1image__view-members.html">List of all members</a>  </div>
52   <div class="headertitle">
53 <div class="title">image_view&lt; Loc &gt; Class Template Reference<div class="ingroups"><a class="el" href="group___image_view.html">Image View</a> &raquo; <a class="el" href="group___image_view_model.html">Models</a><a class="el" href="group___pixel_based.html">PixelBased</a> &raquo;  &#124; <a class="el" href="group___pixel_based_model.html">Models</a></div></div>  </div>
54 </div><!--header-->
55 <div class="contents">
56
57 <p>A lightweight object that interprets memory as a 2D array of pixels. Models <a class="el" href="structboost_1_1gil_1_1_image_view_concept.html" title="GIL&#39;s 2-dimensional view over immutable GIL pixels.">ImageViewConcept</a>,<a class="el" href="structboost_1_1gil_1_1_pixel_based_concept.html" title="Concept for all pixel-based GIL constructs.">PixelBasedConcept</a>,<a class="el" href="structboost_1_1gil_1_1_has_dynamic_x_step_type_concept.html" title="Concept for iterators, locators and views that can define a type just like the given iterator,...">HasDynamicXStepTypeConcept</a>,<a class="el" href="structboost_1_1gil_1_1_has_dynamic_y_step_type_concept.html" title="Concept for locators and views that can define a type just like the given locator or view,...">HasDynamicYStepTypeConcept</a>,<a class="el" href="structboost_1_1gil_1_1_has_transposed_type_concept.html" title="Concept for locators and views that can define a type just like the given locator or view,...">HasTransposedTypeConcept</a>.  
58  <a href="classboost_1_1gil_1_1image__view.html#details">More...</a></p>
59
60 <p><code>#include &lt;<a class="el" href="image__view_8hpp_source.html">image_view.hpp</a>&gt;</code></p>
61 <table class="memberdecls">
62 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
63 Public Types</h2></td></tr>
64 <tr class="memitem:a7abcdca6e7744b40fb0c3affc72af7b5"><td class="memItemLeft" align="right" valign="top"><a id="a7abcdca6e7744b40fb0c3affc72af7b5"></a>
65 using&#160;</td><td class="memItemRight" valign="bottom"><b>value_type</b> = typename Loc::value_type</td></tr>
66 <tr class="separator:a7abcdca6e7744b40fb0c3affc72af7b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
67 <tr class="memitem:a0674ac7985b6fcefdadbd10a851a5634"><td class="memItemLeft" align="right" valign="top"><a id="a0674ac7985b6fcefdadbd10a851a5634"></a>
68 using&#160;</td><td class="memItemRight" valign="bottom"><b>reference</b> = typename Loc::reference</td></tr>
69 <tr class="separator:a0674ac7985b6fcefdadbd10a851a5634"><td class="memSeparator" colspan="2">&#160;</td></tr>
70 <tr class="memitem:acce44dd584f0aa3b00f2f389ee066cb9"><td class="memItemLeft" align="right" valign="top"><a id="acce44dd584f0aa3b00f2f389ee066cb9"></a>
71 using&#160;</td><td class="memItemRight" valign="bottom"><b>coord_t</b> = typename Loc::coord_t</td></tr>
72 <tr class="separator:acce44dd584f0aa3b00f2f389ee066cb9"><td class="memSeparator" colspan="2">&#160;</td></tr>
73 <tr class="memitem:a7ea478eb458e4d34ebca1fc9f3ea08b8"><td class="memItemLeft" align="right" valign="top"><a id="a7ea478eb458e4d34ebca1fc9f3ea08b8"></a>
74 using&#160;</td><td class="memItemRight" valign="bottom"><b>difference_type</b> = coord_t</td></tr>
75 <tr class="separator:a7ea478eb458e4d34ebca1fc9f3ea08b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
76 <tr class="memitem:a1f074e10b856d4efe55afcd7e60b9351"><td class="memItemLeft" align="right" valign="top"><a id="a1f074e10b856d4efe55afcd7e60b9351"></a>
77 using&#160;</td><td class="memItemRight" valign="bottom"><b>point_t</b> = typename Loc::point_t</td></tr>
78 <tr class="separator:a1f074e10b856d4efe55afcd7e60b9351"><td class="memSeparator" colspan="2">&#160;</td></tr>
79 <tr class="memitem:a3fe158ca06676cd158dda184713f3a12"><td class="memItemLeft" align="right" valign="top"><a id="a3fe158ca06676cd158dda184713f3a12"></a>
80 using&#160;</td><td class="memItemRight" valign="bottom"><b>locator</b> = Loc</td></tr>
81 <tr class="separator:a3fe158ca06676cd158dda184713f3a12"><td class="memSeparator" colspan="2">&#160;</td></tr>
82 <tr class="memitem:a2324a5209ab25d6576e491b534414e03"><td class="memItemLeft" align="right" valign="top"><a id="a2324a5209ab25d6576e491b534414e03"></a>
83 using&#160;</td><td class="memItemRight" valign="bottom"><b>const_t</b> = <a class="el" href="classboost_1_1gil_1_1image__view.html">image_view</a>&lt; typename Loc::const_t &gt;</td></tr>
84 <tr class="separator:a2324a5209ab25d6576e491b534414e03"><td class="memSeparator" colspan="2">&#160;</td></tr>
85 <tr class="memitem:aeb5f47409b6186fbfe99f7a722a46c7e"><td class="memItemLeft" align="right" valign="top"><a id="aeb5f47409b6186fbfe99f7a722a46c7e"></a>
86 using&#160;</td><td class="memItemRight" valign="bottom"><b>iterator</b> = <a class="el" href="classboost_1_1gil_1_1iterator__from__2d.html">iterator_from_2d</a>&lt; Loc &gt;</td></tr>
87 <tr class="separator:aeb5f47409b6186fbfe99f7a722a46c7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
88 <tr class="memitem:a9c0c0545f28332dc1ffb7f6a6843c670"><td class="memItemLeft" align="right" valign="top"><a id="a9c0c0545f28332dc1ffb7f6a6843c670"></a>
89 using&#160;</td><td class="memItemRight" valign="bottom"><b>const_iterator</b> = typename <a class="el" href="classboost_1_1gil_1_1iterator__from__2d.html">const_t::iterator</a></td></tr>
90 <tr class="separator:a9c0c0545f28332dc1ffb7f6a6843c670"><td class="memSeparator" colspan="2">&#160;</td></tr>
91 <tr class="memitem:a48486a43018bbd384f39c4c49158535d"><td class="memItemLeft" align="right" valign="top"><a id="a48486a43018bbd384f39c4c49158535d"></a>
92 using&#160;</td><td class="memItemRight" valign="bottom"><b>const_reference</b> = typename const_t::reference</td></tr>
93 <tr class="separator:a48486a43018bbd384f39c4c49158535d"><td class="memSeparator" colspan="2">&#160;</td></tr>
94 <tr class="memitem:adb20a441f99b568118020f45307769a7"><td class="memItemLeft" align="right" valign="top"><a id="adb20a441f99b568118020f45307769a7"></a>
95 using&#160;</td><td class="memItemRight" valign="bottom"><b>pointer</b> = typename std::iterator_traits&lt; <a class="el" href="classboost_1_1gil_1_1iterator__from__2d.html">iterator</a> &gt;::pointer</td></tr>
96 <tr class="separator:adb20a441f99b568118020f45307769a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
97 <tr class="memitem:adb9a673a4271b497ef05158e05170942"><td class="memItemLeft" align="right" valign="top"><a id="adb9a673a4271b497ef05158e05170942"></a>
98 using&#160;</td><td class="memItemRight" valign="bottom"><b>reverse_iterator</b> = std::reverse_iterator&lt; <a class="el" href="classboost_1_1gil_1_1iterator__from__2d.html">iterator</a> &gt;</td></tr>
99 <tr class="separator:adb9a673a4271b497ef05158e05170942"><td class="memSeparator" colspan="2">&#160;</td></tr>
100 <tr class="memitem:af38ce1af42d538f410180c265518d4f0"><td class="memItemLeft" align="right" valign="top"><a id="af38ce1af42d538f410180c265518d4f0"></a>
101 using&#160;</td><td class="memItemRight" valign="bottom"><b>size_type</b> = std::size_t</td></tr>
102 <tr class="separator:af38ce1af42d538f410180c265518d4f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
103 <tr class="memitem:a377f2654480af69090d6852aaf340168"><td class="memItemLeft" align="right" valign="top"><a id="a377f2654480af69090d6852aaf340168"></a>
104 using&#160;</td><td class="memItemRight" valign="bottom"><b>xy_locator</b> = locator</td></tr>
105 <tr class="separator:a377f2654480af69090d6852aaf340168"><td class="memSeparator" colspan="2">&#160;</td></tr>
106 <tr class="memitem:a7687807de93968306506aa013acff080"><td class="memItemLeft" align="right" valign="top"><a id="a7687807de93968306506aa013acff080"></a>
107 using&#160;</td><td class="memItemRight" valign="bottom"><b>x_iterator</b> = typename xy_locator::x_iterator</td></tr>
108 <tr class="separator:a7687807de93968306506aa013acff080"><td class="memSeparator" colspan="2">&#160;</td></tr>
109 <tr class="memitem:a9aa113b7c266d07c07d178add10b2066"><td class="memItemLeft" align="right" valign="top"><a id="a9aa113b7c266d07c07d178add10b2066"></a>
110 using&#160;</td><td class="memItemRight" valign="bottom"><b>y_iterator</b> = typename xy_locator::y_iterator</td></tr>
111 <tr class="separator:a9aa113b7c266d07c07d178add10b2066"><td class="memSeparator" colspan="2">&#160;</td></tr>
112 <tr class="memitem:a0379cdb0e6d5582756742070b4d83be6"><td class="memItemLeft" align="right" valign="top"><a id="a0379cdb0e6d5582756742070b4d83be6"></a>
113 using&#160;</td><td class="memItemRight" valign="bottom"><b>x_coord_t</b> = typename xy_locator::x_coord_t</td></tr>
114 <tr class="separator:a0379cdb0e6d5582756742070b4d83be6"><td class="memSeparator" colspan="2">&#160;</td></tr>
115 <tr class="memitem:a0a4967637a0bfa54685a9e6eac1a5a03"><td class="memItemLeft" align="right" valign="top"><a id="a0a4967637a0bfa54685a9e6eac1a5a03"></a>
116 using&#160;</td><td class="memItemRight" valign="bottom"><b>y_coord_t</b> = typename xy_locator::y_coord_t</td></tr>
117 <tr class="separator:a0a4967637a0bfa54685a9e6eac1a5a03"><td class="memSeparator" colspan="2">&#160;</td></tr>
118 </table><table class="memberdecls">
119 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
120 Public Member Functions</h2></td></tr>
121 <tr class="memitem:a1e8d705506e6c0f99fc859b6615a6d81"><td class="memItemLeft" align="right" valign="top"><a id="a1e8d705506e6c0f99fc859b6615a6d81"></a>
122 &#160;</td><td class="memItemRight" valign="bottom"><b>image_view</b> (<a class="el" href="classboost_1_1gil_1_1image__view.html">image_view</a> const &amp;img_view)</td></tr>
123 <tr class="separator:a1e8d705506e6c0f99fc859b6615a6d81"><td class="memSeparator" colspan="2">&#160;</td></tr>
124 <tr class="memitem:a03eb9314f3cc3907390d8ccbd96d5356"><td class="memTemplParams" colspan="2"><a id="a03eb9314f3cc3907390d8ccbd96d5356"></a>
125 template&lt;typename View &gt; </td></tr>
126 <tr class="memitem:a03eb9314f3cc3907390d8ccbd96d5356"><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><b>image_view</b> (View const &amp;view)</td></tr>
127 <tr class="separator:a03eb9314f3cc3907390d8ccbd96d5356"><td class="memSeparator" colspan="2">&#160;</td></tr>
128 <tr class="memitem:ab8eb47bf4eed4a7a11c5c0d10e075cc1"><td class="memTemplParams" colspan="2"><a id="ab8eb47bf4eed4a7a11c5c0d10e075cc1"></a>
129 template&lt;typename L2 &gt; </td></tr>
130 <tr class="memitem:ab8eb47bf4eed4a7a11c5c0d10e075cc1"><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><b>image_view</b> (point_t const &amp;dims, L2 const &amp;loc)</td></tr>
131 <tr class="separator:ab8eb47bf4eed4a7a11c5c0d10e075cc1"><td class="memSeparator" colspan="2">&#160;</td></tr>
132 <tr class="memitem:ac5fddd594d9c41775281a00d55234ea0"><td class="memTemplParams" colspan="2"><a id="ac5fddd594d9c41775281a00d55234ea0"></a>
133 template&lt;typename L2 &gt; </td></tr>
134 <tr class="memitem:ac5fddd594d9c41775281a00d55234ea0"><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><b>image_view</b> (coord_t width, coord_t height, L2 const &amp;loc)</td></tr>
135 <tr class="separator:ac5fddd594d9c41775281a00d55234ea0"><td class="memSeparator" colspan="2">&#160;</td></tr>
136 <tr class="memitem:a4486c9c9a4dad9842f5ea3cf2a229ad8"><td class="memTemplParams" colspan="2"><a id="a4486c9c9a4dad9842f5ea3cf2a229ad8"></a>
137 template&lt;typename View &gt; </td></tr>
138 <tr class="memitem:a4486c9c9a4dad9842f5ea3cf2a229ad8"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classboost_1_1gil_1_1image__view.html">image_view</a> &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><b>operator=</b> (View const &amp;view)</td></tr>
139 <tr class="separator:a4486c9c9a4dad9842f5ea3cf2a229ad8"><td class="memSeparator" colspan="2">&#160;</td></tr>
140 <tr class="memitem:a13a6c04354e3ba8da64fea3f277ec488"><td class="memItemLeft" align="right" valign="top"><a id="a13a6c04354e3ba8da64fea3f277ec488"></a>
141 <a class="el" href="classboost_1_1gil_1_1image__view.html">image_view</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (<a class="el" href="classboost_1_1gil_1_1image__view.html">image_view</a> const &amp;view)</td></tr>
142 <tr class="separator:a13a6c04354e3ba8da64fea3f277ec488"><td class="memSeparator" colspan="2">&#160;</td></tr>
143 <tr class="memitem:a33f5139da06a442d6ee04f9014bfcdcd"><td class="memTemplParams" colspan="2"><a id="a33f5139da06a442d6ee04f9014bfcdcd"></a>
144 template&lt;typename View &gt; </td></tr>
145 <tr class="memitem:a33f5139da06a442d6ee04f9014bfcdcd"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><b>operator==</b> (View const &amp;view) const</td></tr>
146 <tr class="separator:a33f5139da06a442d6ee04f9014bfcdcd"><td class="memSeparator" colspan="2">&#160;</td></tr>
147 <tr class="memitem:a7953a05477c86e874218cf7cc081059a"><td class="memTemplParams" colspan="2"><a id="a7953a05477c86e874218cf7cc081059a"></a>
148 template&lt;typename View &gt; </td></tr>
149 <tr class="memitem:a7953a05477c86e874218cf7cc081059a"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><b>operator!=</b> (View const &amp;view) const</td></tr>
150 <tr class="separator:a7953a05477c86e874218cf7cc081059a"><td class="memSeparator" colspan="2">&#160;</td></tr>
151 <tr class="memitem:a6abdcb0b8cadeb8f39806bd6413a2075"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1gil_1_1image__view.html#a6abdcb0b8cadeb8f39806bd6413a2075">swap</a> (<a class="el" href="classboost_1_1gil_1_1image__view.html">image_view</a>&lt; Loc &gt; &amp;other)</td></tr>
152 <tr class="memdesc:a6abdcb0b8cadeb8f39806bd6413a2075"><td class="mdescLeft">&#160;</td><td class="mdescRight">Exchanges the elements of the current view with those of <em>other</em> in constant time.  <a href="#a6abdcb0b8cadeb8f39806bd6413a2075">More...</a><br /></td></tr>
153 <tr class="separator:a6abdcb0b8cadeb8f39806bd6413a2075"><td class="memSeparator" colspan="2">&#160;</td></tr>
154 <tr class="memitem:a2319cf9375d4bee0b45f582b8f0217d7"><td class="memItemLeft" align="right" valign="top"><a id="a2319cf9375d4bee0b45f582b8f0217d7"></a>
155 auto&#160;</td><td class="memItemRight" valign="bottom"><b>dimensions</b> () const -&gt; point_t const &amp;</td></tr>
156 <tr class="separator:a2319cf9375d4bee0b45f582b8f0217d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
157 <tr class="memitem:a815ed07efea28a0d7021ff49ba470bd7"><td class="memItemLeft" align="right" valign="top"><a id="a815ed07efea28a0d7021ff49ba470bd7"></a>
158 auto&#160;</td><td class="memItemRight" valign="bottom"><b>pixels</b> () const -&gt; locator const &amp;</td></tr>
159 <tr class="separator:a815ed07efea28a0d7021ff49ba470bd7"><td class="memSeparator" colspan="2">&#160;</td></tr>
160 <tr class="memitem:a595bbd11024b000cb22b19833aae4e0c"><td class="memItemLeft" align="right" valign="top"><a id="a595bbd11024b000cb22b19833aae4e0c"></a>
161 auto&#160;</td><td class="memItemRight" valign="bottom"><b>width</b> () const -&gt; x_coord_t</td></tr>
162 <tr class="separator:a595bbd11024b000cb22b19833aae4e0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
163 <tr class="memitem:a88e53917e5d7dec9bf4e5ac7436ee368"><td class="memItemLeft" align="right" valign="top"><a id="a88e53917e5d7dec9bf4e5ac7436ee368"></a>
164 auto&#160;</td><td class="memItemRight" valign="bottom"><b>height</b> () const -&gt; y_coord_t</td></tr>
165 <tr class="separator:a88e53917e5d7dec9bf4e5ac7436ee368"><td class="memSeparator" colspan="2">&#160;</td></tr>
166 <tr class="memitem:aab91b38db9ae15088177215bc0c0bff4"><td class="memItemLeft" align="right" valign="top"><a id="aab91b38db9ae15088177215bc0c0bff4"></a>
167 auto&#160;</td><td class="memItemRight" valign="bottom"><b>num_channels</b> () const -&gt; std::size_t</td></tr>
168 <tr class="separator:aab91b38db9ae15088177215bc0c0bff4"><td class="memSeparator" colspan="2">&#160;</td></tr>
169 <tr class="memitem:a8dbef8d72f426f316b3a789ad884f47a"><td class="memItemLeft" align="right" valign="top"><a id="a8dbef8d72f426f316b3a789ad884f47a"></a>
170 bool&#160;</td><td class="memItemRight" valign="bottom"><b>is_1d_traversable</b> () const</td></tr>
171 <tr class="separator:a8dbef8d72f426f316b3a789ad884f47a"><td class="memSeparator" colspan="2">&#160;</td></tr>
172 <tr class="memitem:a644718bb2fb240de962dc3c9a1fdf0dc"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1gil_1_1image__view.html#a644718bb2fb240de962dc3c9a1fdf0dc">empty</a> () const</td></tr>
173 <tr class="memdesc:a644718bb2fb240de962dc3c9a1fdf0dc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if the view has no elements, false otherwise.  <a href="#a644718bb2fb240de962dc3c9a1fdf0dc">More...</a><br /></td></tr>
174 <tr class="separator:a644718bb2fb240de962dc3c9a1fdf0dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
175 <tr class="memitem:a34d0cb181d67db75fc76cf2c86714c63"><td class="memItemLeft" align="right" valign="top">auto&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1gil_1_1image__view.html#a34d0cb181d67db75fc76cf2c86714c63">front</a> () const -&gt; reference</td></tr>
176 <tr class="memdesc:a34d0cb181d67db75fc76cf2c86714c63"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a reference to the first element in raster order.  <a href="#a34d0cb181d67db75fc76cf2c86714c63">More...</a><br /></td></tr>
177 <tr class="separator:a34d0cb181d67db75fc76cf2c86714c63"><td class="memSeparator" colspan="2">&#160;</td></tr>
178 <tr class="memitem:a2250401399336343c9b61c4a115bb6f7"><td class="memItemLeft" align="right" valign="top">auto&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1gil_1_1image__view.html#a2250401399336343c9b61c4a115bb6f7">back</a> () const -&gt; reference</td></tr>
179 <tr class="memdesc:a2250401399336343c9b61c4a115bb6f7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a reference to the last element in raster order.  <a href="#a2250401399336343c9b61c4a115bb6f7">More...</a><br /></td></tr>
180 <tr class="separator:a2250401399336343c9b61c4a115bb6f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
181 </table><table class="memberdecls">
182 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-attribs"></a>
183 Static Public Attributes</h2></td></tr>
184 <tr class="memitem:acf81c27b3fffa67d66b47f46979b607e"><td class="memItemLeft" align="right" valign="top"><a id="acf81c27b3fffa67d66b47f46979b607e"></a>
185 static const std::size_t&#160;</td><td class="memItemRight" valign="bottom"><b>num_dimensions</b> =2</td></tr>
186 <tr class="separator:acf81c27b3fffa67d66b47f46979b607e"><td class="memSeparator" colspan="2">&#160;</td></tr>
187 </table><table class="memberdecls">
188 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
189 Friends</h2></td></tr>
190 <tr class="memitem:a5f0cfec8413ffae12b17b404eddaaf6a"><td class="memTemplParams" colspan="2"><a id="a5f0cfec8413ffae12b17b404eddaaf6a"></a>
191 template&lt;typename L2 &gt; </td></tr>
192 <tr class="memitem:a5f0cfec8413ffae12b17b404eddaaf6a"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><b>image_view</b></td></tr>
193 <tr class="separator:a5f0cfec8413ffae12b17b404eddaaf6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
194 <tr class="memitem:aa55f77566a36b3ef03e66b8397f49561"><td class="memTemplParams" colspan="2"><a id="aa55f77566a36b3ef03e66b8397f49561"></a>
195 template&lt;typename L2 &gt; </td></tr>
196 <tr class="memitem:aa55f77566a36b3ef03e66b8397f49561"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><b>swap</b> (<a class="el" href="classboost_1_1gil_1_1image__view.html">image_view</a>&lt; L2 &gt; &amp;lhs, <a class="el" href="classboost_1_1gil_1_1image__view.html">image_view</a>&lt; L2 &gt; &amp;rhs)</td></tr>
197 <tr class="separator:aa55f77566a36b3ef03e66b8397f49561"><td class="memSeparator" colspan="2">&#160;</td></tr>
198 </table><table class="memberdecls">
199 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
200 1D navigation</h2></td></tr>
201 <tr class="memitem:a157ecc8ecee74fb6357de299a35c67e3"><td class="memItemLeft" align="right" valign="top"><a id="a157ecc8ecee74fb6357de299a35c67e3"></a>
202 auto&#160;</td><td class="memItemRight" valign="bottom"><b>size</b> () const -&gt; size_type</td></tr>
203 <tr class="separator:a157ecc8ecee74fb6357de299a35c67e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
204 <tr class="memitem:a95b8089984481a1f3595046953fa4004"><td class="memItemLeft" align="right" valign="top"><a id="a95b8089984481a1f3595046953fa4004"></a>
205 auto&#160;</td><td class="memItemRight" valign="bottom"><b>begin</b> () const -&gt; <a class="el" href="classboost_1_1gil_1_1iterator__from__2d.html">iterator</a></td></tr>
206 <tr class="separator:a95b8089984481a1f3595046953fa4004"><td class="memSeparator" colspan="2">&#160;</td></tr>
207 <tr class="memitem:a5d058b33509da64442fe237865b067d9"><td class="memItemLeft" align="right" valign="top"><a id="a5d058b33509da64442fe237865b067d9"></a>
208 auto&#160;</td><td class="memItemRight" valign="bottom"><b>end</b> () const -&gt; <a class="el" href="classboost_1_1gil_1_1iterator__from__2d.html">iterator</a></td></tr>
209 <tr class="separator:a5d058b33509da64442fe237865b067d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
210 <tr class="memitem:a7bc2d60e99839c00eb4dd4a91b195d08"><td class="memItemLeft" align="right" valign="top"><a id="a7bc2d60e99839c00eb4dd4a91b195d08"></a>
211 auto&#160;</td><td class="memItemRight" valign="bottom"><b>rbegin</b> () const -&gt; reverse_iterator</td></tr>
212 <tr class="separator:a7bc2d60e99839c00eb4dd4a91b195d08"><td class="memSeparator" colspan="2">&#160;</td></tr>
213 <tr class="memitem:ac989fd437a35dee353e14b43751f56ed"><td class="memItemLeft" align="right" valign="top"><a id="ac989fd437a35dee353e14b43751f56ed"></a>
214 auto&#160;</td><td class="memItemRight" valign="bottom"><b>rend</b> () const -&gt; reverse_iterator</td></tr>
215 <tr class="separator:ac989fd437a35dee353e14b43751f56ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
216 <tr class="memitem:a4c5111d6f91876b62bde6f92ae9403b1"><td class="memItemLeft" align="right" valign="top"><a id="a4c5111d6f91876b62bde6f92ae9403b1"></a>
217 auto&#160;</td><td class="memItemRight" valign="bottom"><b>operator[]</b> (difference_type i) const -&gt; reference</td></tr>
218 <tr class="separator:a4c5111d6f91876b62bde6f92ae9403b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
219 <tr class="memitem:ad65791ddae8696c0dbbbc73db1b4a0aa"><td class="memItemLeft" align="right" valign="top"><a id="ad65791ddae8696c0dbbbc73db1b4a0aa"></a>
220 auto&#160;</td><td class="memItemRight" valign="bottom"><b>at</b> (difference_type i) const -&gt; <a class="el" href="classboost_1_1gil_1_1iterator__from__2d.html">iterator</a></td></tr>
221 <tr class="separator:ad65791ddae8696c0dbbbc73db1b4a0aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
222 <tr class="memitem:a2efca53545bd9b609b91cf12b99c410f"><td class="memItemLeft" align="right" valign="top"><a id="a2efca53545bd9b609b91cf12b99c410f"></a>
223 auto&#160;</td><td class="memItemRight" valign="bottom"><b>at</b> (point_t const &amp;p) const -&gt; <a class="el" href="classboost_1_1gil_1_1iterator__from__2d.html">iterator</a></td></tr>
224 <tr class="separator:a2efca53545bd9b609b91cf12b99c410f"><td class="memSeparator" colspan="2">&#160;</td></tr>
225 <tr class="memitem:a9042270d2f4d9ba6b052150a542bebeb"><td class="memItemLeft" align="right" valign="top"><a id="a9042270d2f4d9ba6b052150a542bebeb"></a>
226 auto&#160;</td><td class="memItemRight" valign="bottom"><b>at</b> (x_coord_t x, y_coord_t y) const -&gt; <a class="el" href="classboost_1_1gil_1_1iterator__from__2d.html">iterator</a></td></tr>
227 <tr class="separator:a9042270d2f4d9ba6b052150a542bebeb"><td class="memSeparator" colspan="2">&#160;</td></tr>
228 </table><table class="memberdecls">
229 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
230 2-D navigation</h2></td></tr>
231 <tr class="memitem:aab8b8d3bfd9befa31a1d9b7523c46e45"><td class="memItemLeft" align="right" valign="top"><a id="aab8b8d3bfd9befa31a1d9b7523c46e45"></a>
232 auto&#160;</td><td class="memItemRight" valign="bottom"><b>operator()</b> (point_t const &amp;p) const -&gt; reference</td></tr>
233 <tr class="separator:aab8b8d3bfd9befa31a1d9b7523c46e45"><td class="memSeparator" colspan="2">&#160;</td></tr>
234 <tr class="memitem:ac1ba86a4e353be9808da338969c12dd2"><td class="memItemLeft" align="right" valign="top"><a id="ac1ba86a4e353be9808da338969c12dd2"></a>
235 auto&#160;</td><td class="memItemRight" valign="bottom"><b>operator()</b> (x_coord_t x, y_coord_t y) const -&gt; reference</td></tr>
236 <tr class="separator:ac1ba86a4e353be9808da338969c12dd2"><td class="memSeparator" colspan="2">&#160;</td></tr>
237 <tr class="memitem:a298725de6f3c3f892c1e37edcee2a609"><td class="memTemplParams" colspan="2"><a id="a298725de6f3c3f892c1e37edcee2a609"></a>
238 template&lt;std::size_t D&gt; </td></tr>
239 <tr class="memitem:a298725de6f3c3f892c1e37edcee2a609"><td class="memTemplItemLeft" align="right" valign="top">auto&#160;</td><td class="memTemplItemRight" valign="bottom"><b>axis_iterator</b> (point_t const &amp;p) const -&gt; typename axis&lt; D &gt;::<a class="el" href="classboost_1_1gil_1_1iterator__from__2d.html">iterator</a></td></tr>
240 <tr class="separator:a298725de6f3c3f892c1e37edcee2a609"><td class="memSeparator" colspan="2">&#160;</td></tr>
241 <tr class="memitem:ab240900ad2c0ee110d8e970d7edcf607"><td class="memItemLeft" align="right" valign="top"><a id="ab240900ad2c0ee110d8e970d7edcf607"></a>
242 auto&#160;</td><td class="memItemRight" valign="bottom"><b>xy_at</b> (x_coord_t x, y_coord_t y) const -&gt; xy_locator</td></tr>
243 <tr class="separator:ab240900ad2c0ee110d8e970d7edcf607"><td class="memSeparator" colspan="2">&#160;</td></tr>
244 <tr class="memitem:a441d5363d482921daca888d6f57828d4"><td class="memItemLeft" align="right" valign="top"><a id="a441d5363d482921daca888d6f57828d4"></a>
245 auto&#160;</td><td class="memItemRight" valign="bottom"><b>xy_at</b> (point_t const &amp;p) const -&gt; locator</td></tr>
246 <tr class="separator:a441d5363d482921daca888d6f57828d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
247 </table><table class="memberdecls">
248 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
249 X navigation</h2></td></tr>
250 <tr class="memitem:a21760da4d30430b13cfa2a07de49bb18"><td class="memItemLeft" align="right" valign="top"><a id="a21760da4d30430b13cfa2a07de49bb18"></a>
251 auto&#160;</td><td class="memItemRight" valign="bottom"><b>x_at</b> (x_coord_t x, y_coord_t y) const -&gt; x_iterator</td></tr>
252 <tr class="separator:a21760da4d30430b13cfa2a07de49bb18"><td class="memSeparator" colspan="2">&#160;</td></tr>
253 <tr class="memitem:a579467124e60b80c4c6d86c0bf756710"><td class="memItemLeft" align="right" valign="top"><a id="a579467124e60b80c4c6d86c0bf756710"></a>
254 auto&#160;</td><td class="memItemRight" valign="bottom"><b>x_at</b> (point_t const &amp;p) const -&gt; x_iterator</td></tr>
255 <tr class="separator:a579467124e60b80c4c6d86c0bf756710"><td class="memSeparator" colspan="2">&#160;</td></tr>
256 <tr class="memitem:a3a2b6ef00ee3cc3591b4f303d0cb0976"><td class="memItemLeft" align="right" valign="top"><a id="a3a2b6ef00ee3cc3591b4f303d0cb0976"></a>
257 auto&#160;</td><td class="memItemRight" valign="bottom"><b>row_begin</b> (y_coord_t y) const -&gt; x_iterator</td></tr>
258 <tr class="separator:a3a2b6ef00ee3cc3591b4f303d0cb0976"><td class="memSeparator" colspan="2">&#160;</td></tr>
259 <tr class="memitem:a5f4164f1c7b64163af97338637dda372"><td class="memItemLeft" align="right" valign="top"><a id="a5f4164f1c7b64163af97338637dda372"></a>
260 auto&#160;</td><td class="memItemRight" valign="bottom"><b>row_end</b> (y_coord_t y) const -&gt; x_iterator</td></tr>
261 <tr class="separator:a5f4164f1c7b64163af97338637dda372"><td class="memSeparator" colspan="2">&#160;</td></tr>
262 </table><table class="memberdecls">
263 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
264 Y navigation</h2></td></tr>
265 <tr class="memitem:a096c7a2765c55fcec8511160b15ca4d4"><td class="memItemLeft" align="right" valign="top"><a id="a096c7a2765c55fcec8511160b15ca4d4"></a>
266 auto&#160;</td><td class="memItemRight" valign="bottom"><b>y_at</b> (x_coord_t x, y_coord_t y) const -&gt; y_iterator</td></tr>
267 <tr class="separator:a096c7a2765c55fcec8511160b15ca4d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
268 <tr class="memitem:a3a4e8d986252c6e11e6b15db50fa712f"><td class="memItemLeft" align="right" valign="top"><a id="a3a4e8d986252c6e11e6b15db50fa712f"></a>
269 auto&#160;</td><td class="memItemRight" valign="bottom"><b>y_at</b> (point_t const &amp;p) const -&gt; y_iterator</td></tr>
270 <tr class="separator:a3a4e8d986252c6e11e6b15db50fa712f"><td class="memSeparator" colspan="2">&#160;</td></tr>
271 <tr class="memitem:ab809740f9a6a7faf22e6b4f36ff92174"><td class="memItemLeft" align="right" valign="top"><a id="ab809740f9a6a7faf22e6b4f36ff92174"></a>
272 auto&#160;</td><td class="memItemRight" valign="bottom"><b>col_begin</b> (x_coord_t x) const -&gt; y_iterator</td></tr>
273 <tr class="separator:ab809740f9a6a7faf22e6b4f36ff92174"><td class="memSeparator" colspan="2">&#160;</td></tr>
274 <tr class="memitem:a9bf79486202054ee09c4250823f003ad"><td class="memItemLeft" align="right" valign="top"><a id="a9bf79486202054ee09c4250823f003ad"></a>
275 auto&#160;</td><td class="memItemRight" valign="bottom"><b>col_end</b> (x_coord_t x) const -&gt; y_iterator</td></tr>
276 <tr class="separator:a9bf79486202054ee09c4250823f003ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
277 </table>
278 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
279 <div class="textblock"><h3>template&lt;typename Loc&gt;<br />
280 class boost::gil::image_view&lt; Loc &gt;</h3>
281
282 <p>A lightweight object that interprets memory as a 2D array of pixels. Models <a class="el" href="structboost_1_1gil_1_1_image_view_concept.html" title="GIL&#39;s 2-dimensional view over immutable GIL pixels.">ImageViewConcept</a>,<a class="el" href="structboost_1_1gil_1_1_pixel_based_concept.html" title="Concept for all pixel-based GIL constructs.">PixelBasedConcept</a>,<a class="el" href="structboost_1_1gil_1_1_has_dynamic_x_step_type_concept.html" title="Concept for iterators, locators and views that can define a type just like the given iterator,...">HasDynamicXStepTypeConcept</a>,<a class="el" href="structboost_1_1gil_1_1_has_dynamic_y_step_type_concept.html" title="Concept for locators and views that can define a type just like the given locator or view,...">HasDynamicYStepTypeConcept</a>,<a class="el" href="structboost_1_1gil_1_1_has_transposed_type_concept.html" title="Concept for locators and views that can define a type just like the given locator or view,...">HasTransposedTypeConcept</a>. </p>
283 <p>Image view consists of a pixel 2D locator (defining the mechanism for navigating in 2D) and the image dimensions.</p>
284 <p>Image views to images are what ranges are to STL containers. They are lightweight objects, that don't own the pixels. It is the user's responsibility that the underlying data remains valid for the lifetime of the image view.</p>
285 <p>Similar to iterators and ranges, constness of views does not extend to constness of pixels. A const <code><a class="el" href="classboost_1_1gil_1_1image__view.html" title="A lightweight object that interprets memory as a 2D array of pixels. Models ImageViewConcept,...">image_view</a></code> does not allow changing its location in memory (resizing, moving) but does not prevent one from changing the pixels. The latter requires an image view whose value_type is const.</p>
286 <p>Images have interfaces consistent with STL 1D random access containers, so they can be used directly in STL algorithms like: </p><div class="fragment"><div class="line"><a class="code" href="group___s_t_l_optimizations.html#gaab999be608ae006f1127b8bb5145a227">std::fill</a>(img.begin(), img.end(), red_pixel);</div></div><!-- fragment --><p>In addition, horizontal, vertical and 2D random access iterators are provided.</p>
287 <p>Note also that <code><a class="el" href="classboost_1_1gil_1_1image__view.html" title="A lightweight object that interprets memory as a 2D array of pixels. Models ImageViewConcept,...">image_view</a></code> does not require that its element type be a pixel. It could be instantiated with a locator whose <code>value_type</code> models only <code><a class="el" href="structboost_1_1gil_1_1_regular.html" title="Concept for type regularity requirement.">Regular</a></code>. In this case the image view models the weaker <a class="el" href="structboost_1_1gil_1_1_random_access2_d_image_view_concept.html" title="2-dimensional view over immutable values">RandomAccess2DImageViewConcept</a>, and does not model <a class="el" href="structboost_1_1gil_1_1_pixel_based_concept.html" title="Concept for all pixel-based GIL constructs.">PixelBasedConcept</a>. Many generic algorithms don't require the elements to be pixels. </p>
288 </div><h2 class="groupheader">Member Function Documentation</h2>
289 <a id="a2250401399336343c9b61c4a115bb6f7"></a>
290 <h2 class="memtitle"><span class="permalink"><a href="#a2250401399336343c9b61c4a115bb6f7">&#9670;&nbsp;</a></span>back()</h2>
291
292 <div class="memitem">
293 <div class="memproto">
294 <table class="mlabels">
295   <tr>
296   <td class="mlabels-left">
297       <table class="memname">
298         <tr>
299           <td class="memname">auto back </td>
300           <td>(</td>
301           <td class="paramname"></td><td>)</td>
302           <td> const -&gt; reference
303     </td>
304         </tr>
305       </table>
306   </td>
307   <td class="mlabels-right">
308 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
309   </tr>
310 </table>
311 </div><div class="memdoc">
312
313 <p>Returns a reference to the last element in raster order. </p>
314 <dl class="section note"><dt>Note</dt><dd>Required by the ForwardCollection, since view model the concept. </dd></dl>
315 <dl class="section see"><dt>See also</dt><dd><a href="https://www.boost.org/libs/utility/Collection.html">https://www.boost.org/libs/utility/Collection.html</a> </dd></dl>
316
317 </div>
318 </div>
319 <a id="a644718bb2fb240de962dc3c9a1fdf0dc"></a>
320 <h2 class="memtitle"><span class="permalink"><a href="#a644718bb2fb240de962dc3c9a1fdf0dc">&#9670;&nbsp;</a></span>empty()</h2>
321
322 <div class="memitem">
323 <div class="memproto">
324 <table class="mlabels">
325   <tr>
326   <td class="mlabels-left">
327       <table class="memname">
328         <tr>
329           <td class="memname">bool empty </td>
330           <td>(</td>
331           <td class="paramname"></td><td>)</td>
332           <td> const</td>
333         </tr>
334       </table>
335   </td>
336   <td class="mlabels-right">
337 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
338   </tr>
339 </table>
340 </div><div class="memdoc">
341
342 <p>Returns true if the view has no elements, false otherwise. </p>
343 <dl class="section note"><dt>Note</dt><dd>Required by the Collection concept </dd></dl>
344 <dl class="section see"><dt>See also</dt><dd><a href="https://www.boost.org/libs/utility/Collection.html">https://www.boost.org/libs/utility/Collection.html</a> </dd></dl>
345
346 </div>
347 </div>
348 <a id="a34d0cb181d67db75fc76cf2c86714c63"></a>
349 <h2 class="memtitle"><span class="permalink"><a href="#a34d0cb181d67db75fc76cf2c86714c63">&#9670;&nbsp;</a></span>front()</h2>
350
351 <div class="memitem">
352 <div class="memproto">
353 <table class="mlabels">
354   <tr>
355   <td class="mlabels-left">
356       <table class="memname">
357         <tr>
358           <td class="memname">auto front </td>
359           <td>(</td>
360           <td class="paramname"></td><td>)</td>
361           <td> const -&gt; reference
362     </td>
363         </tr>
364       </table>
365   </td>
366   <td class="mlabels-right">
367 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
368   </tr>
369 </table>
370 </div><div class="memdoc">
371
372 <p>Returns a reference to the first element in raster order. </p>
373 <dl class="section note"><dt>Note</dt><dd>Required by the ForwardCollection, since view model the concept. </dd></dl>
374 <dl class="section see"><dt>See also</dt><dd><a href="https://www.boost.org/libs/utility/Collection.html">https://www.boost.org/libs/utility/Collection.html</a> </dd></dl>
375
376 </div>
377 </div>
378 <a id="a6abdcb0b8cadeb8f39806bd6413a2075"></a>
379 <h2 class="memtitle"><span class="permalink"><a href="#a6abdcb0b8cadeb8f39806bd6413a2075">&#9670;&nbsp;</a></span>swap()</h2>
380
381 <div class="memitem">
382 <div class="memproto">
383 <table class="mlabels">
384   <tr>
385   <td class="mlabels-left">
386       <table class="memname">
387         <tr>
388           <td class="memname">void swap </td>
389           <td>(</td>
390           <td class="paramtype"><a class="el" href="classboost_1_1gil_1_1image__view.html">image_view</a>&lt; Loc &gt; &amp;&#160;</td>
391           <td class="paramname"><em>other</em></td><td>)</td>
392           <td></td>
393         </tr>
394       </table>
395   </td>
396   <td class="mlabels-right">
397 <span class="mlabels"><span class="mlabel">inline</span></span>  </td>
398   </tr>
399 </table>
400 </div><div class="memdoc">
401
402 <p>Exchanges the elements of the current view with those of <em>other</em> in constant time. </p>
403 <dl class="section note"><dt>Note</dt><dd>Required by the Collection concept </dd></dl>
404 <dl class="section see"><dt>See also</dt><dd><a href="https://www.boost.org/libs/utility/Collection.html">https://www.boost.org/libs/utility/Collection.html</a> </dd></dl>
405
406 </div>
407 </div>
408 <hr/>The documentation for this class was generated from the following file:<ul>
409 <li><a class="el" href="image__view_8hpp_source.html">image_view.hpp</a></li>
410 </ul>
411 </div><!-- contents -->
412      <!-- HTML footer for doxygen 1.8.13-->
413      <!-- start footer part -->
414      <hr class="footer"/>
415      <address class="footer">
416       <small>
417         Generated by &#160;<a href="http://www.doxygen.org/index.html">doxygen</a> 1.8.15
418       </small>
419     </address>
420   </body>
421 </html>