1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/PTdecode/CImg-1.3.0/html/reference/namespacecimg__library_1_1cimg.html Mon Aug 03 14:09:20 2009 +0100 1.3 @@ -0,0 +1,1057 @@ 1.4 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 1.5 +<head> 1.6 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 1.7 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 1.8 +<meta content="David Tschumperle" name="author"></meta> 1.9 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 1.10 +<link rel="icon" type="image/png" href="favicon.png"></link> 1.11 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 1.12 +<link href="tabs.css" rel="stylesheet" type="text/css"> 1.13 +<style type="text/css"> 1.14 +<!-- 1.15 +body {background-color:white; font-family:sans-serif; } 1.16 +a:active{text-decoration:none; color:#303090} 1.17 +a:link{text-decoration:none; color:#303090} 1.18 +a:visited{text-decoration:none; color:#303090} 1.19 +a:hover{text-decoration:underline; color:#4E9F71} 1.20 +--> 1.21 +</style> 1.22 +<script language="JavaScript" type="text/javascript"> 1.23 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 1.24 + <!-- Web Site: http://redrival.com/eak/ --> 1.25 + <!-- This script and many more are available free online at --> 1.26 + <!-- The JavaScript Source!! http://javascript.internet.com --> 1.27 + <!-- Begin 1.28 + function NewWindow(mypage, myname, w, h, scroll) { 1.29 + var winl = (screen.width - w) / 2; 1.30 + var wint = (screen.height - h) / 2; 1.31 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 1.32 + win = window.open(mypage, myname, winprops) 1.33 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 1.34 + } 1.35 + // End --> 1.36 +</script> 1.37 +</head> 1.38 +<body> 1.39 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 1.40 + <tbody><tr><td> 1.41 + <hr noshade="noshade" size="1" width="90%"></hr> 1.42 + <center> 1.43 + <br/> 1.44 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 1.45 + <br/> 1.46 + </center> 1.47 + <hr noshade="noshade" size="1" width="90%"></hr> 1.48 + <center> 1.49 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 1.50 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 1.51 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 1.52 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 1.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 1.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 1.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 1.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 1.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 1.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 1.59 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 1.60 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 1.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 1.62 + </font> 1.63 + </td></tr></tbody> 1.64 + </table> 1.65 + </center> 1.66 + <hr noshade="noshade" size="1" width="90%"></hr> 1.67 + </td></tr></tbody> 1.68 +</table> 1.69 +<!-- Generated by Doxygen 1.5.7.1 --> 1.70 +<script type="text/javascript"> 1.71 +<!-- 1.72 +function changeDisplayState (e){ 1.73 + var num=this.id.replace(/[^[0-9]/g,''); 1.74 + var button=this.firstChild; 1.75 + var sectionDiv=document.getElementById('dynsection'+num); 1.76 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 1.77 + sectionDiv.style.display='block'; 1.78 + button.src='open.gif'; 1.79 + }else{ 1.80 + sectionDiv.style.display='none'; 1.81 + button.src='closed.gif'; 1.82 + } 1.83 +} 1.84 +function initDynSections(){ 1.85 + var divs=document.getElementsByTagName('div'); 1.86 + var sectionCounter=1; 1.87 + for(var i=0;i<divs.length-1;i++){ 1.88 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 1.89 + var header=divs[i]; 1.90 + var section=divs[i+1]; 1.91 + var button=header.firstChild; 1.92 + if (button!='IMG'){ 1.93 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 1.94 + button=document.createElement('img'); 1.95 + divs[i].insertBefore(button,divs[i].firstChild); 1.96 + } 1.97 + header.style.cursor='pointer'; 1.98 + header.onclick=changeDisplayState; 1.99 + header.id='dynheader'+sectionCounter; 1.100 + button.src='closed.gif'; 1.101 + section.id='dynsection'+sectionCounter; 1.102 + section.style.display='none'; 1.103 + section.style.marginLeft='14px'; 1.104 + sectionCounter++; 1.105 + } 1.106 + } 1.107 +} 1.108 +window.onload = initDynSections; 1.109 +--> 1.110 +</script> 1.111 +<div class="navigation" id="top"> 1.112 + <div class="tabs"> 1.113 + <ul> 1.114 + <li><a href="index.html"><span>Main Page</span></a></li> 1.115 + <li><a href="modules.html"><span>Modules</span></a></li> 1.116 + <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li> 1.117 + <li><a href="annotated.html"><span>Classes</span></a></li> 1.118 + </ul> 1.119 + </div> 1.120 + <div class="tabs"> 1.121 + <ul> 1.122 + <li><a href="namespaces.html"><span>Namespace List</span></a></li> 1.123 + <li><a href="namespacemembers.html"><span>Namespace Members</span></a></li> 1.124 + </ul> 1.125 + </div> 1.126 + <div class="navpath"><a class="el" href="namespacecimg__library.html">cimg_library</a>::<a class="el" href="namespacecimg__library_1_1cimg.html">cimg</a> 1.127 + </div> 1.128 +</div> 1.129 +<div class="contents"> 1.130 +<h1>cimg_library::cimg Namespace Reference</h1>Namespace that encompasses <em>low-level</em> functions and variables of the CImg Library. 1.131 +<a href="#_details">More...</a> 1.132 +<p> 1.133 +<table border="0" cellpadding="0" cellspacing="0"> 1.134 +<tr><td></td></tr> 1.135 +<tr><td colspan="2"><br><h2>Functions</h2></td></tr> 1.136 +<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#c1b66fe77173de9e5e8542b2823d6071">info</a> ()</td></tr> 1.137 + 1.138 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Print informations about CImg environement variables. <a href="#c1b66fe77173de9e5e8542b2823d6071"></a><br></td></tr> 1.139 +<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int & </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#acf66918a1173b3f72fe6f088d94f26b">exception_mode</a> ()</td></tr> 1.140 + 1.141 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Get/set the current <a class="el" href="structcimg__library_1_1CImg.html" title="Class representing an image (up to 4 dimensions wide), each pixel being of type T...">CImg</a> exception mode. <a href="#acf66918a1173b3f72fe6f088d94f26b"></a><br></td></tr> 1.142 +<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#93ec28267b101050d949d1ebff1b88cf">warn</a> (const char *format,...)</td></tr> 1.143 + 1.144 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Display a warning message. <a href="#93ec28267b101050d949d1ebff1b88cf"></a><br></td></tr> 1.145 +<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#09e80f4d7a95f3d5c2282202d8526520">system</a> (const char *const command, const char *const module_name=0)</td></tr> 1.146 + 1.147 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="f3bb87016460121409a8f1a2ebe418b1"></a><!-- doxytag: member="cimg_library::cimg::temporary" ref="f3bb87016460121409a8f1a2ebe418b1" args="(const T &)" --> 1.148 +template<typename T > </td></tr> 1.149 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">T & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#f3bb87016460121409a8f1a2ebe418b1">temporary</a> (const T &)</td></tr> 1.150 + 1.151 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a reference to a temporary variable of type T. <br></td></tr> 1.152 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="998ee77cc062d63b4faa62eb659e6e9a"></a><!-- doxytag: member="cimg_library::cimg::swap" ref="998ee77cc062d63b4faa62eb659e6e9a" args="(T &a, T &b)" --> 1.153 +template<typename T > </td></tr> 1.154 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#998ee77cc062d63b4faa62eb659e6e9a">swap</a> (T &a, T &b)</td></tr> 1.155 + 1.156 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Exchange values of variables <code>a</code> and <code>b</code>. <br></td></tr> 1.157 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="2b733fa20def6d955d5f3b1a742b2a0e"></a><!-- doxytag: member="cimg_library::cimg::swap" ref="2b733fa20def6d955d5f3b1a742b2a0e" args="(T1 &a1, T1 &b1, T2 &a2, T2 &b2)" --> 1.158 +template<typename T1 , typename T2 > </td></tr> 1.159 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#2b733fa20def6d955d5f3b1a742b2a0e">swap</a> (T1 &a1, T1 &b1, T2 &a2, T2 &b2)</td></tr> 1.160 + 1.161 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Exchange values of variables (<code>a1</code>,<code>a2</code>) and (<code>b1</code>,<code>b2</code>). <br></td></tr> 1.162 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="4954a1551001dc082044597dc9fdcbc3"></a><!-- doxytag: member="cimg_library::cimg::swap" ref="4954a1551001dc082044597dc9fdcbc3" args="(T1 &a1, T1 &b1, T2 &a2, T2 &b2, T3 &a3, T3 &b3)" --> 1.163 +template<typename T1 , typename T2 , typename T3 > </td></tr> 1.164 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#4954a1551001dc082044597dc9fdcbc3">swap</a> (T1 &a1, T1 &b1, T2 &a2, T2 &b2, T3 &a3, T3 &b3)</td></tr> 1.165 + 1.166 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Exchange values of variables (<code>a1</code>,<code>a2</code>,<code>a3</code>) and (<code>b1</code>,<code>b2</code>,<code>b3</code>). <br></td></tr> 1.167 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="1e3369e3c4141ff696432f35ec075379"></a><!-- doxytag: member="cimg_library::cimg::swap" ref="1e3369e3c4141ff696432f35ec075379" args="(T1 &a1, T1 &b1, T2 &a2, T2 &b2, T3 &a3, T3 &b3, T4 &a4, T4 &b4)" --> 1.168 +template<typename T1 , typename T2 , typename T3 , typename T4 > </td></tr> 1.169 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#1e3369e3c4141ff696432f35ec075379">swap</a> (T1 &a1, T1 &b1, T2 &a2, T2 &b2, T3 &a3, T3 &b3, T4 &a4, T4 &b4)</td></tr> 1.170 + 1.171 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Exchange values of variables (<code>a1</code>,<code>a2</code>,...,<code>a4</code>) and (<code>b1</code>,<code>b2</code>,...,<code>b4</code>). <br></td></tr> 1.172 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="635ae52148ed9edf9aeda5e81bc58884"></a><!-- doxytag: member="cimg_library::cimg::swap" ref="635ae52148ed9edf9aeda5e81bc58884" args="(T1 &a1, T1 &b1, T2 &a2, T2 &b2, T3 &a3, T3 &b3, T4 &a4, T4 &b4, T5 &a5, T5 &b5)" --> 1.173 +template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 > </td></tr> 1.174 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#635ae52148ed9edf9aeda5e81bc58884">swap</a> (T1 &a1, T1 &b1, T2 &a2, T2 &b2, T3 &a3, T3 &b3, T4 &a4, T4 &b4, T5 &a5, T5 &b5)</td></tr> 1.175 + 1.176 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Exchange values of variables (<code>a1</code>,<code>a2</code>,...,<code>a5</code>) and (<code>b1</code>,<code>b2</code>,...,<code>b5</code>). <br></td></tr> 1.177 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="bf3d1cd948fdbc06ba7e9b83a7169d33"></a><!-- doxytag: member="cimg_library::cimg::swap" ref="bf3d1cd948fdbc06ba7e9b83a7169d33" args="(T1 &a1, T1 &b1, T2 &a2, T2 &b2, T3 &a3, T3 &b3, T4 &a4, T4 &b4, T5 &a5, T5 &b5, T6 &a6, T6 &b6)" --> 1.178 +template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 > </td></tr> 1.179 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#bf3d1cd948fdbc06ba7e9b83a7169d33">swap</a> (T1 &a1, T1 &b1, T2 &a2, T2 &b2, T3 &a3, T3 &b3, T4 &a4, T4 &b4, T5 &a5, T5 &b5, T6 &a6, T6 &b6)</td></tr> 1.180 + 1.181 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Exchange values of variables (<code>a1</code>,<code>a2</code>,...,<code>a6</code>) and (<code>b1</code>,<code>b2</code>,...,<code>b6</code>). <br></td></tr> 1.182 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="40c508097e570855c68bc944249ecf59"></a><!-- doxytag: member="cimg_library::cimg::swap" ref="40c508097e570855c68bc944249ecf59" args="(T1 &a1, T1 &b1, T2 &a2, T2 &b2, T3 &a3, T3 &b3, T4 &a4, T4 &b4, T5 &a5, T5 &b5, T6 &a6, T6 &b6, T7 &a7, T7 &b7)" --> 1.183 +template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 > </td></tr> 1.184 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#40c508097e570855c68bc944249ecf59">swap</a> (T1 &a1, T1 &b1, T2 &a2, T2 &b2, T3 &a3, T3 &b3, T4 &a4, T4 &b4, T5 &a5, T5 &b5, T6 &a6, T6 &b6, T7 &a7, T7 &b7)</td></tr> 1.185 + 1.186 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Exchange values of variables (<code>a1</code>,<code>a2</code>,...,<code>a7</code>) and (<code>b1</code>,<code>b2</code>,...,<code>b7</code>). <br></td></tr> 1.187 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="ad6384858c4ccd23b249c370ccb2ed1d"></a><!-- doxytag: member="cimg_library::cimg::swap" ref="ad6384858c4ccd23b249c370ccb2ed1d" args="(T1 &a1, T1 &b1, T2 &a2, T2 &b2, T3 &a3, T3 &b3, T4 &a4, T4 &b4, T5 &a5, T5 &b5, T6 &a6, T6 &b6, T7 &a7, T7 &b7, T8 &a8, T8 &b8)" --> 1.188 +template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 > </td></tr> 1.189 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#ad6384858c4ccd23b249c370ccb2ed1d">swap</a> (T1 &a1, T1 &b1, T2 &a2, T2 &b2, T3 &a3, T3 &b3, T4 &a4, T4 &b4, T5 &a5, T5 &b5, T6 &a6, T6 &b6, T7 &a7, T7 &b7, T8 &a8, T8 &b8)</td></tr> 1.190 + 1.191 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Exchange values of variables (<code>a1</code>,<code>a2</code>,...,<code>a8</code>) and (<code>b1</code>,<code>b2</code>,...,<code>b8</code>). <br></td></tr> 1.192 +<tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#0d2a283a3aa2572e9d343f040c8c4c6b">endianness</a> ()</td></tr> 1.193 + 1.194 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the current endianness of the CPU. <a href="#0d2a283a3aa2572e9d343f040c8c4c6b"></a><br></td></tr> 1.195 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="565abb2900eedfc3700ec2a87986bb89"></a><!-- doxytag: member="cimg_library::cimg::invert_endianness" ref="565abb2900eedfc3700ec2a87986bb89" args="(T *const buffer, const unsigned int size)" --> 1.196 +template<typename T > </td></tr> 1.197 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#565abb2900eedfc3700ec2a87986bb89">invert_endianness</a> (T *const buffer, const unsigned int size)</td></tr> 1.198 + 1.199 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Invert endianness of a memory buffer. <br></td></tr> 1.200 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="772f6feda6762af936e12436a26e40a3"></a><!-- doxytag: member="cimg_library::cimg::invert_endianness" ref="772f6feda6762af936e12436a26e40a3" args="(T &a)" --> 1.201 +template<typename T > </td></tr> 1.202 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">T & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#772f6feda6762af936e12436a26e40a3">invert_endianness</a> (T &a)</td></tr> 1.203 + 1.204 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Invert endianness of a single variable. <br></td></tr> 1.205 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f883131bbc64e996d212114cc2b2b21a"></a><!-- doxytag: member="cimg_library::cimg::time" ref="f883131bbc64e996d212114cc2b2b21a" args="()" --> 1.206 +unsigned long </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#f883131bbc64e996d212114cc2b2b21a">time</a> ()</td></tr> 1.207 + 1.208 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Get the value of a system timer with a millisecond precision. <br></td></tr> 1.209 +<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#3ac7655e49556a90715f3532af221334">sleep</a> (const unsigned int milliseconds)</td></tr> 1.210 + 1.211 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Sleep for a certain numbers of milliseconds. <a href="#3ac7655e49556a90715f3532af221334"></a><br></td></tr> 1.212 +<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#3c8917c0f12139bff6de6e3e45fc5b77">wait</a> (const unsigned int milliseconds)</td></tr> 1.213 + 1.214 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Wait for a certain number of milliseconds since the last call. <a href="#3c8917c0f12139bff6de6e3e45fc5b77"></a><br></td></tr> 1.215 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="964b7bf56de9cba321b402ab86db3ff7"></a><!-- doxytag: member="cimg_library::cimg::rol" ref="964b7bf56de9cba321b402ab86db3ff7" args="(const T a, const unsigned int n=1)" --> 1.216 +template<typename T > </td></tr> 1.217 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">const T </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#964b7bf56de9cba321b402ab86db3ff7">rol</a> (const T a, const unsigned int n=1)</td></tr> 1.218 + 1.219 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a left bitwise-rotated number. <br></td></tr> 1.220 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="62fd3ab82b98aa857fcf5f3fbd7c8b99"></a><!-- doxytag: member="cimg_library::cimg::ror" ref="62fd3ab82b98aa857fcf5f3fbd7c8b99" args="(const T a, const unsigned int n=1)" --> 1.221 +template<typename T > </td></tr> 1.222 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">const T </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#62fd3ab82b98aa857fcf5f3fbd7c8b99">ror</a> (const T a, const unsigned int n=1)</td></tr> 1.223 + 1.224 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a right bitwise-rotated number. <br></td></tr> 1.225 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename T > </td></tr> 1.226 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">T </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#5dd0a4d361e2db646f5042be6bfe1d31">abs</a> (const T a)</td></tr> 1.227 + 1.228 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the absolute value of a number. <a href="#5dd0a4d361e2db646f5042be6bfe1d31"></a><br></td></tr> 1.229 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="415ccb3d8d3cf2e7bbdca6fa18ed3465"></a><!-- doxytag: member="cimg_library::cimg::sqr" ref="415ccb3d8d3cf2e7bbdca6fa18ed3465" args="(const T val)" --> 1.230 +template<typename T > </td></tr> 1.231 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">T </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#415ccb3d8d3cf2e7bbdca6fa18ed3465">sqr</a> (const T val)</td></tr> 1.232 + 1.233 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the square of a number. <br></td></tr> 1.234 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8dde183be46c1821a3901b63825a4cf4"></a><!-- doxytag: member="cimg_library::cimg::xln" ref="8dde183be46c1821a3901b63825a4cf4" args="(const int x)" --> 1.235 +int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#8dde183be46c1821a3901b63825a4cf4">xln</a> (const int x)</td></tr> 1.236 + 1.237 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return 1 + log_10(x). <br></td></tr> 1.238 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="0659abebd7019433a254dd8d934ed32c"></a><!-- doxytag: member="cimg_library::cimg::min" ref="0659abebd7019433a254dd8d934ed32c" args="(const t1 &a, const t2 &b)" --> 1.239 +template<typename t1 , typename t2 > </td></tr> 1.240 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">cimg::superset< t1, t2 >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#0659abebd7019433a254dd8d934ed32c">min</a> (const t1 &a, const t2 &b)</td></tr> 1.241 + 1.242 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the minimum value between two numbers. <br></td></tr> 1.243 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="65e023d29962d5b7239540affa01c934"></a><!-- doxytag: member="cimg_library::cimg::min" ref="65e023d29962d5b7239540affa01c934" args="(const t1 &a, const t2 &b, const t3 &c)" --> 1.244 +template<typename t1 , typename t2 , typename t3 > </td></tr> 1.245 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">cimg::superset2< t1, t2, t3 >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#65e023d29962d5b7239540affa01c934">min</a> (const t1 &a, const t2 &b, const t3 &c)</td></tr> 1.246 + 1.247 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the minimum value between three numbers. <br></td></tr> 1.248 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="11ac2edf216d6e3085207fbef99c8a10"></a><!-- doxytag: member="cimg_library::cimg::min" ref="11ac2edf216d6e3085207fbef99c8a10" args="(const t1 &a, const t2 &b, const t3 &c, const t4 &d)" --> 1.249 +template<typename t1 , typename t2 , typename t3 , typename t4 > </td></tr> 1.250 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">cimg::superset3< t1, t2, t3, <br class="typebreak"> 1.251 +t4 >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#11ac2edf216d6e3085207fbef99c8a10">min</a> (const t1 &a, const t2 &b, const t3 &c, const t4 &d)</td></tr> 1.252 + 1.253 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the minimum value between four numbers. <br></td></tr> 1.254 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="ef8f304ef317aed250bbb0dc2b242969"></a><!-- doxytag: member="cimg_library::cimg::max" ref="ef8f304ef317aed250bbb0dc2b242969" args="(const t1 &a, const t2 &b)" --> 1.255 +template<typename t1 , typename t2 > </td></tr> 1.256 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">cimg::superset< t1, t2 >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#ef8f304ef317aed250bbb0dc2b242969">max</a> (const t1 &a, const t2 &b)</td></tr> 1.257 + 1.258 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the maximum value between two numbers. <br></td></tr> 1.259 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="3c809a146579b9d7633f5c67d1d0c04a"></a><!-- doxytag: member="cimg_library::cimg::max" ref="3c809a146579b9d7633f5c67d1d0c04a" args="(const t1 &a, const t2 &b, const t3 &c)" --> 1.260 +template<typename t1 , typename t2 , typename t3 > </td></tr> 1.261 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">cimg::superset2< t1, t2, t3 >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#3c809a146579b9d7633f5c67d1d0c04a">max</a> (const t1 &a, const t2 &b, const t3 &c)</td></tr> 1.262 + 1.263 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the maximum value between three numbers. <br></td></tr> 1.264 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="c118d1956b491c6e79aa0c34ffd038dd"></a><!-- doxytag: member="cimg_library::cimg::max" ref="c118d1956b491c6e79aa0c34ffd038dd" args="(const t1 &a, const t2 &b, const t3 &c, const t4 &d)" --> 1.265 +template<typename t1 , typename t2 , typename t3 , typename t4 > </td></tr> 1.266 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">cimg::superset3< t1, t2, t3, <br class="typebreak"> 1.267 +t4 >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#c118d1956b491c6e79aa0c34ffd038dd">max</a> (const t1 &a, const t2 &b, const t3 &c, const t4 &d)</td></tr> 1.268 + 1.269 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the maximum value between four numbers. <br></td></tr> 1.270 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="cb00b9ea45d7c523af71071eaad2fd98"></a><!-- doxytag: member="cimg_library::cimg::sign" ref="cb00b9ea45d7c523af71071eaad2fd98" args="(const T x)" --> 1.271 +template<typename T > </td></tr> 1.272 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">T </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#cb00b9ea45d7c523af71071eaad2fd98">sign</a> (const T x)</td></tr> 1.273 + 1.274 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the sign of a number. <br></td></tr> 1.275 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="2d817bb30160ae25fde49bd14db5a7e6"></a><!-- doxytag: member="cimg_library::cimg::nearest_pow2" ref="2d817bb30160ae25fde49bd14db5a7e6" args="(const T x)" --> 1.276 +template<typename T > </td></tr> 1.277 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">unsigned long </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#2d817bb30160ae25fde49bd14db5a7e6">nearest_pow2</a> (const T x)</td></tr> 1.278 + 1.279 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the nearest power of 2 higher than a given number. <br></td></tr> 1.280 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename T > </td></tr> 1.281 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">T </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#85970edf9afb3b48c0715fadf917854e">mod</a> (const T &x, const T &m)</td></tr> 1.282 + 1.283 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the modulo of a number. <a href="#85970edf9afb3b48c0715fadf917854e"></a><br></td></tr> 1.284 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename T > </td></tr> 1.285 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">T </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#e2bab18e9272641210d8b2d7e4a4503f">minmod</a> (const T a, const T b)</td></tr> 1.286 + 1.287 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the minmod of two numbers. <a href="#e2bab18e9272641210d8b2d7e4a4503f"></a><br></td></tr> 1.288 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f31db729637ea4dad61e49e5729839c4"></a><!-- doxytag: member="cimg_library::cimg::rand" ref="f31db729637ea4dad61e49e5729839c4" args="()" --> 1.289 +double </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#f31db729637ea4dad61e49e5729839c4">rand</a> ()</td></tr> 1.290 + 1.291 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a random variable between [0,1] with respect to an uniform distribution. <br></td></tr> 1.292 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ae82972570fdc0904d4f03df7b5d3023"></a><!-- doxytag: member="cimg_library::cimg::crand" ref="ae82972570fdc0904d4f03df7b5d3023" args="()" --> 1.293 +double </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#ae82972570fdc0904d4f03df7b5d3023">crand</a> ()</td></tr> 1.294 + 1.295 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a random variable between [-1,1] with respect to an uniform distribution. <br></td></tr> 1.296 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0341a323738439349625b2de5f35bb4c"></a><!-- doxytag: member="cimg_library::cimg::grand" ref="0341a323738439349625b2de5f35bb4c" args="()" --> 1.297 +double </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#0341a323738439349625b2de5f35bb4c">grand</a> ()</td></tr> 1.298 + 1.299 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a random variable following a gaussian distribution and a standard deviation of 1. <br></td></tr> 1.300 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7f927973e2bc17b851bb61cdfbfef061"></a><!-- doxytag: member="cimg_library::cimg::prand" ref="7f927973e2bc17b851bb61cdfbfef061" args="(const double z)" --> 1.301 +unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#7f927973e2bc17b851bb61cdfbfef061">prand</a> (const double z)</td></tr> 1.302 + 1.303 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a random variable following a Poisson distribution of parameter z. <br></td></tr> 1.304 +<tr><td class="memItemLeft" nowrap align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#0bfd704cc09f4a25f09035b067aca4e3">round</a> (const double x, const double y, const int rounding_type=0)</td></tr> 1.305 + 1.306 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a rounded number. <a href="#0bfd704cc09f4a25f09035b067aca4e3"></a><br></td></tr> 1.307 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5a028d4d4de4e1894263a29a6de8e2ee"></a><!-- doxytag: member="cimg_library::cimg::uncase" ref="5a028d4d4de4e1894263a29a6de8e2ee" args="(const char x)" --> 1.308 +char </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#5a028d4d4de4e1894263a29a6de8e2ee">uncase</a> (const char x)</td></tr> 1.309 + 1.310 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Remove the 'case' of an ASCII character. <br></td></tr> 1.311 +<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#eec70054768b152c0dbea51f5a56536b">uncase</a> (char *const string)</td></tr> 1.312 + 1.313 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Remove the 'case' of a C string. <a href="#eec70054768b152c0dbea51f5a56536b"></a><br></td></tr> 1.314 +<tr><td class="memItemLeft" nowrap align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#9ab0fcc7ef1bac330897fec51f617ae6">atof</a> (const char *const str)</td></tr> 1.315 + 1.316 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Read a float number from a C-string. <a href="#9ab0fcc7ef1bac330897fec51f617ae6"></a><br></td></tr> 1.317 +<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#3f65ad0f35bbbfc7ec197ce32f326da2">strlen</a> (const char *const s)</td></tr> 1.318 + 1.319 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the length of a C-string. <a href="#3f65ad0f35bbbfc7ec197ce32f326da2"></a><br></td></tr> 1.320 +<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#efc1425e963cd56d8a926908749119a5">strncmp</a> (const char *const s1, const char *const s2, const int l)</td></tr> 1.321 + 1.322 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compare the first <code>n</code> characters of two C-strings. <a href="#efc1425e963cd56d8a926908749119a5"></a><br></td></tr> 1.323 +<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#747de40c911c42d60e1a4ee3f0c69c6c">strncasecmp</a> (const char *const s1, const char *const s2, const int l)</td></tr> 1.324 + 1.325 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compare the first <code>n</code> characters of two C-strings, ignoring the case. <a href="#747de40c911c42d60e1a4ee3f0c69c6c"></a><br></td></tr> 1.326 +<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#aab723edb9b070b285367e7ffc099d78">strcmp</a> (const char *const s1, const char *const s2)</td></tr> 1.327 + 1.328 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compare two C-strings. <a href="#aab723edb9b070b285367e7ffc099d78"></a><br></td></tr> 1.329 +<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#43334b3df38ff7c4369a503a4fc3a9f9">strcasecmp</a> (const char *const s1, const char *const s2)</td></tr> 1.330 + 1.331 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compare two C-strings, ignoring the case. <a href="#43334b3df38ff7c4369a503a4fc3a9f9"></a><br></td></tr> 1.332 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2f127d56499b955c44ab1e5963d04c8c"></a><!-- doxytag: member="cimg_library::cimg::strfind" ref="2f127d56499b955c44ab1e5963d04c8c" args="(const char *const s, const char c)" --> 1.333 +int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#2f127d56499b955c44ab1e5963d04c8c">strfind</a> (const char *const s, const char c)</td></tr> 1.334 + 1.335 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Find a character in a C-string. <br></td></tr> 1.336 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="75c2af1ba1b514bd547f9b23745b125c"></a><!-- doxytag: member="cimg_library::cimg::strpare" ref="75c2af1ba1b514bd547f9b23745b125c" args="(char *const s, const char delimiter=' ', const bool symmetric=false)" --> 1.337 +bool </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#75c2af1ba1b514bd547f9b23745b125c">strpare</a> (char *const s, const char delimiter=' ', const bool symmetric=false)</td></tr> 1.338 + 1.339 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Remove useless delimiters on the borders of a C-string. <br></td></tr> 1.340 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7199326277681bfe958fc21a508897e2"></a><!-- doxytag: member="cimg_library::cimg::strclean" ref="7199326277681bfe958fc21a508897e2" args="(char *const s)" --> 1.341 +void </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#7199326277681bfe958fc21a508897e2">strclean</a> (char *const s)</td></tr> 1.342 + 1.343 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Remove useless spaces and symmetric delimiters ', " and ` from a C-string. <br></td></tr> 1.344 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7710ef1683aa12ead974583b764cd353"></a><!-- doxytag: member="cimg_library::cimg::strescape" ref="7710ef1683aa12ead974583b764cd353" args="(char *const s)" --> 1.345 +void </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#7710ef1683aa12ead974583b764cd353">strescape</a> (char *const s)</td></tr> 1.346 + 1.347 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Replace explicit escape sequences '' in C-strings (where x in [ntvbrfa?'"0]). <br></td></tr> 1.348 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bc491a5ed3a8d97e395138a379767a45"></a><!-- doxytag: member="cimg_library::cimg::basename" ref="bc491a5ed3a8d97e395138a379767a45" args="(const char *const s)" --> 1.349 +const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#bc491a5ed3a8d97e395138a379767a45">basename</a> (const char *const s)</td></tr> 1.350 + 1.351 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the basename of a filename. <br></td></tr> 1.352 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="797797a309ca40aa28cdfbb92f4d1621"></a><!-- doxytag: member="cimg_library::cimg::temporary_path" ref="797797a309ca40aa28cdfbb92f4d1621" args="(const char *const user_path=0, const bool reinit_path=false)" --> 1.353 +const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#797797a309ca40aa28cdfbb92f4d1621">temporary_path</a> (const char *const user_path=0, const bool reinit_path=false)</td></tr> 1.354 + 1.355 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return or set path to store temporary files. <br></td></tr> 1.356 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d0db1003e37cc111d9eddd282c1ab27b"></a><!-- doxytag: member="cimg_library::cimg::imagemagick_path" ref="d0db1003e37cc111d9eddd282c1ab27b" args="(const char *const user_path=0, const bool reinit_path=false)" --> 1.357 +const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#d0db1003e37cc111d9eddd282c1ab27b">imagemagick_path</a> (const char *const user_path=0, const bool reinit_path=false)</td></tr> 1.358 + 1.359 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return or set path to the ImageMagick's <code>convert</code> tool. <br></td></tr> 1.360 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a9f7e166f51b43facc8ecc9f05e4ceba"></a><!-- doxytag: member="cimg_library::cimg::graphicsmagick_path" ref="a9f7e166f51b43facc8ecc9f05e4ceba" args="(const char *const user_path=0, const bool reinit_path=false)" --> 1.361 +const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#a9f7e166f51b43facc8ecc9f05e4ceba">graphicsmagick_path</a> (const char *const user_path=0, const bool reinit_path=false)</td></tr> 1.362 + 1.363 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return path of the GraphicsMagick's <code>gm</code> tool. <br></td></tr> 1.364 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="aedba1291890f50edb5be58ef662e516"></a><!-- doxytag: member="cimg_library::cimg::medcon_path" ref="aedba1291890f50edb5be58ef662e516" args="(const char *const user_path=0, const bool reinit_path=false)" --> 1.365 +const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#aedba1291890f50edb5be58ef662e516">medcon_path</a> (const char *const user_path=0, const bool reinit_path=false)</td></tr> 1.366 + 1.367 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return or set path of the <code>XMedcon</code> tool. <br></td></tr> 1.368 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bf1666b982cb372129f2ae2fdc748ef2"></a><!-- doxytag: member="cimg_library::cimg::ffmpeg_path" ref="bf1666b982cb372129f2ae2fdc748ef2" args="(const char *const user_path=0, const bool reinit_path=false)" --> 1.369 +const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#bf1666b982cb372129f2ae2fdc748ef2">ffmpeg_path</a> (const char *const user_path=0, const bool reinit_path=false)</td></tr> 1.370 + 1.371 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return or set path to the 'ffmpeg' command. <br></td></tr> 1.372 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="75f3391e7a393c1c1fe43537004537e2"></a><!-- doxytag: member="cimg_library::cimg::gzip_path" ref="75f3391e7a393c1c1fe43537004537e2" args="(const char *const user_path=0, const bool reinit_path=false)" --> 1.373 +const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#75f3391e7a393c1c1fe43537004537e2">gzip_path</a> (const char *const user_path=0, const bool reinit_path=false)</td></tr> 1.374 + 1.375 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return or set path to the 'gzip' command. <br></td></tr> 1.376 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="08f71c29acfe85d5b8718900e995b779"></a><!-- doxytag: member="cimg_library::cimg::gunzip_path" ref="08f71c29acfe85d5b8718900e995b779" args="(const char *const user_path=0, const bool reinit_path=false)" --> 1.377 +const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#08f71c29acfe85d5b8718900e995b779">gunzip_path</a> (const char *const user_path=0, const bool reinit_path=false)</td></tr> 1.378 + 1.379 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return or set path to the 'gunzip' command. <br></td></tr> 1.380 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e36d7a689692ac5663afe1bbdab5d9fa"></a><!-- doxytag: member="cimg_library::cimg::dcraw_path" ref="e36d7a689692ac5663afe1bbdab5d9fa" args="(const char *const user_path=0, const bool reinit_path=false)" --> 1.381 +const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#e36d7a689692ac5663afe1bbdab5d9fa">dcraw_path</a> (const char *const user_path=0, const bool reinit_path=false)</td></tr> 1.382 + 1.383 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return or set path to the 'dcraw' command. <br></td></tr> 1.384 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9f7068ec0354e0b34a69a9dc829598aa"></a><!-- doxytag: member="cimg_library::cimg::split_filename" ref="9f7068ec0354e0b34a69a9dc829598aa" args="(const char *const filename, char *const body=0)" --> 1.385 +const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#9f7068ec0354e0b34a69a9dc829598aa">split_filename</a> (const char *const filename, char *const body=0)</td></tr> 1.386 + 1.387 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Split a filename into two strings 'body' and 'extension'. <br></td></tr> 1.388 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="878d8296e87c4ddae1676158e40cbd3a"></a><!-- doxytag: member="cimg_library::cimg::number_filename" ref="878d8296e87c4ddae1676158e40cbd3a" args="(const char *const filename, const int number, const unsigned int n, char *const string)" --> 1.389 +char * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#878d8296e87c4ddae1676158e40cbd3a">number_filename</a> (const char *const filename, const int number, const unsigned int n, char *const string)</td></tr> 1.390 + 1.391 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Create a numbered version of a filename. <br></td></tr> 1.392 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="dff1045b64c40864232f07ec686fa731"></a><!-- doxytag: member="cimg_library::cimg::fopen" ref="dff1045b64c40864232f07ec686fa731" args="(const char *const path, const char *const mode)" --> 1.393 +cimg_std::FILE * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#dff1045b64c40864232f07ec686fa731">fopen</a> (const char *const path, const char *const mode)</td></tr> 1.394 + 1.395 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Open a file, and check for possible errors. <br></td></tr> 1.396 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e381e63cfec4d6d2426a2763c05a094f"></a><!-- doxytag: member="cimg_library::cimg::fclose" ref="e381e63cfec4d6d2426a2763c05a094f" args="(cimg_std::FILE *file)" --> 1.397 +int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#e381e63cfec4d6d2426a2763c05a094f">fclose</a> (cimg_std::FILE *file)</td></tr> 1.398 + 1.399 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Close a file, and check for possible errors. <br></td></tr> 1.400 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="69b9fcf4cc4ef26506e3a35d8db2cb74"></a><!-- doxytag: member="cimg_library::cimg::file_type" ref="69b9fcf4cc4ef26506e3a35d8db2cb74" args="(cimg_std::FILE *const file, const char *const filename)" --> 1.401 +const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#69b9fcf4cc4ef26506e3a35d8db2cb74">file_type</a> (cimg_std::FILE *const file, const char *const filename)</td></tr> 1.402 + 1.403 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Try to guess the image format of a filename, using its magick numbers. <br></td></tr> 1.404 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="ae720b10098f87a24c8756e63c48b49a"></a><!-- doxytag: member="cimg_library::cimg::fread" ref="ae720b10098f87a24c8756e63c48b49a" args="(T *const ptr, const unsigned int nmemb, cimg_std::FILE *stream)" --> 1.405 +template<typename T > </td></tr> 1.406 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">int </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#ae720b10098f87a24c8756e63c48b49a">fread</a> (T *const ptr, const unsigned int nmemb, cimg_std::FILE *stream)</td></tr> 1.407 + 1.408 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Read file data, and check for possible errors. <br></td></tr> 1.409 +<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="b57bdbf463552372e18a7dda032c3054"></a><!-- doxytag: member="cimg_library::cimg::fwrite" ref="b57bdbf463552372e18a7dda032c3054" args="(const T *ptr, const unsigned int nmemb, cimg_std::FILE *stream)" --> 1.410 +template<typename T > </td></tr> 1.411 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">int </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#b57bdbf463552372e18a7dda032c3054">fwrite</a> (const T *ptr, const unsigned int nmemb, cimg_std::FILE *stream)</td></tr> 1.412 + 1.413 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Write data to a file, and check for possible errors. <br></td></tr> 1.414 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename t > </td></tr> 1.415 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">int </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#9bd2a1e3ffff4538c4f53856e8b28ded">dialog</a> (const char *title, const char *msg, const char *button1_txt, const char *button2_txt, const char *button3_txt, const char *button4_txt, const char *button5_txt, const char *button6_txt, const <a class="el" href="structcimg__library_1_1CImg.html">CImg</a>< t > &logo, const bool centering=false)</td></tr> 1.416 + 1.417 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Display a dialog box, where a user can click standard buttons. <a href="#9bd2a1e3ffff4538c4f53856e8b28ded"></a><br></td></tr> 1.418 +<tr><td colspan="2"><br><h2>Variables</h2></td></tr> 1.419 +<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0227707be3c6c40e2f71806077fbfcdb"></a><!-- doxytag: member="cimg_library::cimg::valuePI" ref="0227707be3c6c40e2f71806077fbfcdb" args="" --> 1.420 +const double </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#0227707be3c6c40e2f71806077fbfcdb">valuePI</a> = 3.14159265358979323846</td></tr> 1.421 + 1.422 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Definition of the mathematical constant PI. <br></td></tr> 1.423 +</table> 1.424 +<hr><a name="_details"></a><h2>Detailed Description</h2> 1.425 +Namespace that encompasses <em>low-level</em> functions and variables of the CImg Library. 1.426 +<p> 1.427 +Most of the functions and variables within this namespace are used by the library for low-level processing. Nevertheless, documented variables and functions of this namespace may be used safely in your own source code.<p> 1.428 +<dl class="warning" compact><dt><b>Warning:</b></dt><dd>Never write <code>using namespace <a class="el" href="namespacecimg__library_1_1cimg.html" title="Namespace that encompasses low-level functions and variables of the CImg Library...">cimg_library::cimg</a>;</code> in your source code, since a lot of functions of the <code><a class="el" href="namespacecimg__library_1_1cimg.html" title="Namespace that encompasses low-level functions and variables of the CImg Library...">cimg</a>::</code> namespace have prototypes similar to standard C functions that could defined in the global namespace <code>::</code>. </dd></dl> 1.429 + 1.430 +<p> 1.431 +<hr><h2>Function Documentation</h2> 1.432 +<a class="anchor" name="c1b66fe77173de9e5e8542b2823d6071"></a><!-- doxytag: member="cimg_library::cimg::info" ref="c1b66fe77173de9e5e8542b2823d6071" args="()" --> 1.433 +<div class="memitem"> 1.434 +<div class="memproto"> 1.435 + <table class="memname"> 1.436 + <tr> 1.437 + <td class="memname">void info </td> 1.438 + <td>(</td> 1.439 + <td class="paramname"> </td> 1.440 + <td> ) </td> 1.441 + <td><code> [inline]</code></td> 1.442 + </tr> 1.443 + </table> 1.444 +</div> 1.445 +<div class="memdoc"> 1.446 + 1.447 +<p> 1.448 +Print informations about CImg environement variables. 1.449 +<p> 1.450 +Printing is done on the standard error output. 1.451 +</div> 1.452 +</div><p> 1.453 +<a class="anchor" name="acf66918a1173b3f72fe6f088d94f26b"></a><!-- doxytag: member="cimg_library::cimg::exception_mode" ref="acf66918a1173b3f72fe6f088d94f26b" args="()" --> 1.454 +<div class="memitem"> 1.455 +<div class="memproto"> 1.456 + <table class="memname"> 1.457 + <tr> 1.458 + <td class="memname">unsigned int& cimg_library::cimg::exception_mode </td> 1.459 + <td>(</td> 1.460 + <td class="paramname"> </td> 1.461 + <td> ) </td> 1.462 + <td><code> [inline]</code></td> 1.463 + </tr> 1.464 + </table> 1.465 +</div> 1.466 +<div class="memdoc"> 1.467 + 1.468 +<p> 1.469 +Get/set the current <a class="el" href="structcimg__library_1_1CImg.html" title="Class representing an image (up to 4 dimensions wide), each pixel being of type T...">CImg</a> exception mode. 1.470 +<p> 1.471 +The way error messages are handled by <a class="el" href="structcimg__library_1_1CImg.html" title="Class representing an image (up to 4 dimensions wide), each pixel being of type T...">CImg</a> can be changed dynamically, using this function. Possible values are :<ul> 1.472 +<li>0 to hide debug messages (quiet mode, but exceptions are still thrown).</li><li>1 to display debug messages on standard error (console).</li><li>2 to display debug messages in modal windows (default behavior).</li><li>3 to do as 1 + add extra warnings (may slow down the code !).</li><li>4 to do as 2 + add extra warnings (may slow down the code !). </li></ul> 1.473 + 1.474 +</div> 1.475 +</div><p> 1.476 +<a class="anchor" name="93ec28267b101050d949d1ebff1b88cf"></a><!-- doxytag: member="cimg_library::cimg::warn" ref="93ec28267b101050d949d1ebff1b88cf" args="(const char *format,...)" --> 1.477 +<div class="memitem"> 1.478 +<div class="memproto"> 1.479 + <table class="memname"> 1.480 + <tr> 1.481 + <td class="memname">void cimg_library::cimg::warn </td> 1.482 + <td>(</td> 1.483 + <td class="paramtype">const char * </td> 1.484 + <td class="paramname"> <em>format</em>, </td> 1.485 + </tr> 1.486 + <tr> 1.487 + <td class="paramkey"></td> 1.488 + <td></td> 1.489 + <td class="paramtype"> </td> 1.490 + <td class="paramname"> <em>...</em></td><td> </td> 1.491 + </tr> 1.492 + <tr> 1.493 + <td></td> 1.494 + <td>)</td> 1.495 + <td></td><td></td><td><code> [inline]</code></td> 1.496 + </tr> 1.497 + </table> 1.498 +</div> 1.499 +<div class="memdoc"> 1.500 + 1.501 +<p> 1.502 +Display a warning message. 1.503 +<p> 1.504 +<dl compact><dt><b>Parameters:</b></dt><dd> 1.505 + <table border="0" cellspacing="2" cellpadding="0"> 1.506 + <tr><td valign="top"></td><td valign="top"><em>format</em> </td><td>is a C-string describing the format of the message, as in <code>std::printf()</code>. </td></tr> 1.507 + </table> 1.508 +</dl> 1.509 + 1.510 +</div> 1.511 +</div><p> 1.512 +<a class="anchor" name="09e80f4d7a95f3d5c2282202d8526520"></a><!-- doxytag: member="cimg_library::cimg::system" ref="09e80f4d7a95f3d5c2282202d8526520" args="(const char *const command, const char *const module_name=0)" --> 1.513 +<div class="memitem"> 1.514 +<div class="memproto"> 1.515 + <table class="memname"> 1.516 + <tr> 1.517 + <td class="memname">int cimg_library::cimg::system </td> 1.518 + <td>(</td> 1.519 + <td class="paramtype">const char *const </td> 1.520 + <td class="paramname"> <em>command</em>, </td> 1.521 + </tr> 1.522 + <tr> 1.523 + <td class="paramkey"></td> 1.524 + <td></td> 1.525 + <td class="paramtype">const char *const </td> 1.526 + <td class="paramname"> <em>module_name</em> = <code>0</code></td><td> </td> 1.527 + </tr> 1.528 + <tr> 1.529 + <td></td> 1.530 + <td>)</td> 1.531 + <td></td><td></td><td><code> [inline]</code></td> 1.532 + </tr> 1.533 + </table> 1.534 +</div> 1.535 +<div class="memdoc"> 1.536 + 1.537 +<p> 1.538 +<dl class="note" compact><dt><b>Note:</b></dt><dd>This function is similar to <code>std::system()</code> and is here because using the <code>std::</code> version on Windows may open undesired consoles. </dd></dl> 1.539 + 1.540 +</div> 1.541 +</div><p> 1.542 +<a class="anchor" name="0d2a283a3aa2572e9d343f040c8c4c6b"></a><!-- doxytag: member="cimg_library::cimg::endianness" ref="0d2a283a3aa2572e9d343f040c8c4c6b" args="()" --> 1.543 +<div class="memitem"> 1.544 +<div class="memproto"> 1.545 + <table class="memname"> 1.546 + <tr> 1.547 + <td class="memname">bool cimg_library::cimg::endianness </td> 1.548 + <td>(</td> 1.549 + <td class="paramname"> </td> 1.550 + <td> ) </td> 1.551 + <td><code> [inline]</code></td> 1.552 + </tr> 1.553 + </table> 1.554 +</div> 1.555 +<div class="memdoc"> 1.556 + 1.557 +<p> 1.558 +Return the current endianness of the CPU. 1.559 +<p> 1.560 +<dl class="return" compact><dt><b>Returns:</b></dt><dd><code>false</code> for "Little Endian", <code>true</code> for "Big Endian". </dd></dl> 1.561 + 1.562 +</div> 1.563 +</div><p> 1.564 +<a class="anchor" name="3ac7655e49556a90715f3532af221334"></a><!-- doxytag: member="cimg_library::cimg::sleep" ref="3ac7655e49556a90715f3532af221334" args="(const unsigned int milliseconds)" --> 1.565 +<div class="memitem"> 1.566 +<div class="memproto"> 1.567 + <table class="memname"> 1.568 + <tr> 1.569 + <td class="memname">void cimg_library::cimg::sleep </td> 1.570 + <td>(</td> 1.571 + <td class="paramtype">const unsigned int </td> 1.572 + <td class="paramname"> <em>milliseconds</em> </td> 1.573 + <td> ) </td> 1.574 + <td><code> [inline]</code></td> 1.575 + </tr> 1.576 + </table> 1.577 +</div> 1.578 +<div class="memdoc"> 1.579 + 1.580 +<p> 1.581 +Sleep for a certain numbers of milliseconds. 1.582 +<p> 1.583 +This function frees the CPU ressources during the sleeping time. It may be used to temporize your program properly, without wasting CPU time. 1.584 +</div> 1.585 +</div><p> 1.586 +<a class="anchor" name="3c8917c0f12139bff6de6e3e45fc5b77"></a><!-- doxytag: member="cimg_library::cimg::wait" ref="3c8917c0f12139bff6de6e3e45fc5b77" args="(const unsigned int milliseconds)" --> 1.587 +<div class="memitem"> 1.588 +<div class="memproto"> 1.589 + <table class="memname"> 1.590 + <tr> 1.591 + <td class="memname">unsigned int cimg_library::cimg::wait </td> 1.592 + <td>(</td> 1.593 + <td class="paramtype">const unsigned int </td> 1.594 + <td class="paramname"> <em>milliseconds</em> </td> 1.595 + <td> ) </td> 1.596 + <td><code> [inline]</code></td> 1.597 + </tr> 1.598 + </table> 1.599 +</div> 1.600 +<div class="memdoc"> 1.601 + 1.602 +<p> 1.603 +Wait for a certain number of milliseconds since the last call. 1.604 +<p> 1.605 +This function is equivalent to <a class="el" href="namespacecimg__library_1_1cimg.html#3ac7655e49556a90715f3532af221334" title="Sleep for a certain numbers of milliseconds.">sleep()</a> but the waiting time is computed with regard to the last call of <a class="el" href="namespacecimg__library_1_1cimg.html#3c8917c0f12139bff6de6e3e45fc5b77" title="Wait for a certain number of milliseconds since the last call.">wait()</a>. It may be used to temporize your program properly. 1.606 +</div> 1.607 +</div><p> 1.608 +<a class="anchor" name="5dd0a4d361e2db646f5042be6bfe1d31"></a><!-- doxytag: member="cimg_library::cimg::abs" ref="5dd0a4d361e2db646f5042be6bfe1d31" args="(const T a)" --> 1.609 +<div class="memitem"> 1.610 +<div class="memproto"> 1.611 + <table class="memname"> 1.612 + <tr> 1.613 + <td class="memname">T cimg_library::cimg::abs </td> 1.614 + <td>(</td> 1.615 + <td class="paramtype">const T </td> 1.616 + <td class="paramname"> <em>a</em> </td> 1.617 + <td> ) </td> 1.618 + <td><code> [inline]</code></td> 1.619 + </tr> 1.620 + </table> 1.621 +</div> 1.622 +<div class="memdoc"> 1.623 + 1.624 +<p> 1.625 +Return the absolute value of a number. 1.626 +<p> 1.627 +<dl class="note" compact><dt><b>Note:</b></dt><dd>This function is different from <code>std::abs()</code> or <code>std::fabs()</code> because it is able to consider a variable of any type, without cast needed. </dd></dl> 1.628 + 1.629 +</div> 1.630 +</div><p> 1.631 +<a class="anchor" name="85970edf9afb3b48c0715fadf917854e"></a><!-- doxytag: member="cimg_library::cimg::mod" ref="85970edf9afb3b48c0715fadf917854e" args="(const T &x, const T &m)" --> 1.632 +<div class="memitem"> 1.633 +<div class="memproto"> 1.634 + <table class="memname"> 1.635 + <tr> 1.636 + <td class="memname">T cimg_library::cimg::mod </td> 1.637 + <td>(</td> 1.638 + <td class="paramtype">const T & </td> 1.639 + <td class="paramname"> <em>x</em>, </td> 1.640 + </tr> 1.641 + <tr> 1.642 + <td class="paramkey"></td> 1.643 + <td></td> 1.644 + <td class="paramtype">const T & </td> 1.645 + <td class="paramname"> <em>m</em></td><td> </td> 1.646 + </tr> 1.647 + <tr> 1.648 + <td></td> 1.649 + <td>)</td> 1.650 + <td></td><td></td><td><code> [inline]</code></td> 1.651 + </tr> 1.652 + </table> 1.653 +</div> 1.654 +<div class="memdoc"> 1.655 + 1.656 +<p> 1.657 +Return the modulo of a number. 1.658 +<p> 1.659 +<dl class="note" compact><dt><b>Note:</b></dt><dd>This modulo function accepts negative and floating-points modulo numbers, as well as variable of any type. </dd></dl> 1.660 + 1.661 +</div> 1.662 +</div><p> 1.663 +<a class="anchor" name="e2bab18e9272641210d8b2d7e4a4503f"></a><!-- doxytag: member="cimg_library::cimg::minmod" ref="e2bab18e9272641210d8b2d7e4a4503f" args="(const T a, const T b)" --> 1.664 +<div class="memitem"> 1.665 +<div class="memproto"> 1.666 + <table class="memname"> 1.667 + <tr> 1.668 + <td class="memname">T cimg_library::cimg::minmod </td> 1.669 + <td>(</td> 1.670 + <td class="paramtype">const T </td> 1.671 + <td class="paramname"> <em>a</em>, </td> 1.672 + </tr> 1.673 + <tr> 1.674 + <td class="paramkey"></td> 1.675 + <td></td> 1.676 + <td class="paramtype">const T </td> 1.677 + <td class="paramname"> <em>b</em></td><td> </td> 1.678 + </tr> 1.679 + <tr> 1.680 + <td></td> 1.681 + <td>)</td> 1.682 + <td></td><td></td><td><code> [inline]</code></td> 1.683 + </tr> 1.684 + </table> 1.685 +</div> 1.686 +<div class="memdoc"> 1.687 + 1.688 +<p> 1.689 +Return the minmod of two numbers. 1.690 +<p> 1.691 +<em>minmod(<code>a</code>,<code>b</code>)</em> is defined to be :<ul> 1.692 +<li><em>minmod(<code>a</code>,<code>b</code>) = min(<code>a</code>,<code>b</code>)</em>, if <code>a</code> and <code>b</code> have the same sign.</li><li><em>minmod(<code>a</code>,<code>b</code>) = 0</em>, if <code>a</code> and <code>b</code> have different signs. </li></ul> 1.693 + 1.694 +</div> 1.695 +</div><p> 1.696 +<a class="anchor" name="0bfd704cc09f4a25f09035b067aca4e3"></a><!-- doxytag: member="cimg_library::cimg::round" ref="0bfd704cc09f4a25f09035b067aca4e3" args="(const double x, const double y, const int rounding_type=0)" --> 1.697 +<div class="memitem"> 1.698 +<div class="memproto"> 1.699 + <table class="memname"> 1.700 + <tr> 1.701 + <td class="memname">double cimg_library::cimg::round </td> 1.702 + <td>(</td> 1.703 + <td class="paramtype">const double </td> 1.704 + <td class="paramname"> <em>x</em>, </td> 1.705 + </tr> 1.706 + <tr> 1.707 + <td class="paramkey"></td> 1.708 + <td></td> 1.709 + <td class="paramtype">const double </td> 1.710 + <td class="paramname"> <em>y</em>, </td> 1.711 + </tr> 1.712 + <tr> 1.713 + <td class="paramkey"></td> 1.714 + <td></td> 1.715 + <td class="paramtype">const int </td> 1.716 + <td class="paramname"> <em>rounding_type</em> = <code>0</code></td><td> </td> 1.717 + </tr> 1.718 + <tr> 1.719 + <td></td> 1.720 + <td>)</td> 1.721 + <td></td><td></td><td><code> [inline]</code></td> 1.722 + </tr> 1.723 + </table> 1.724 +</div> 1.725 +<div class="memdoc"> 1.726 + 1.727 +<p> 1.728 +Return a rounded number. 1.729 +<p> 1.730 +<dl compact><dt><b>Parameters:</b></dt><dd> 1.731 + <table border="0" cellspacing="2" cellpadding="0"> 1.732 + <tr><td valign="top"></td><td valign="top"><em>x</em> </td><td>is the number to be rounded. </td></tr> 1.733 + <tr><td valign="top"></td><td valign="top"><em>y</em> </td><td>is the rounding precision. </td></tr> 1.734 + <tr><td valign="top"></td><td valign="top"><em>rounding_type</em> </td><td>defines the type of rounding (0=nearest, -1=backward, 1=forward). </td></tr> 1.735 + </table> 1.736 +</dl> 1.737 + 1.738 +</div> 1.739 +</div><p> 1.740 +<a class="anchor" name="eec70054768b152c0dbea51f5a56536b"></a><!-- doxytag: member="cimg_library::cimg::uncase" ref="eec70054768b152c0dbea51f5a56536b" args="(char *const string)" --> 1.741 +<div class="memitem"> 1.742 +<div class="memproto"> 1.743 + <table class="memname"> 1.744 + <tr> 1.745 + <td class="memname">void cimg_library::cimg::uncase </td> 1.746 + <td>(</td> 1.747 + <td class="paramtype">char *const </td> 1.748 + <td class="paramname"> <em>string</em> </td> 1.749 + <td> ) </td> 1.750 + <td><code> [inline]</code></td> 1.751 + </tr> 1.752 + </table> 1.753 +</div> 1.754 +<div class="memdoc"> 1.755 + 1.756 +<p> 1.757 +Remove the 'case' of a C string. 1.758 +<p> 1.759 +Acts in-place. 1.760 +</div> 1.761 +</div><p> 1.762 +<a class="anchor" name="9ab0fcc7ef1bac330897fec51f617ae6"></a><!-- doxytag: member="cimg_library::cimg::atof" ref="9ab0fcc7ef1bac330897fec51f617ae6" args="(const char *const str)" --> 1.763 +<div class="memitem"> 1.764 +<div class="memproto"> 1.765 + <table class="memname"> 1.766 + <tr> 1.767 + <td class="memname">float cimg_library::cimg::atof </td> 1.768 + <td>(</td> 1.769 + <td class="paramtype">const char *const </td> 1.770 + <td class="paramname"> <em>str</em> </td> 1.771 + <td> ) </td> 1.772 + <td><code> [inline]</code></td> 1.773 + </tr> 1.774 + </table> 1.775 +</div> 1.776 +<div class="memdoc"> 1.777 + 1.778 +<p> 1.779 +Read a float number from a C-string. 1.780 +<p> 1.781 +<dl class="note" compact><dt><b>Note:</b></dt><dd>This function is quite similar to <code>std::atof()</code>, but that it allows the retrieval of fractions as in "1/2". </dd></dl> 1.782 + 1.783 +</div> 1.784 +</div><p> 1.785 +<a class="anchor" name="3f65ad0f35bbbfc7ec197ce32f326da2"></a><!-- doxytag: member="cimg_library::cimg::strlen" ref="3f65ad0f35bbbfc7ec197ce32f326da2" args="(const char *const s)" --> 1.786 +<div class="memitem"> 1.787 +<div class="memproto"> 1.788 + <table class="memname"> 1.789 + <tr> 1.790 + <td class="memname">int cimg_library::cimg::strlen </td> 1.791 + <td>(</td> 1.792 + <td class="paramtype">const char *const </td> 1.793 + <td class="paramname"> <em>s</em> </td> 1.794 + <td> ) </td> 1.795 + <td><code> [inline]</code></td> 1.796 + </tr> 1.797 + </table> 1.798 +</div> 1.799 +<div class="memdoc"> 1.800 + 1.801 +<p> 1.802 +Compute the length of a C-string. 1.803 +<p> 1.804 +<dl class="note" compact><dt><b>Note:</b></dt><dd>This function is similar to <code>std::strlen()</code> and is here because some old compilers do not define the <code>std::</code> version. </dd></dl> 1.805 + 1.806 +</div> 1.807 +</div><p> 1.808 +<a class="anchor" name="efc1425e963cd56d8a926908749119a5"></a><!-- doxytag: member="cimg_library::cimg::strncmp" ref="efc1425e963cd56d8a926908749119a5" args="(const char *const s1, const char *const s2, const int l)" --> 1.809 +<div class="memitem"> 1.810 +<div class="memproto"> 1.811 + <table class="memname"> 1.812 + <tr> 1.813 + <td class="memname">int cimg_library::cimg::strncmp </td> 1.814 + <td>(</td> 1.815 + <td class="paramtype">const char *const </td> 1.816 + <td class="paramname"> <em>s1</em>, </td> 1.817 + </tr> 1.818 + <tr> 1.819 + <td class="paramkey"></td> 1.820 + <td></td> 1.821 + <td class="paramtype">const char *const </td> 1.822 + <td class="paramname"> <em>s2</em>, </td> 1.823 + </tr> 1.824 + <tr> 1.825 + <td class="paramkey"></td> 1.826 + <td></td> 1.827 + <td class="paramtype">const int </td> 1.828 + <td class="paramname"> <em>l</em></td><td> </td> 1.829 + </tr> 1.830 + <tr> 1.831 + <td></td> 1.832 + <td>)</td> 1.833 + <td></td><td></td><td><code> [inline]</code></td> 1.834 + </tr> 1.835 + </table> 1.836 +</div> 1.837 +<div class="memdoc"> 1.838 + 1.839 +<p> 1.840 +Compare the first <code>n</code> characters of two C-strings. 1.841 +<p> 1.842 +<dl class="note" compact><dt><b>Note:</b></dt><dd>This function is similar to <code>std::strncmp()</code> and is here because some old compilers do not define the <code>std::</code> version. </dd></dl> 1.843 + 1.844 +</div> 1.845 +</div><p> 1.846 +<a class="anchor" name="747de40c911c42d60e1a4ee3f0c69c6c"></a><!-- doxytag: member="cimg_library::cimg::strncasecmp" ref="747de40c911c42d60e1a4ee3f0c69c6c" args="(const char *const s1, const char *const s2, const int l)" --> 1.847 +<div class="memitem"> 1.848 +<div class="memproto"> 1.849 + <table class="memname"> 1.850 + <tr> 1.851 + <td class="memname">int cimg_library::cimg::strncasecmp </td> 1.852 + <td>(</td> 1.853 + <td class="paramtype">const char *const </td> 1.854 + <td class="paramname"> <em>s1</em>, </td> 1.855 + </tr> 1.856 + <tr> 1.857 + <td class="paramkey"></td> 1.858 + <td></td> 1.859 + <td class="paramtype">const char *const </td> 1.860 + <td class="paramname"> <em>s2</em>, </td> 1.861 + </tr> 1.862 + <tr> 1.863 + <td class="paramkey"></td> 1.864 + <td></td> 1.865 + <td class="paramtype">const int </td> 1.866 + <td class="paramname"> <em>l</em></td><td> </td> 1.867 + </tr> 1.868 + <tr> 1.869 + <td></td> 1.870 + <td>)</td> 1.871 + <td></td><td></td><td><code> [inline]</code></td> 1.872 + </tr> 1.873 + </table> 1.874 +</div> 1.875 +<div class="memdoc"> 1.876 + 1.877 +<p> 1.878 +Compare the first <code>n</code> characters of two C-strings, ignoring the case. 1.879 +<p> 1.880 +<dl class="note" compact><dt><b>Note:</b></dt><dd>This function is similar to <code>std::strncasecmp()</code> and is here because some old compilers do not define the <code>std::</code> version. </dd></dl> 1.881 + 1.882 +</div> 1.883 +</div><p> 1.884 +<a class="anchor" name="aab723edb9b070b285367e7ffc099d78"></a><!-- doxytag: member="cimg_library::cimg::strcmp" ref="aab723edb9b070b285367e7ffc099d78" args="(const char *const s1, const char *const s2)" --> 1.885 +<div class="memitem"> 1.886 +<div class="memproto"> 1.887 + <table class="memname"> 1.888 + <tr> 1.889 + <td class="memname">int cimg_library::cimg::strcmp </td> 1.890 + <td>(</td> 1.891 + <td class="paramtype">const char *const </td> 1.892 + <td class="paramname"> <em>s1</em>, </td> 1.893 + </tr> 1.894 + <tr> 1.895 + <td class="paramkey"></td> 1.896 + <td></td> 1.897 + <td class="paramtype">const char *const </td> 1.898 + <td class="paramname"> <em>s2</em></td><td> </td> 1.899 + </tr> 1.900 + <tr> 1.901 + <td></td> 1.902 + <td>)</td> 1.903 + <td></td><td></td><td><code> [inline]</code></td> 1.904 + </tr> 1.905 + </table> 1.906 +</div> 1.907 +<div class="memdoc"> 1.908 + 1.909 +<p> 1.910 +Compare two C-strings. 1.911 +<p> 1.912 +<dl class="note" compact><dt><b>Note:</b></dt><dd>This function is similar to <code>std::strcmp()</code> and is here because some old compilers do not define the <code>std::</code> version. </dd></dl> 1.913 + 1.914 +</div> 1.915 +</div><p> 1.916 +<a class="anchor" name="43334b3df38ff7c4369a503a4fc3a9f9"></a><!-- doxytag: member="cimg_library::cimg::strcasecmp" ref="43334b3df38ff7c4369a503a4fc3a9f9" args="(const char *const s1, const char *const s2)" --> 1.917 +<div class="memitem"> 1.918 +<div class="memproto"> 1.919 + <table class="memname"> 1.920 + <tr> 1.921 + <td class="memname">int cimg_library::cimg::strcasecmp </td> 1.922 + <td>(</td> 1.923 + <td class="paramtype">const char *const </td> 1.924 + <td class="paramname"> <em>s1</em>, </td> 1.925 + </tr> 1.926 + <tr> 1.927 + <td class="paramkey"></td> 1.928 + <td></td> 1.929 + <td class="paramtype">const char *const </td> 1.930 + <td class="paramname"> <em>s2</em></td><td> </td> 1.931 + </tr> 1.932 + <tr> 1.933 + <td></td> 1.934 + <td>)</td> 1.935 + <td></td><td></td><td><code> [inline]</code></td> 1.936 + </tr> 1.937 + </table> 1.938 +</div> 1.939 +<div class="memdoc"> 1.940 + 1.941 +<p> 1.942 +Compare two C-strings, ignoring the case. 1.943 +<p> 1.944 +<dl class="note" compact><dt><b>Note:</b></dt><dd>This function is similar to <code>std::strcasecmp()</code> and is here because some old compilers do not define the <code>std::</code> version. </dd></dl> 1.945 + 1.946 +</div> 1.947 +</div><p> 1.948 +<a class="anchor" name="9bd2a1e3ffff4538c4f53856e8b28ded"></a><!-- doxytag: member="cimg_library::cimg::dialog" ref="9bd2a1e3ffff4538c4f53856e8b28ded" args="(const char *title, const char *msg, const char *button1_txt, const char *button2_txt, const char *button3_txt, const char *button4_txt, const char *button5_txt, const char *button6_txt, const CImg< t > &logo, const bool centering=false)" --> 1.949 +<div class="memitem"> 1.950 +<div class="memproto"> 1.951 + <table class="memname"> 1.952 + <tr> 1.953 + <td class="memname">int cimg_library::cimg::dialog </td> 1.954 + <td>(</td> 1.955 + <td class="paramtype">const char * </td> 1.956 + <td class="paramname"> <em>title</em>, </td> 1.957 + </tr> 1.958 + <tr> 1.959 + <td class="paramkey"></td> 1.960 + <td></td> 1.961 + <td class="paramtype">const char * </td> 1.962 + <td class="paramname"> <em>msg</em>, </td> 1.963 + </tr> 1.964 + <tr> 1.965 + <td class="paramkey"></td> 1.966 + <td></td> 1.967 + <td class="paramtype">const char * </td> 1.968 + <td class="paramname"> <em>button1_txt</em>, </td> 1.969 + </tr> 1.970 + <tr> 1.971 + <td class="paramkey"></td> 1.972 + <td></td> 1.973 + <td class="paramtype">const char * </td> 1.974 + <td class="paramname"> <em>button2_txt</em>, </td> 1.975 + </tr> 1.976 + <tr> 1.977 + <td class="paramkey"></td> 1.978 + <td></td> 1.979 + <td class="paramtype">const char * </td> 1.980 + <td class="paramname"> <em>button3_txt</em>, </td> 1.981 + </tr> 1.982 + <tr> 1.983 + <td class="paramkey"></td> 1.984 + <td></td> 1.985 + <td class="paramtype">const char * </td> 1.986 + <td class="paramname"> <em>button4_txt</em>, </td> 1.987 + </tr> 1.988 + <tr> 1.989 + <td class="paramkey"></td> 1.990 + <td></td> 1.991 + <td class="paramtype">const char * </td> 1.992 + <td class="paramname"> <em>button5_txt</em>, </td> 1.993 + </tr> 1.994 + <tr> 1.995 + <td class="paramkey"></td> 1.996 + <td></td> 1.997 + <td class="paramtype">const char * </td> 1.998 + <td class="paramname"> <em>button6_txt</em>, </td> 1.999 + </tr> 1.1000 + <tr> 1.1001 + <td class="paramkey"></td> 1.1002 + <td></td> 1.1003 + <td class="paramtype">const CImg< t > & </td> 1.1004 + <td class="paramname"> <em>logo</em>, </td> 1.1005 + </tr> 1.1006 + <tr> 1.1007 + <td class="paramkey"></td> 1.1008 + <td></td> 1.1009 + <td class="paramtype">const bool </td> 1.1010 + <td class="paramname"> <em>centering</em> = <code>false</code></td><td> </td> 1.1011 + </tr> 1.1012 + <tr> 1.1013 + <td></td> 1.1014 + <td>)</td> 1.1015 + <td></td><td></td><td><code> [inline]</code></td> 1.1016 + </tr> 1.1017 + </table> 1.1018 +</div> 1.1019 +<div class="memdoc"> 1.1020 + 1.1021 +<p> 1.1022 +Display a dialog box, where a user can click standard buttons. 1.1023 +<p> 1.1024 +Up to 6 buttons can be defined in the dialog window. This function returns when a user clicked one of the button or closed the dialog window. <dl compact><dt><b>Parameters:</b></dt><dd> 1.1025 + <table border="0" cellspacing="2" cellpadding="0"> 1.1026 + <tr><td valign="top"></td><td valign="top"><em>title</em> </td><td>= Title of the dialog window. </td></tr> 1.1027 + <tr><td valign="top"></td><td valign="top"><em>msg</em> </td><td>= Main message displayed inside the dialog window. </td></tr> 1.1028 + <tr><td valign="top"></td><td valign="top"><em>button1_txt</em> </td><td>= Label of the 1st button. </td></tr> 1.1029 + <tr><td valign="top"></td><td valign="top"><em>button2_txt</em> </td><td>= Label of the 2nd button. </td></tr> 1.1030 + <tr><td valign="top"></td><td valign="top"><em>button3_txt</em> </td><td>= Label of the 3rd button. </td></tr> 1.1031 + <tr><td valign="top"></td><td valign="top"><em>button4_txt</em> </td><td>= Label of the 4th button. </td></tr> 1.1032 + <tr><td valign="top"></td><td valign="top"><em>button5_txt</em> </td><td>= Label of the 5th button. </td></tr> 1.1033 + <tr><td valign="top"></td><td valign="top"><em>button6_txt</em> </td><td>= Label of the 6th button. </td></tr> 1.1034 + <tr><td valign="top"></td><td valign="top"><em>logo</em> </td><td>= Logo image displayed at the left of the main message. This parameter is optional. </td></tr> 1.1035 + <tr><td valign="top"></td><td valign="top"><em>centering</em> </td><td>= Tell to center the dialog window on the screen. </td></tr> 1.1036 + </table> 1.1037 +</dl> 1.1038 +<dl class="return" compact><dt><b>Returns:</b></dt><dd>The button number (from 0 to 5), or -1 if the dialog window has been closed by the user. </dd></dl> 1.1039 +<dl class="note" compact><dt><b>Note:</b></dt><dd>If a button text is set to 0, then the corresponding button (and the followings) won't appear in the dialog box. At least one button is necessary. </dd></dl> 1.1040 + 1.1041 +</div> 1.1042 +</div><p> 1.1043 +</div> 1.1044 +<hr noshade="noshade" size="1" width="100%"> 1.1045 +<a href="http://sourceforge.net"> 1.1046 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 1.1047 +</a> 1.1048 +<!-- Start of StatCounter Code --> 1.1049 +<script type="text/javascript" language="javascript"> 1.1050 +<!-- 1.1051 +var sc_project=895001; 1.1052 +var sc_invisible=1; 1.1053 +var sc_partition=7; 1.1054 +var sc_security="5ea85181"; 1.1055 +//--> 1.1056 +</script> 1.1057 +<script type="text/javascript" language="javascript" src="http://www.statcounter.com/counter/counter.js"></script><noscript><a href="http://www.statcounter.com/" target="_blank"><img src="http://c8.statcounter.com/counter.php?sc_project=895001&java=0&security=5ea85181&invisible=1" alt="counter stats" border="0"></a> </noscript> 1.1058 +<!-- End of StatCounter Code --> 1.1059 +</body> 1.1060 +</html>