2
0
mirror of https://github.com/boostorg/gil.git synced 2026-02-22 15:32:10 +00:00
Files
gil/develop/doc/html/reference/dynamic__at__c_8hpp.html

156 lines
8.7 KiB
HTML

<!-- 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>dynamic_at_c.hpp File Reference</TITLE>
<META HTTP-EQUIV="content-type" CONTENT="text/html;charset=ISO-8859-1"/>
<link type="text/css" rel="stylesheet" href="../_static/style.css">
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
</head>
<body>
<div class="header">
<table border="0" cellpadding="7" cellspacing="0" width="100%" summary="header">
<tr>
<td valign="top" width="300">
<h3><a href="../index.html"><img
alt="C++ Boost" src="../_static/boost.png" border="0"></a></h3>
</td>
<td >
<h1 align="center"><a href="../index.html"></a></h1>
</td>
<td>
</td>
</tr>
</table>
</div>
<hr/>
<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>
</div>
<!-- End Header -->
<!-- Generated by Doxygen 1.8.6 -->
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_1878a3f4746a95c6aad317458cc7ef80.html">boost</a></li><li class="navelem"><a class="el" href="dir_df4750f408086f9b9c1b5ee4251365ff.html">gil</a></li><li class="navelem"><a class="el" href="dir_0f86d4ff96b1aea424a4a0f509d03bc0.html">extension</a></li><li class="navelem"><a class="el" href="dir_1a56ea1a3a929887046b273f6b45aa06.html">dynamic_image</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#namespaces">Namespaces</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">dynamic_at_c.hpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>Constructs for static-to-dynamic integer convesion.
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &quot;<a class="el" href="gil__config_8hpp_source.html">../../gil_config.hpp</a>&quot;</code><br/>
<code>#include &lt;cassert&gt;</code><br/>
<code>#include &lt;stdexcept&gt;</code><br/>
<code>#include &lt;boost/mpl/at.hpp&gt;</code><br/>
<code>#include &lt;boost/mpl/size.hpp&gt;</code><br/>
</div>
<p><a href="dynamic__at__c_8hpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespaceboost"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceboost.html">boost</a></td></tr>
<tr class="memdesc:namespaceboost"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pixel 2D LOCATOR. <br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a284cc661c47878d3d648be495b7e09fa"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a284cc661c47878d3d648be495b7e09fa"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>GIL_AT_C_VALUE</b>(z, N, text)&#160;&#160;&#160;mpl::at_c&lt;IntTypes,S+N&gt;::type::value,</td></tr>
<tr class="separator:a284cc661c47878d3d648be495b7e09fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abbcf9c74f745f7418dafd494a9d6fdcf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abbcf9c74f745f7418dafd494a9d6fdcf"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>GIL_DYNAMIC_AT_C_LIMIT</b>&#160;&#160;&#160;226</td></tr>
<tr class="separator:abbcf9c74f745f7418dafd494a9d6fdcf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2fbb33b20a818d17010265c76e568309"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><b>GIL_AT_C_LOOKUP</b>(z, NUM, text)</td></tr>
<tr class="separator:a2fbb33b20a818d17010265c76e568309"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a98b08655eec7fc05a2cdd4205455b2d5"><td class="memTemplParams" colspan="2"><a class="anchor" id="a98b08655eec7fc05a2cdd4205455b2d5"></a>
template&lt;typename IntTypes , typename ValueType &gt; </td></tr>
<tr class="memitem:a98b08655eec7fc05a2cdd4205455b2d5"><td class="memTemplItemLeft" align="right" valign="top">ValueType&#160;</td><td class="memTemplItemRight" valign="bottom"><b>at_c</b> (std::size_t index)</td></tr>
<tr class="memdesc:a98b08655eec7fc05a2cdd4205455b2d5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Given an MPL Random Access Sequence and a dynamic index n, returns the value of the n-th element It constructs a lookup table at compile time. <br/></td></tr>
<tr class="separator:a98b08655eec7fc05a2cdd4205455b2d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Constructs for static-to-dynamic integer convesion. </p>
<dl class="section author"><dt>Author</dt><dd>Lubomir Bourdev and Hailin Jin <br/>
Adobe Systems Incorporated </dd></dl>
<dl class="section date"><dt>Date</dt><dd>2005-2007 <br/>
Last updated on May 4, 2006 </dd></dl>
</div><h2 class="groupheader">Macro Definition Documentation</h2>
<a class="anchor" id="a2fbb33b20a818d17010265c76e568309"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define GIL_AT_C_LOOKUP</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">z, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">NUM, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">text&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">template</span>&lt;std::<span class="keywordtype">size_t</span> S&gt; \</div>
<div class="line"> struct at_c_fn&lt;S,NUM&gt; { \</div>
<div class="line"> template &lt;typename IntTypes, typename ValueType&gt; inline \</div>
<div class="line"> static ValueType apply(std::size_t index) { \</div>
<div class="line"> static ValueType table[] = { \</div>
<div class="line"> BOOST_PP_REPEAT(NUM, GIL_AT_C_VALUE, BOOST_PP_EMPTY) \</div>
<div class="line"> }; \</div>
<div class="line"> return table[index]; \</div>
<div class="line"> } \</div>
<div class="line"> };</div>
</div><!-- fragment -->
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Mon Mar 26 2018 03:07:24 for Generic Image Library by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>
</body>
</html>