| <!-- Copyright 2008 Lubomir Bourdev and Hailin Jin |
| |
| Distributed under the Boost Software License, Version 1.0. |
| (See accompanying file LICENSE_1_0.txt or copy at |
| http://www.boost.org/LICENSE_1_0.txt) |
| --> |
| |
| <!-- |
| Copyright 2005-2007 Adobe Systems Incorporated |
| Distributed under the MIT License (see accompanying file LICENSE_1_0_0.txt |
| or a copy at http://stlab.adobe.com/licenses.html) |
| |
| Some files are held under additional license. |
| Please see "http://stlab.adobe.com/licenses.html" for more information. |
| --> |
| |
| <!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" lang="en" xml:lang="en"> |
| |
| <head> |
| <TITLE>Generic Image Library: planar_pixel_iterator Struct Template Reference</TITLE> |
| <META HTTP-EQUIV="content-type" CONTENT="text/html;charset=ISO-8859-1"/> |
| <LINK TYPE="text/css" REL="stylesheet" HREF="adobe_source.css"/> |
| </head> |
| <body> |
| <table border="0" cellspacing="0" cellpadding="0" style='width: 100%; margin: 0; padding: 0'><tr> |
| <td width="100%" valign="top" style='padding-left: 10px; padding-right: 10px; padding-bottom: 10px'> |
| <div class="qindex"><a class="qindex" href="index.html">Modules</a> |
| | <a class="qindex" href="classes.html">Alphabetical List</a> |
| | <a class="qindex" href="annotated.html">Class List</a> |
| | <a class="qindex" href="dirs.html">Directories</a> |
| | <a class="qindex" href="files.html">File List</a> |
| | <a class="qindex" href="../index.html">GIL Home Page</a> |
| </div> |
| <!-- End Header --> |
| <!-- Generated by Doxygen 1.5.6 --> |
| <div class="navpath"><a class="el" href="namespaceboost.html">boost</a>::<b>gil</b>::<a class="el" href="g_i_l_0609.html">planar_pixel_iterator</a> |
| </div> |
| <div class="contents"> |
| <h1>planar_pixel_iterator Struct Template Reference<br> |
| <small> |
| [<a class="el" href="g_i_l_0198.html">planar_pixel_iterator</a>, <a class="el" href="g_i_l_0123.html">planar_pixel_iterator</a>, <a class="el" href="g_i_l_0182.html">Models</a>]</small> |
| </h1><!-- doxytag: class="boost::gil::planar_pixel_iterator" --><code>#include <<a class="el" href="g_i_l_0246.html">planar_pixel_iterator.hpp</a>></code> |
| <p> |
| |
| <p> |
| <a href="g_i_l_0608.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2> |
| <h3>template<typename ChannelPtr, typename ColorSpace><br> |
| struct boost::gil::planar_pixel_iterator< ChannelPtr, ColorSpace ></h3> |
| |
| An iterator over planar pixels. Models <a class="el" href="g_i_l_0296.html" title="Color base whose elements all have the same type.">HomogeneousColorBaseConcept</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_0300.html" title="Concept for homogeneous pixel-based GIL constructs.">HomogeneousPixelBasedConcept</a>, <a class="el" href="g_i_l_0312.html" title="Concept of a random-access iterator that can be advanced in memory units (bytes or...">MemoryBasedIteratorConcept</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>. |
| <p> |
| Planar pixels have channel data that is not consecutive in memory. To abstract this we use classes to represent references and pointers to planar pixels. <table border="0" cellpadding="0" cellspacing="0"> |
| <tr><td></td></tr> |
| <tr><td colspan="2"><br><h2>Public Types</h2></td></tr> |
| <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5ed33836473e5d1a2f7535917fdd946b"></a><!-- doxytag: member="boost::gil::planar_pixel_iterator::value_type" ref="5ed33836473e5d1a2f7535917fdd946b" args="" --> |
| typedef parent_t::value_type </td><td class="memItemRight" valign="bottom"><b>value_type</b></td></tr> |
| |
| <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6c80bdd4dcae459dd371e3d941b83468"></a><!-- doxytag: member="boost::gil::planar_pixel_iterator::reference" ref="6c80bdd4dcae459dd371e3d941b83468" args="" --> |
| typedef parent_t::reference </td><td class="memItemRight" valign="bottom"><b>reference</b></td></tr> |
| |
| <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="af1864eda36a1748894be741b3d64bde"></a><!-- doxytag: member="boost::gil::planar_pixel_iterator::difference_type" ref="af1864eda36a1748894be741b3d64bde" args="" --> |
| typedef parent_t::difference_type </td><td class="memItemRight" valign="bottom"><b>difference_type</b></td></tr> |
| |
| <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> |
| <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f7f4c6e930eae79d9f5a16e8dc57a306"></a><!-- doxytag: member="boost::gil::planar_pixel_iterator::planar_pixel_iterator" ref="f7f4c6e930eae79d9f5a16e8dc57a306" args="(bool)" --> |
| </td><td class="memItemRight" valign="bottom"><b>planar_pixel_iterator</b> (bool)</td></tr> |
| |
| <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ea18ad75ac3b0be15eb771ac1c3971dc"></a><!-- doxytag: member="boost::gil::planar_pixel_iterator::planar_pixel_iterator" ref="ea18ad75ac3b0be15eb771ac1c3971dc" args="(const ChannelPtr &v0, const ChannelPtr &v1)" --> |
| </td><td class="memItemRight" valign="bottom"><b>planar_pixel_iterator</b> (const ChannelPtr &v0, const ChannelPtr &v1)</td></tr> |
| |
| <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="28877cb865567e049fe9682b1fd88d0e"></a><!-- doxytag: member="boost::gil::planar_pixel_iterator::planar_pixel_iterator" ref="28877cb865567e049fe9682b1fd88d0e" args="(const ChannelPtr &v0, const ChannelPtr &v1, const ChannelPtr &v2)" --> |
| </td><td class="memItemRight" valign="bottom"><b>planar_pixel_iterator</b> (const ChannelPtr &v0, const ChannelPtr &v1, const ChannelPtr &v2)</td></tr> |
| |
| <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="da13c4e8f8920e61b83a64070fdc40c0"></a><!-- doxytag: member="boost::gil::planar_pixel_iterator::planar_pixel_iterator" ref="da13c4e8f8920e61b83a64070fdc40c0" args="(const ChannelPtr &v0, const ChannelPtr &v1, const ChannelPtr &v2, const ChannelPtr &v3)" --> |
| </td><td class="memItemRight" valign="bottom"><b>planar_pixel_iterator</b> (const ChannelPtr &v0, const ChannelPtr &v1, const ChannelPtr &v2, const ChannelPtr &v3)</td></tr> |
| |
| <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e745f60902f8b2aa33e3972cf7593e82"></a><!-- doxytag: member="boost::gil::planar_pixel_iterator::planar_pixel_iterator" ref="e745f60902f8b2aa33e3972cf7593e82" args="(const ChannelPtr &v0, const ChannelPtr &v1, const ChannelPtr &v2, const ChannelPtr &v3, const ChannelPtr &v4)" --> |
| </td><td class="memItemRight" valign="bottom"><b>planar_pixel_iterator</b> (const ChannelPtr &v0, const ChannelPtr &v1, const ChannelPtr &v2, const ChannelPtr &v3, const ChannelPtr &v4)</td></tr> |
| |
| <tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="4a0581052e8a1d64a58e61468911fdc8"></a><!-- doxytag: member="boost::gil::planar_pixel_iterator::planar_pixel_iterator" ref="4a0581052e8a1d64a58e61468911fdc8" args="(const planar_pixel_iterator< IC1, C1 > &ptr)" --> |
| template<typename IC1, typename C1> </td></tr> |
| <tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><b>planar_pixel_iterator</b> (const <a class="el" href="g_i_l_0609.html">planar_pixel_iterator</a>< IC1, C1 > &ptr)</td></tr> |
| |
| <tr><td class="memTemplParams" nowrap colspan="2">template<typename P> </td></tr> |
| <tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="g_i_l_0609.html#340b95bc4afd461df05de5816763e8f8">planar_pixel_iterator</a> (P *pix)</td></tr> |
| |
| <tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="66b1540bddaee5d5f15e4a505c9a26dc"></a><!-- doxytag: member="boost::gil::planar_pixel_iterator::operator=" ref="66b1540bddaee5d5f15e4a505c9a26dc" args="(P *pix)" --> |
| template<typename P> </td></tr> |
| <tr><td class="memTemplItemLeft" nowrap align="right" valign="top"><a class="el" href="g_i_l_0609.html">planar_pixel_iterator</a> & </td><td class="memTemplItemRight" valign="bottom"><b>operator=</b> (P *pix)</td></tr> |
| |
| <tr><td class="memItemLeft" nowrap align="right" valign="top">reference </td><td class="memItemRight" valign="bottom"><a class="el" href="g_i_l_0609.html#de1279c4ed222b6efb0867c038765ea1">operator[]</a> (difference_type d) const </td></tr> |
| |
| <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ab60bdc7f960c3cc5d9529912de62dfd"></a><!-- doxytag: member="boost::gil::planar_pixel_iterator::operator->" ref="ab60bdc7f960c3cc5d9529912de62dfd" args="() const " --> |
| reference </td><td class="memItemRight" valign="bottom"><b>operator-></b> () const </td></tr> |
| |
| <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0b2d20d8487d7e06999f84a7f2384c02"></a><!-- doxytag: member="boost::gil::planar_pixel_iterator::operator<" ref="0b2d20d8487d7e06999f84a7f2384c02" args="(const planar_pixel_iterator &ptr) const " --> |
| bool </td><td class="memItemRight" valign="bottom"><b>operator<</b> (const <a class="el" href="g_i_l_0609.html">planar_pixel_iterator</a> &ptr) const </td></tr> |
| |
| <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f55209556661476edd93c0c9569c5c4b"></a><!-- doxytag: member="boost::gil::planar_pixel_iterator::operator!=" ref="f55209556661476edd93c0c9569c5c4b" args="(const planar_pixel_iterator &ptr) const " --> |
| bool </td><td class="memItemRight" valign="bottom"><b>operator!=</b> (const <a class="el" href="g_i_l_0609.html">planar_pixel_iterator</a> &ptr) const </td></tr> |
| |
| <tr><td colspan="2"><br><h2>Friends</h2></td></tr> |
| <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c09f73e325921cc50ebcd96bed0f8096"></a><!-- doxytag: member="boost::gil::planar_pixel_iterator::boost::iterator_core_access" ref="c09f73e325921cc50ebcd96bed0f8096" args="" --> |
| class </td><td class="memItemRight" valign="bottom"><b>boost::iterator_core_access</b></td></tr> |
| |
| </table> |
| <hr><h2>Constructor & Destructor Documentation</h2> |
| <a class="anchor" name="340b95bc4afd461df05de5816763e8f8"></a><!-- doxytag: member="boost::gil::planar_pixel_iterator::planar_pixel_iterator" ref="340b95bc4afd461df05de5816763e8f8" args="(P *pix)" --> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="g_i_l_0609.html">planar_pixel_iterator</a> </td> |
| <td>(</td> |
| <td class="paramtype">P * </td> |
| <td class="paramname"> <em>pix</em> </td> |
| <td> ) </td> |
| <td><code> [inline]</code></td> |
| </tr> |
| </table> |
| </div> |
| <div class="memdoc"> |
| |
| <p> |
| Copy constructor and operator= from pointers to compatible planar pixels or planar <a class="el" href="g_i_l_0599.html" title="Represents a pixel value (a container of channels). Models: HomogeneousColorBaseValueConcept...">pixel</a> references. That allow constructs like pointer = &value or pointer = &reference Since we should not override operator& that's the best we can do. |
| </div> |
| </div><p> |
| <hr><h2>Member Function Documentation</h2> |
| <a class="anchor" name="de1279c4ed222b6efb0867c038765ea1"></a><!-- doxytag: member="boost::gil::planar_pixel_iterator::operator[]" ref="de1279c4ed222b6efb0867c038765ea1" args="(difference_type d) const " --> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">reference operator[] </td> |
| <td>(</td> |
| <td class="paramtype">difference_type </td> |
| <td class="paramname"> <em>d</em> </td> |
| <td> ) </td> |
| <td> const<code> [inline]</code></td> |
| </tr> |
| </table> |
| </div> |
| <div class="memdoc"> |
| |
| <p> |
| For some reason operator[] provided by iterator_facade returns a custom class that is convertible to reference We require our own reference because it is registered in iterator_traits |
| </div> |
| </div><p> |
| <hr>The documentation for this struct was generated from the following file:<ul> |
| <li><a class="el" href="g_i_l_0246.html">planar_pixel_iterator.hpp</a></ul> |
| </div> |
| <hr size="1"><address style="text-align: right;"><small>Generated on Sat May 2 13:50:18 2009 for Generic Image Library by |
| <a href="http://www.doxygen.org/index.html"> |
| <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address> |
| </body> |
| </html> |