| <!-- 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: RandomAccessNDImageViewConcept 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_0372.html">RandomAccessNDImageViewConcept</a> |
| </div> |
| <div class="contents"> |
| <h1>RandomAccessNDImageViewConcept Struct Template Reference<br> |
| <small> |
| [<a class="el" href="g_i_l_0142.html">ImageViewNDLocatorConcept</a>]</small> |
| </h1><!-- doxytag: class="boost::gil::RandomAccessNDImageViewConcept" --><code>#include <<a class="el" href="g_i_l_0091.html">gil_concept.hpp</a>></code> |
| <p> |
| |
| <p> |
| <a href="g_i_l_0371.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2> |
| <h3>template<typename View><br> |
| struct boost::gil::RandomAccessNDImageViewConcept< View ></h3> |
| |
| N-dimensional view over immutable values. |
| <p> |
| <div class="fragment"><pre class="fragment">concept RandomAccessNDImageViewConcept<Regular View> { |
| <span class="keyword">typename</span> value_type; |
| <span class="keyword">typename</span> reference; <span class="comment">// result of dereferencing</span> |
| <span class="keyword">typename</span> difference_type; <span class="comment">// result of operator-(iterator,iterator) (1-dimensional!)</span> |
| <span class="keyword">typename</span> const_t; where RandomAccessNDImageViewConcept<View>; <span class="comment">// same as View, but over immutable values</span> |
| <span class="keyword">typename</span> point_t; where PointNDConcept<point_t>; <span class="comment">// N-dimensional point</span> |
| <span class="keyword">typename</span> locator; where RandomAccessNDLocatorConcept<locator>; <span class="comment">// N-dimensional locator.</span> |
| <span class="keyword">typename</span> iterator; where RandomAccessTraversalConcept<iterator>; <span class="comment">// 1-dimensional iterator over all values</span> |
| <span class="keyword">typename</span> reverse_iterator; where RandomAccessTraversalConcept<reverse_iterator>; |
| <span class="keyword">typename</span> size_type; <span class="comment">// the return value of size()</span> |
| |
| <span class="comment">// Equivalent to RandomAccessNDLocatorConcept::axis</span> |
| <span class="keyword">template</span> <<span class="keywordtype">size_t</span> D> <span class="keyword">struct </span>axis { |
| <span class="keyword">typename</span> coord_t = point_t::axis<D>::coord_t; |
| <span class="keyword">typename</span> iterator; where RandomAccessTraversalConcept<iterator>; <span class="comment">// iterator along D-th axis.</span> |
| where SameType<coord_t, iterator::difference_type>; |
| where SameType<iterator::value_type,value_type>; |
| }; |
| |
| <span class="comment">// Defines the type of a view similar to this type, except it invokes Deref upon dereferencing</span> |
| <span class="keyword">template</span> <PixelDereferenceAdaptorConcept Deref> <span class="keyword">struct </span>add_deref { |
| <span class="keyword">typename</span> type; where RandomAccessNDImageViewConcept<type>; |
| <span class="keyword">static</span> type make(<span class="keyword">const</span> View& v, <span class="keyword">const</span> Deref& deref); |
| }; |
| |
| <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">size_t</span> num_dimensions = point_t::num_dimensions; |
| |
| <span class="comment">// Create from a locator at the top-left corner and dimensions</span> |
| View::View(<span class="keyword">const</span> locator&, <span class="keyword">const</span> point_type&); |
| |
| size_type View::size() <span class="keyword">const</span>; <span class="comment">// total number of elements</span> |
| reference operator[](View, <span class="keyword">const</span> difference_type&) <span class="keyword">const</span>; <span class="comment">// 1-dimensional reference</span> |
| iterator View::begin() <span class="keyword">const</span>; |
| iterator View::end() <span class="keyword">const</span>; |
| reverse_iterator View::rbegin() <span class="keyword">const</span>; |
| reverse_iterator View::rend() <span class="keyword">const</span>; |
| iterator View::at(<span class="keyword">const</span> point_t&); |
| point_t View::dimensions() <span class="keyword">const</span>; <span class="comment">// number of elements along each dimension</span> |
| <span class="keywordtype">bool</span> View::is_1d_traversable() <span class="keyword">const</span>; <span class="comment">// can an iterator over the first dimension visit each value? I.e. are there gaps between values?</span> |
| |
| <span class="comment">// iterator along a given dimension starting at a given point</span> |
| <span class="keyword">template</span> <<span class="keywordtype">size_t</span> D> View::axis<D>::iterator View::axis_iterator(<span class="keyword">const</span> point_t&) <span class="keyword">const</span>; |
| |
| reference operator()(View,<span class="keyword">const</span> point_t&) <span class="keyword">const</span>; |
| }; |
| </pre></div> <table border="0" cellpadding="0" cellspacing="0"> |
| <tr><td></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="b0a0dbf6ca9028bbbb2240cad5882537"></a><!-- doxytag: member="boost::gil::RandomAccessNDImageViewConcept::constraints" ref="b0a0dbf6ca9028bbbb2240cad5882537" args="()" --> |
| void </td><td class="memItemRight" valign="bottom"><b>constraints</b> ()</td></tr> |
| |
| <tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr> |
| <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ac435eb4d053aa36fa4760f634ca37ca"></a><!-- doxytag: member="boost::gil::RandomAccessNDImageViewConcept::view" ref="ac435eb4d053aa36fa4760f634ca37ca" args="" --> |
| View </td><td class="memItemRight" valign="bottom"><b>view</b></td></tr> |
| |
| </table> |
| <hr>The documentation for this struct was generated from the following file:<ul> |
| <li><a class="el" href="g_i_l_0091.html">gil_concept.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> |