Imported Upstream version 1.72.0
[platform/upstream/boost.git] / libs / gil / doc / html / reference / group___image.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</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><!-- top -->
41 <div class="header">
42   <div class="summary">
43 <a href="#groups">Modules</a>  </div>
44   <div class="headertitle">
45 <div class="title">Image</div>  </div>
46 </div><!--header-->
47 <div class="contents">
48
49 <p>N-dimensional container.  
50 <a href="#details">More...</a></p>
51 <table class="memberdecls">
52 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="groups"></a>
53 Modules</h2></td></tr>
54 <tr class="memitem:group___image_concept"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___image_concept.html">Concepts</a></td></tr>
55 <tr class="memdesc:group___image_concept"><td class="mdescLeft">&#160;</td><td class="mdescRight">Image concepts. <br /></td></tr>
56 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
57 <tr class="memitem:group___image_model"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___image_model.html">Models</a></td></tr>
58 <tr class="memdesc:group___image_model"><td class="mdescLeft">&#160;</td><td class="mdescRight">Image models. <br /></td></tr>
59 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
60 </table>
61 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
62 <p>N-dimensional container. </p>
63 <p>An image is a container of N-dimensional data. GIL provides only one model, a two dimensional image whose <code>value_type</code> is a pixel.</p>
64 <p>Images are regular types (which means they have a default constructor, a copy constructor, <code>operator=</code>, <code>operator==</code>, <code>operator!=</code>, and <code>swap</code>) As containers, images own the data, which means they allocate the data in their constructors and deallocate in the destructors. Their copy construction, assignment and equality comparison is deep (i.e. propagates the operation to the values). That makes images expensive to pass by value, unlike views.</p>
65 <p>Also, unlike views, images propagate their constness to the data. An const-qualified image does not allow for modifying its pixels and does not provide a mutable view over its pixels.</p>
66 <p>Images provide two services: they manage ownership of their data (the pixels) and they can return a view over their pixels. Algorithms predominantly operate on views. This is analogous to the STL: In the STL containers (like <code>std::vector</code>) provide ranges (<code>vec.begin()</code> and <code>vec.end()</code> ) and algorithms typically operate on ranges. The GIL equivalent of a range is an image view. </p>
67 </div><!-- contents -->
68      <!-- HTML footer for doxygen 1.8.13-->
69      <!-- start footer part -->
70      <hr class="footer"/>
71      <address class="footer">
72       <small>
73         Generated by &#160;<a href="http://www.doxygen.org/index.html">doxygen</a> 1.8.15
74       </small>
75     </address>
76   </body>
77 </html>