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: channel.hpp File 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=
"g_i_l_0076.html">boost
</a> »
<a class=
"el" href=
"g_i_l_0079.html">gil
</a>
40 <div class=
"contents">
41 <h1>channel.hpp File Reference
</h1><hr><a name=
"_details"></a><h2>Detailed Description
</h2>
44 <dl class=
"author" compact
><dt><b>Author:
</b></dt><dd>Lubomir Bourdev and Hailin Jin
<br>
45 Adobe Systems Incorporated
</dd></dl>
46 <dl class=
"date" compact
><dt><b>Date:
</b></dt><dd>2005-
2007 <br>
47 Last updated on May
6,
2007</dd></dl>
48 Definitions of standard GIL channel models
50 <code>#include
<limits
></code><br>
51 <code>#include
<cassert
></code><br>
52 <code>#include
<boost/cstdint.hpp
></code><br>
53 <code>#include
"<a class=
"el" href=
"g_i_l_0093.html">gil_config.hpp
</a>"</code><br>
54 <code>#include
"<a class=
"el" href=
"g_i_l_0642.html">utilities.hpp
</a>"</code><br>
57 <a href=
"g_i_l_0014.html">Go to the source code of this file.
</a><table border=
"0" cellpadding=
"0" cellspacing=
"0">
59 <tr><td colspan=
"2"><br><h2>Namespaces
</h2></td></tr>
60 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top">namespace
</td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"namespaceboost.html">boost
</a></td></tr>
62 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top">namespace
</td><td class=
"memItemRight" valign=
"bottom"><b>boost::gil
</b></td></tr>
64 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top">namespace
</td><td class=
"memItemRight" valign=
"bottom"><b>boost::gil::detail
</b></td></tr>
66 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top">namespace
</td><td class=
"memItemRight" valign=
"bottom"><b>std
</b></td></tr>
68 <tr><td colspan=
"2"><br><h2>Classes
</h2></td></tr>
69 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top">struct
</td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"g_i_l_0429.html">channel_traits
</a></td></tr>
71 <tr><td class=
"mdescLeft"> </td><td class=
"mdescRight">Traits for channels. Contains the following members:.
<a href=
"g_i_l_0429.html#_details">More...
</a><br></td></tr>
72 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top">struct
</td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"g_i_l_0620.html">scoped_channel_value
</a></td></tr>
74 <tr><td class=
"mdescLeft"> </td><td class=
"mdescRight">A channel adaptor that modifies the range of the source channel. Models:
<a class=
"el" href=
"g_i_l_0270.html" title=
"A channel that supports default construction.">ChannelValueConcept
</a>.
<a href=
"g_i_l_0620.html#_details">More...
</a><br></td></tr>
75 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top">class
</td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"g_i_l_0052.html">packed_channel_value
</a></td></tr>
77 <tr><td class=
"mdescLeft"> </td><td class=
"mdescRight">The value of a subbyte channel. Models:
<a class=
"el" href=
"g_i_l_0270.html" title=
"A channel that supports default construction.">ChannelValueConcept
</a>.
<a href=
"g_i_l_0052.html#_details">More...
</a><br></td></tr>
78 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top">class
</td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"g_i_l_0048.html">packed_channel_reference
< BitField, FirstBit, NumBits, false
></a></td></tr>
80 <tr><td class=
"mdescLeft"> </td><td class=
"mdescRight">A constant subbyte channel reference whose bit offset is fixed at compile time. Models
<a class=
"el" href=
"g_i_l_0264.html" title=
"A channel is the building block of a color. Color is defined as a mixture of primary...">ChannelConcept
</a>.
<a href=
"g_i_l_0048.html#_details">More...
</a><br></td></tr>
81 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top">class
</td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"g_i_l_0050.html">packed_channel_reference
< BitField, FirstBit, NumBits, true
></a></td></tr>
83 <tr><td class=
"mdescLeft"> </td><td class=
"mdescRight">A mutable subbyte channel reference whose bit offset is fixed at compile time. Models
<a class=
"el" href=
"g_i_l_0264.html" title=
"A channel is the building block of a color. Color is defined as a mixture of primary...">ChannelConcept
</a>.
<a href=
"g_i_l_0050.html#_details">More...
</a><br></td></tr>
84 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top">class
</td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"g_i_l_0054.html">packed_dynamic_channel_reference
< BitField, NumBits, false
></a></td></tr>
86 <tr><td class=
"mdescLeft"> </td><td class=
"mdescRight">Models a constant subbyte channel reference whose bit offset is a runtime parameter. Models
<a class=
"el" href=
"g_i_l_0264.html" title=
"A channel is the building block of a color. Color is defined as a mixture of primary...">ChannelConcept
</a> Same as packed_channel_reference, except that the offset is a runtime parameter.
<a href=
"g_i_l_0054.html#_details">More...
</a><br></td></tr>
87 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top">class
</td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"g_i_l_0056.html">packed_dynamic_channel_reference
< BitField, NumBits, true
></a></td></tr>
89 <tr><td class=
"mdescLeft"> </td><td class=
"mdescRight">Models a mutable subbyte channel reference whose bit offset is a runtime parameter. Models
<a class=
"el" href=
"g_i_l_0264.html" title=
"A channel is the building block of a color. Color is defined as a mixture of primary...">ChannelConcept
</a> Same as packed_channel_reference, except that the offset is a runtime parameter.
<a href=
"g_i_l_0056.html#_details">More...
</a><br></td></tr>
90 <tr><td colspan=
"2"><br><h2>Typedefs
</h2></td></tr>
91 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top"><a class=
"anchor" name=
"g7baf69eea57892aef15823b0339a7a13"></a><!-- doxytag: member="channel.hpp::bits8" ref="g7baf69eea57892aef15823b0339a7a13" args="" -->
92 typedef uint8_t
</td><td class=
"memItemRight" valign=
"bottom"><b>bits8
</b></td></tr>
94 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top"><a class=
"anchor" name=
"gf8674e88e0ffba62c485fa7213c897bc"></a><!-- doxytag: member="channel.hpp::bits16" ref="gf8674e88e0ffba62c485fa7213c897bc" args="" -->
95 typedef uint16_t
</td><td class=
"memItemRight" valign=
"bottom"><b>bits16
</b></td></tr>
97 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top"><a class=
"anchor" name=
"g78a76ea1fc2025b67d93c32bf5f0d108"></a><!-- doxytag: member="channel.hpp::bits32" ref="g78a76ea1fc2025b67d93c32bf5f0d108" args="" -->
98 typedef uint32_t
</td><td class=
"memItemRight" valign=
"bottom"><b>bits32
</b></td></tr>
100 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top"><a class=
"anchor" name=
"gbac6e224fbcb609ee77dc80fa3a21823"></a><!-- doxytag: member="channel.hpp::bits8s" ref="gbac6e224fbcb609ee77dc80fa3a21823" args="" -->
101 typedef int8_t
</td><td class=
"memItemRight" valign=
"bottom"><b>bits8s
</b></td></tr>
103 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top"><a class=
"anchor" name=
"gaf9d153286580c8f5c0fc6a3707c20a6"></a><!-- doxytag: member="channel.hpp::bits16s" ref="gaf9d153286580c8f5c0fc6a3707c20a6" args="" -->
104 typedef int16_t
</td><td class=
"memItemRight" valign=
"bottom"><b>bits16s
</b></td></tr>
106 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top"><a class=
"anchor" name=
"gf7fa01f32e1d2d1d17b3a15c01fd3780"></a><!-- doxytag: member="channel.hpp::bits32s" ref="gf7fa01f32e1d2d1d17b3a15c01fd3780" args="" -->
107 typedef int32_t
</td><td class=
"memItemRight" valign=
"bottom"><b>bits32s
</b></td></tr>
109 <tr><td class=
"memItemLeft" nowrap
align=
"right" valign=
"top"><a class=
"anchor" name=
"g59ce39e260cc83516fa743cd8ba55aa7"></a><!-- doxytag: member="channel.hpp::bits32f" ref="g59ce39e260cc83516fa743cd8ba55aa7" args="" -->
110 typedef scoped_channel_value
<br>
111 < float, float_zero, float_one
> </td><td class=
"memItemRight" valign=
"bottom"><b>bits32f
</b></td></tr>
113 <tr><td colspan=
"2"><br><h2>Functions
</h2></td></tr>
114 <tr><td class=
"memTemplParams" nowrap
colspan=
"2"><a class=
"anchor" name=
"g80e89636c0d110249fedf6ea14a477f7"></a><!-- doxytag: member="channel.hpp::swap" ref="g80e89636c0d110249fedf6ea14a477f7" args="(const boost::gil::packed_channel_reference< BF, FB, NB, M > x, R &y)" -->
115 template
<typename BF, int FB, int NB, bool M, typename R
> </td></tr>
116 <tr><td class=
"memTemplItemLeft" nowrap
align=
"right" valign=
"top">void
</td><td class=
"memTemplItemRight" valign=
"bottom"><a class=
"el" href=
"g_i_l_0176.html#g80e89636c0d110249fedf6ea14a477f7">swap
</a> (const boost::gil::packed_channel_reference
< BF, FB, NB, M
> x, R
&y)
</td></tr>
118 <tr><td class=
"mdescLeft"> </td><td class=
"mdescRight">swap for packed_channel_reference
<br></td></tr>
119 <tr><td class=
"memTemplParams" nowrap
colspan=
"2"><a class=
"anchor" name=
"g9541bc0769202d632e1b869e1cf217e0"></a><!-- doxytag: member="channel.hpp::swap" ref="g9541bc0769202d632e1b869e1cf217e0" args="(typename boost::gil::packed_channel_reference< BF, FB, NB, M >::value_type &x, const boost::gil::packed_channel_reference< BF, FB, NB, M > y)" -->
120 template
<typename BF, int FB, int NB, bool M
> </td></tr>
121 <tr><td class=
"memTemplItemLeft" nowrap
align=
"right" valign=
"top">void
</td><td class=
"memTemplItemRight" valign=
"bottom"><a class=
"el" href=
"g_i_l_0176.html#g9541bc0769202d632e1b869e1cf217e0">swap
</a> (typename boost::gil::packed_channel_reference
< BF, FB, NB, M
>::value_type
&x, const boost::gil::packed_channel_reference
< BF, FB, NB, M
> y)
</td></tr>
123 <tr><td class=
"mdescLeft"> </td><td class=
"mdescRight">swap for packed_channel_reference
<br></td></tr>
124 <tr><td class=
"memTemplParams" nowrap
colspan=
"2"><a class=
"anchor" name=
"g20a753330c605ac59c89aa784ab89eca"></a><!-- doxytag: member="channel.hpp::swap" ref="g20a753330c605ac59c89aa784ab89eca" args="(const boost::gil::packed_channel_reference< BF, FB, NB, M > x, const boost::gil::packed_channel_reference< BF, FB, NB, M > y)" -->
125 template
<typename BF, int FB, int NB, bool M
> </td></tr>
126 <tr><td class=
"memTemplItemLeft" nowrap
align=
"right" valign=
"top">void
</td><td class=
"memTemplItemRight" valign=
"bottom"><a class=
"el" href=
"g_i_l_0176.html#g20a753330c605ac59c89aa784ab89eca">swap
</a> (const boost::gil::packed_channel_reference
< BF, FB, NB, M
> x, const boost::gil::packed_channel_reference
< BF, FB, NB, M
> y)
</td></tr>
128 <tr><td class=
"mdescLeft"> </td><td class=
"mdescRight">swap for packed_channel_reference
<br></td></tr>
129 <tr><td class=
"memTemplParams" nowrap
colspan=
"2"><a class=
"anchor" name=
"g45affd7c290ef9a24ac79edbd6f9ca7f"></a><!-- doxytag: member="channel.hpp::swap" ref="g45affd7c290ef9a24ac79edbd6f9ca7f" args="(const boost::gil::packed_dynamic_channel_reference< BF, NB, M > x, R &y)" -->
130 template
<typename BF, int NB, bool M, typename R
> </td></tr>
131 <tr><td class=
"memTemplItemLeft" nowrap
align=
"right" valign=
"top">void
</td><td class=
"memTemplItemRight" valign=
"bottom"><a class=
"el" href=
"g_i_l_0175.html#g45affd7c290ef9a24ac79edbd6f9ca7f">swap
</a> (const boost::gil::packed_dynamic_channel_reference
< BF, NB, M
> x, R
&y)
</td></tr>
133 <tr><td class=
"mdescLeft"> </td><td class=
"mdescRight">swap for packed_dynamic_channel_reference
<br></td></tr>
134 <tr><td class=
"memTemplParams" nowrap
colspan=
"2"><a class=
"anchor" name=
"gc25302c1ae9ad02851565565fd95e03e"></a><!-- doxytag: member="channel.hpp::swap" ref="gc25302c1ae9ad02851565565fd95e03e" args="(typename boost::gil::packed_dynamic_channel_reference< BF, NB, M >::value_type &x, const boost::gil::packed_dynamic_channel_reference< BF, NB, M > y)" -->
135 template
<typename BF, int NB, bool M
> </td></tr>
136 <tr><td class=
"memTemplItemLeft" nowrap
align=
"right" valign=
"top">void
</td><td class=
"memTemplItemRight" valign=
"bottom"><a class=
"el" href=
"g_i_l_0175.html#gc25302c1ae9ad02851565565fd95e03e">swap
</a> (typename boost::gil::packed_dynamic_channel_reference
< BF, NB, M
>::value_type
&x, const boost::gil::packed_dynamic_channel_reference
< BF, NB, M
> y)
</td></tr>
138 <tr><td class=
"mdescLeft"> </td><td class=
"mdescRight">swap for packed_dynamic_channel_reference
<br></td></tr>
139 <tr><td class=
"memTemplParams" nowrap
colspan=
"2"><a class=
"anchor" name=
"gd5c9bdabc34d65825f30d2ae71cb07dc"></a><!-- doxytag: member="channel.hpp::swap" ref="gd5c9bdabc34d65825f30d2ae71cb07dc" args="(const boost::gil::packed_dynamic_channel_reference< BF, NB, M > x, const boost::gil::packed_dynamic_channel_reference< BF, NB, M > y)" -->
140 template
<typename BF, int NB, bool M
> </td></tr>
141 <tr><td class=
"memTemplItemLeft" nowrap
align=
"right" valign=
"top">void
</td><td class=
"memTemplItemRight" valign=
"bottom"><a class=
"el" href=
"g_i_l_0175.html#gd5c9bdabc34d65825f30d2ae71cb07dc">swap
</a> (const boost::gil::packed_dynamic_channel_reference
< BF, NB, M
> x, const boost::gil::packed_dynamic_channel_reference
< BF, NB, M
> y)
</td></tr>
143 <tr><td class=
"mdescLeft"> </td><td class=
"mdescRight">swap for packed_dynamic_channel_reference
<br></td></tr>
146 <hr size=
"1"><address style=
"text-align: right;"><small>Generated on Sat May
2 13:
50:
15 2009 for Generic Image Library by
147 <a href=
"http://www.doxygen.org/index.html">
148 <img src=
"doxygen.png" alt=
"doxygen" align=
"middle" border=
"0"></a> 1.5.6 </small></address>