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: RandomAccessNDImageViewConcept 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_0372.html">RandomAccessNDImageViewConcept
</a>
40 <div class=
"contents">
41 <h1>RandomAccessNDImageViewConcept Struct Template Reference
<br>
43 [
<a class=
"el" href=
"g_i_l_0142.html">ImageViewNDLocatorConcept
</a>]
</small>
44 </h1><!-- doxytag: class="boost::gil::RandomAccessNDImageViewConcept" --><code>#include
<<a class=
"el" href=
"g_i_l_0091.html">gil_concept.hpp
</a>></code>
48 <a href=
"g_i_l_0371.html">List of all members.
</a><hr><a name=
"_details"></a><h2>Detailed Description
</h2>
49 <h3>template
<typename View
><br>
50 struct boost::gil::RandomAccessNDImageViewConcept
< View
></h3>
52 N-dimensional view over immutable values.
54 <div class=
"fragment"><pre class=
"fragment">concept RandomAccessNDImageViewConcept
<Regular View
> {
55 <span class=
"keyword">typename
</span> value_type;
56 <span class=
"keyword">typename
</span> reference;
<span class=
"comment">// result of dereferencing
</span>
57 <span class=
"keyword">typename
</span> difference_type;
<span class=
"comment">// result of operator-(iterator,iterator) (
1-dimensional!)
</span>
58 <span class=
"keyword">typename
</span> const_t; where RandomAccessNDImageViewConcept
<View
>;
<span class=
"comment">// same as View, but over immutable values
</span>
59 <span class=
"keyword">typename
</span> point_t; where PointNDConcept
<point_t
>;
<span class=
"comment">// N-dimensional point
</span>
60 <span class=
"keyword">typename
</span> locator; where RandomAccessNDLocatorConcept
<locator
>;
<span class=
"comment">// N-dimensional locator.
</span>
61 <span class=
"keyword">typename
</span> iterator; where RandomAccessTraversalConcept
<iterator
>;
<span class=
"comment">//
1-dimensional iterator over all values
</span>
62 <span class=
"keyword">typename
</span> reverse_iterator; where RandomAccessTraversalConcept
<reverse_iterator
>;
63 <span class=
"keyword">typename
</span> size_type;
<span class=
"comment">// the return value of size()
</span>
65 <span class=
"comment">// Equivalent to RandomAccessNDLocatorConcept::axis
</span>
66 <span class=
"keyword">template
</span> <<span class=
"keywordtype">size_t
</span> D
> <span class=
"keyword">struct
</span>axis {
67 <span class=
"keyword">typename
</span> coord_t = point_t::axis
<D
>::coord_t;
68 <span class=
"keyword">typename
</span> iterator; where RandomAccessTraversalConcept
<iterator
>;
<span class=
"comment">// iterator along D-th axis.
</span>
69 where SameType
<coord_t, iterator::difference_type
>;
70 where SameType
<iterator::value_type,value_type
>;
73 <span class=
"comment">// Defines the type of a view similar to this type, except it invokes Deref upon dereferencing
</span>
74 <span class=
"keyword">template
</span> <PixelDereferenceAdaptorConcept Deref
> <span class=
"keyword">struct
</span>add_deref {
75 <span class=
"keyword">typename
</span> type; where RandomAccessNDImageViewConcept
<type
>;
76 <span class=
"keyword">static
</span> type make(
<span class=
"keyword">const
</span> View
& v,
<span class=
"keyword">const
</span> Deref
& deref);
79 <span class=
"keyword">static
</span> <span class=
"keyword">const
</span> <span class=
"keywordtype">size_t
</span> num_dimensions = point_t::num_dimensions;
81 <span class=
"comment">// Create from a locator at the top-left corner and dimensions
</span>
82 View::View(
<span class=
"keyword">const
</span> locator
&,
<span class=
"keyword">const
</span> point_type
&);
84 size_type View::size()
<span class=
"keyword">const
</span>;
<span class=
"comment">// total number of elements
</span>
85 reference operator[](View,
<span class=
"keyword">const
</span> difference_type
&)
<span class=
"keyword">const
</span>;
<span class=
"comment">//
1-dimensional reference
</span>
86 iterator View::begin()
<span class=
"keyword">const
</span>;
87 iterator View::end()
<span class=
"keyword">const
</span>;
88 reverse_iterator View::rbegin()
<span class=
"keyword">const
</span>;
89 reverse_iterator View::rend()
<span class=
"keyword">const
</span>;
90 iterator View::at(
<span class=
"keyword">const
</span> point_t
&);
91 point_t View::dimensions()
<span class=
"keyword">const
</span>;
<span class=
"comment">// number of elements along each dimension
</span>
92 <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>
94 <span class=
"comment">// iterator along a given dimension starting at a given point
</span>
95 <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>;
97 reference operator()(View,
<span class=
"keyword">const
</span> point_t
&)
<span class=
"keyword">const
</span>;
99 </pre></div> <table border=
"0" cellpadding=
"0" cellspacing=
"0">
101 <tr><td colspan=
"2"><br><h2>Public Member Functions
</h2></td></tr>
102 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top"><a class=
"anchor" name=
"b0a0dbf6ca9028bbbb2240cad5882537"></a><!-- doxytag: member="boost::gil::RandomAccessNDImageViewConcept::constraints" ref="b0a0dbf6ca9028bbbb2240cad5882537" args="()" -->
103 void
</td><td class=
"memItemRight" valign=
"bottom"><b>constraints
</b> ()
</td></tr>
105 <tr><td colspan=
"2"><br><h2>Public Attributes
</h2></td></tr>
106 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top"><a class=
"anchor" name=
"ac435eb4d053aa36fa4760f634ca37ca"></a><!-- doxytag: member="boost::gil::RandomAccessNDImageViewConcept::view" ref="ac435eb4d053aa36fa4760f634ca37ca" args="" -->
107 View
</td><td class=
"memItemRight" valign=
"bottom"><b>view
</b></td></tr>
110 <hr>The documentation for this struct was generated from the following file:
<ul>
111 <li><a class=
"el" href=
"g_i_l_0091.html">gil_concept.hpp
</a></ul>
113 <hr size=
"1"><address style=
"text-align: right;"><small>Generated on Sat May
2 13:
50:
18 2009 for Generic Image Library by
114 <a href=
"http://www.doxygen.org/index.html">
115 <img src=
"doxygen.png" alt=
"doxygen" align=
"middle" border=
"0"></a> 1.5.6 </small></address>