1.1 diff -r 5edfbd3e7a46 -r 1204ebf9340d PTdecode/CImg-1.3.0/html/reference/namespacecimg__library_1_1cimg.html 1.2 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.3 +++ b/PTdecode/CImg-1.3.0/html/reference/namespacecimg__library_1_1cimg.html Mon Aug 03 14:09:20 2009 +0100 1.4 @@ -0,0 +1,1057 @@ 1.5 + xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 1.6 +<head> 1.7 +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta> 1.8 +<title>The CImg Library - C++ Template Image Processing Toolkit</title> 1.9 +<meta content="David Tschumperle" name="author"></meta> 1.10 +<link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link> 1.11 +<link rel="icon" type="image/png" href="favicon.png"></link> 1.12 +<link href="doxygen.css" rel="stylesheet" type="text/css"> 1.13 +<link href="tabs.css" rel="stylesheet" type="text/css"> 1.14 +<style type="text/css"> 1.15 +<!-- 1.16 +body {background-color:white; font-family:sans-serif; } 1.17 +a:active{text-decoration:none; color:#303090} 1.18 +a:link{text-decoration:none; color:#303090} 1.19 +a:visited{text-decoration:none; color:#303090} 1.20 +a:hover{text-decoration:underline; color:#4E9F71} 1.21 +--> 1.22 +</style> 1.23 +<script language="JavaScript" type="text/javascript"> 1.24 + <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows --> 1.25 + <!-- Web Site: http://redrival.com/eak/ --> 1.26 + <!-- This script and many more are available free online at --> 1.27 + <!-- The JavaScript Source!! http://javascript.internet.com --> 1.28 + <!-- Begin 1.29 + function NewWindow(mypage, myname, w, h, scroll) { 1.30 + var winl = (screen.width - w) / 2; 1.31 + var wint = (screen.height - h) / 2; 1.32 + winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable' 1.33 + win = window.open(mypage, myname, winprops) 1.34 + if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); } 1.35 + } 1.36 + // End --> 1.37 +</script> 1.38 +</head> 1.39 +<body> 1.40 + <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"> 1.41 + <tbody><tr><td> 1.42 + <hr noshade="noshade" size="1" width="90%"></hr> 1.43 + <center> 1.44 + <br/> 1.45 + <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/> 1.46 + <br/> 1.47 + </center> 1.48 + <hr noshade="noshade" size="1" width="90%"></hr> 1.49 + <center> 1.50 + <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0"> 1.51 + <tbody><tr><td style="text-align: center; vertical-align: top;"> 1.52 + <font color="#FFFFFF" face="Arial,Helvetica" size="-1"> 1.53 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b> 1.54 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b> 1.55 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b> 1.56 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b> 1.57 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b> 1.58 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b> 1.59 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b> 1.60 + <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b> 1.61 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b> 1.62 + <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b> 1.63 + </font> 1.64 + </td></tr></tbody> 1.65 + </table> 1.66 + </center> 1.67 + <hr noshade="noshade" size="1" width="90%"></hr> 1.68 + </td></tr></tbody> 1.69 +</table> 1.70 +<!-- Generated by Doxygen 1.5.7.1 --> 1.71 +<script type="text/javascript"> 1.72 +<!-- 1.73 +function changeDisplayState (e){ 1.74 + var num=this.id.replace(/[^[0-9]/g,''); 1.75 + var button=this.firstChild; 1.76 + var sectionDiv=document.getElementById('dynsection'+num); 1.77 + if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ 1.78 + sectionDiv.style.display='block'; 1.79 + button.src='open.gif'; 1.80 + }else{ 1.81 + sectionDiv.style.display='none'; 1.82 + button.src='closed.gif'; 1.83 + } 1.84 +} 1.85 +function initDynSections(){ 1.86 + var divs=document.getElementsByTagName('div'); 1.87 + var sectionCounter=1; 1.88 + for(var i=0;i<divs.length-1;i++){ 1.89 + if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ 1.90 + var header=divs[i]; 1.91 + var section=divs[i+1]; 1.92 + var button=header.firstChild; 1.93 + if (button!='IMG'){ 1.94 + divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); 1.95 + button=document.createElement('img'); 1.96 + divs[i].insertBefore(button,divs[i].firstChild); 1.97 + } 1.98 + header.style.cursor='pointer'; 1.99 + header.onclick=changeDisplayState; 1.100 + header.id='dynheader'+sectionCounter; 1.101 + button.src='closed.gif'; 1.102 + section.id='dynsection'+sectionCounter; 1.103 + section.style.display='none'; 1.104 + section.style.marginLeft='14px'; 1.105 + sectionCounter++; 1.106 + } 1.107 + } 1.108 +} 1.109 +window.onload = initDynSections; 1.110 +--> 1.111 +</script> 1.112 +<div class="navigation" id="top"> 1.113 + <div class="tabs"> 1.114 + <ul> 1.115 + <li><a href="index.html"><span>Main Page</span></a></li> 1.116 + <li><a href="modules.html"><span>Modules</span></a></li> 1.117 + <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li> 1.118 + <li><a href="annotated.html"><span>Classes</span></a></li> 1.119 + </ul> 1.120 + </div> 1.121 + <div class="tabs"> 1.122 + <ul> 1.123 + <li><a href="namespaces.html"><span>Namespace List</span></a></li> 1.124 + <li><a href="namespacemembers.html"><span>Namespace Members</span></a></li> 1.125 + </ul> 1.126 + </div> 1.127 + <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.128 + </div> 1.129 +</div> 1.130 +<div class="contents"> 1.131 +<h1>cimg_library::cimg Namespace Reference</h1>Namespace that encompasses <em>low-level</em> functions and variables of the CImg Library. 1.132 +<a href="#_details">More...</a> 1.133 +<p> 1.134 +<table border="0" cellpadding="0" cellspacing="0"> 1.135 +<tr><td></td></tr> 1.136 +<tr><td colspan="2"><br><h2>Functions</h2></td></tr> 1.137 +<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.138 + 1.139 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Print informations about CImg environement variables. <a href="#c1b66fe77173de9e5e8542b2823d6071"></a><br></td></tr> 1.140 +<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.141 + 1.142 +<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.143 +<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.144 + 1.145 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Display a warning message. <a href="#93ec28267b101050d949d1ebff1b88cf"></a><br></td></tr> 1.146 +<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.147 + 1.148 +<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.149 +template<typename T > </td></tr> 1.150 +<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.151 + 1.152 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a reference to a temporary variable of type T. <br></td></tr> 1.153 +<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.154 +template<typename T > </td></tr> 1.155 +<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.156 + 1.157 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Exchange values of variables <code>a</code> and <code>b</code>. <br></td></tr> 1.158 +<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.159 +template<typename T1 , typename T2 > </td></tr> 1.160 +<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.161 + 1.162 +<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.163 +<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.164 +template<typename T1 , typename T2 , typename T3 > </td></tr> 1.165 +<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.166 + 1.167 +<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.168 +<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.169 +template<typename T1 , typename T2 , typename T3 , typename T4 > </td></tr> 1.170 +<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.171 + 1.172 +<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.173 +<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.174 +template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 > </td></tr> 1.175 +<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.176 + 1.177 +<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.178 +<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.179 +template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 > </td></tr> 1.180 +<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.181 + 1.182 +<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.183 +<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.184 +template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 > </td></tr> 1.185 +<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.186 + 1.187 +<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.188 +<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.189 +template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 > </td></tr> 1.190 +<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.191 + 1.192 +<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.193 +<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.194 + 1.195 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the current endianness of the CPU. <a href="#0d2a283a3aa2572e9d343f040c8c4c6b"></a><br></td></tr> 1.196 +<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.197 +template<typename T > </td></tr> 1.198 +<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.199 + 1.200 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Invert endianness of a memory buffer. <br></td></tr> 1.201 +<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.202 +template<typename T > </td></tr> 1.203 +<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.204 + 1.205 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Invert endianness of a single variable. <br></td></tr> 1.206 +<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.207 +unsigned long </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#f883131bbc64e996d212114cc2b2b21a">time</a> ()</td></tr> 1.208 + 1.209 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Get the value of a system timer with a millisecond precision. <br></td></tr> 1.210 +<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.211 + 1.212 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Sleep for a certain numbers of milliseconds. <a href="#3ac7655e49556a90715f3532af221334"></a><br></td></tr> 1.213 +<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.214 + 1.215 +<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.216 +<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.217 +template<typename T > </td></tr> 1.218 +<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.219 + 1.220 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a left bitwise-rotated number. <br></td></tr> 1.221 +<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.222 +template<typename T > </td></tr> 1.223 +<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.224 + 1.225 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a right bitwise-rotated number. <br></td></tr> 1.226 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename T > </td></tr> 1.227 +<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.228 + 1.229 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the absolute value of a number. <a href="#5dd0a4d361e2db646f5042be6bfe1d31"></a><br></td></tr> 1.230 +<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.231 +template<typename T > </td></tr> 1.232 +<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.233 + 1.234 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the square of a number. <br></td></tr> 1.235 +<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.236 +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.237 + 1.238 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return 1 + log_10(x). <br></td></tr> 1.239 +<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.240 +template<typename t1 , typename t2 > </td></tr> 1.241 +<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.242 + 1.243 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the minimum value between two numbers. <br></td></tr> 1.244 +<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.245 +template<typename t1 , typename t2 , typename t3 > </td></tr> 1.246 +<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.247 + 1.248 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the minimum value between three numbers. <br></td></tr> 1.249 +<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.250 +template<typename t1 , typename t2 , typename t3 , typename t4 > </td></tr> 1.251 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">cimg::superset3< t1, t2, t3, <br class="typebreak"> 1.252 +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.253 + 1.254 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the minimum value between four numbers. <br></td></tr> 1.255 +<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.256 +template<typename t1 , typename t2 > </td></tr> 1.257 +<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.258 + 1.259 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the maximum value between two numbers. <br></td></tr> 1.260 +<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.261 +template<typename t1 , typename t2 , typename t3 > </td></tr> 1.262 +<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.263 + 1.264 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the maximum value between three numbers. <br></td></tr> 1.265 +<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.266 +template<typename t1 , typename t2 , typename t3 , typename t4 > </td></tr> 1.267 +<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">cimg::superset3< t1, t2, t3, <br class="typebreak"> 1.268 +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.269 + 1.270 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the maximum value between four numbers. <br></td></tr> 1.271 +<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.272 +template<typename T > </td></tr> 1.273 +<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.274 + 1.275 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the sign of a number. <br></td></tr> 1.276 +<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.277 +template<typename T > </td></tr> 1.278 +<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.279 + 1.280 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the nearest power of 2 higher than a given number. <br></td></tr> 1.281 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename T > </td></tr> 1.282 +<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.283 + 1.284 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the modulo of a number. <a href="#85970edf9afb3b48c0715fadf917854e"></a><br></td></tr> 1.285 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename T > </td></tr> 1.286 +<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.287 + 1.288 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the minmod of two numbers. <a href="#e2bab18e9272641210d8b2d7e4a4503f"></a><br></td></tr> 1.289 +<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.290 +double </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#f31db729637ea4dad61e49e5729839c4">rand</a> ()</td></tr> 1.291 + 1.292 +<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.293 +<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.294 +double </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#ae82972570fdc0904d4f03df7b5d3023">crand</a> ()</td></tr> 1.295 + 1.296 +<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.297 +<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.298 +double </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#0341a323738439349625b2de5f35bb4c">grand</a> ()</td></tr> 1.299 + 1.300 +<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.301 +<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.302 +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.303 + 1.304 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a random variable following a Poisson distribution of parameter z. <br></td></tr> 1.305 +<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.306 + 1.307 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a rounded number. <a href="#0bfd704cc09f4a25f09035b067aca4e3"></a><br></td></tr> 1.308 +<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.309 +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.310 + 1.311 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Remove the 'case' of an ASCII character. <br></td></tr> 1.312 +<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.313 + 1.314 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Remove the 'case' of a C string. <a href="#eec70054768b152c0dbea51f5a56536b"></a><br></td></tr> 1.315 +<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.316 + 1.317 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Read a float number from a C-string. <a href="#9ab0fcc7ef1bac330897fec51f617ae6"></a><br></td></tr> 1.318 +<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.319 + 1.320 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the length of a C-string. <a href="#3f65ad0f35bbbfc7ec197ce32f326da2"></a><br></td></tr> 1.321 +<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.322 + 1.323 +<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.324 +<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.325 + 1.326 +<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.327 +<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.328 + 1.329 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compare two C-strings. <a href="#aab723edb9b070b285367e7ffc099d78"></a><br></td></tr> 1.330 +<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.331 + 1.332 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compare two C-strings, ignoring the case. <a href="#43334b3df38ff7c4369a503a4fc3a9f9"></a><br></td></tr> 1.333 +<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.334 +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.335 + 1.336 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Find a character in a C-string. <br></td></tr> 1.337 +<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.338 +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.339 + 1.340 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Remove useless delimiters on the borders of a C-string. <br></td></tr> 1.341 +<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.342 +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.343 + 1.344 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Remove useless spaces and symmetric delimiters ', " and ` from a C-string. <br></td></tr> 1.345 +<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.346 +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.347 + 1.348 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Replace explicit escape sequences '' in C-strings (where x in [ntvbrfa?'"0]). <br></td></tr> 1.349 +<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.350 +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.351 + 1.352 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the basename of a filename. <br></td></tr> 1.353 +<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.354 +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.355 + 1.356 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return or set path to store temporary files. <br></td></tr> 1.357 +<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.358 +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.359 + 1.360 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return or set path to the ImageMagick's <code>convert</code> tool. <br></td></tr> 1.361 +<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.362 +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.363 + 1.364 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return path of the GraphicsMagick's <code>gm</code> tool. <br></td></tr> 1.365 +<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.366 +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.367 + 1.368 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return or set path of the <code>XMedcon</code> tool. <br></td></tr> 1.369 +<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.370 +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.371 + 1.372 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return or set path to the 'ffmpeg' command. <br></td></tr> 1.373 +<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.374 +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.375 + 1.376 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return or set path to the 'gzip' command. <br></td></tr> 1.377 +<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.378 +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.379 + 1.380 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return or set path to the 'gunzip' command. <br></td></tr> 1.381 +<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.382 +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.383 + 1.384 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Return or set path to the 'dcraw' command. <br></td></tr> 1.385 +<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.386 +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.387 + 1.388 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Split a filename into two strings 'body' and 'extension'. <br></td></tr> 1.389 +<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.390 +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.391 + 1.392 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Create a numbered version of a filename. <br></td></tr> 1.393 +<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.394 +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.395 + 1.396 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Open a file, and check for possible errors. <br></td></tr> 1.397 +<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.398 +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.399 + 1.400 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Close a file, and check for possible errors. <br></td></tr> 1.401 +<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.402 +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.403 + 1.404 +<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.405 +<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.406 +template<typename T > </td></tr> 1.407 +<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.408 + 1.409 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Read file data, and check for possible errors. <br></td></tr> 1.410 +<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.411 +template<typename T > </td></tr> 1.412 +<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.413 + 1.414 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Write data to a file, and check for possible errors. <br></td></tr> 1.415 +<tr><td class="memTemplParams" nowrap colspan="2">template<typename t > </td></tr> 1.416 +<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.417 + 1.418 +<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.419 +<tr><td colspan="2"><br><h2>Variables</h2></td></tr> 1.420 +<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.421 +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.422 + 1.423 +<tr><td class="mdescLeft"> </td><td class="mdescRight">Definition of the mathematical constant PI. <br></td></tr> 1.424 +</table> 1.425 +<hr><a name="_details"></a><h2>Detailed Description</h2> 1.426 +Namespace that encompasses <em>low-level</em> functions and variables of the CImg Library. 1.427 +<p> 1.428 +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.429 +<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.430 + 1.431 +<p> 1.432 +<hr><h2>Function Documentation</h2> 1.433 +<a class="anchor" name="c1b66fe77173de9e5e8542b2823d6071"></a><!-- doxytag: member="cimg_library::cimg::info" ref="c1b66fe77173de9e5e8542b2823d6071" args="()" --> 1.434 +<div class="memitem"> 1.435 +<div class="memproto"> 1.436 + <table class="memname"> 1.437 + <tr> 1.438 + <td class="memname">void info </td> 1.439 + <td>(</td> 1.440 + <td class="paramname"> </td> 1.441 + <td> ) </td> 1.442 + <td><code> [inline]</code></td> 1.443 + </tr> 1.444 + </table> 1.445 +</div> 1.446 +<div class="memdoc"> 1.447 + 1.448 +<p> 1.449 +Print informations about CImg environement variables. 1.450 +<p> 1.451 +Printing is done on the standard error output. 1.452 +</div> 1.453 +</div><p> 1.454 +<a class="anchor" name="acf66918a1173b3f72fe6f088d94f26b"></a><!-- doxytag: member="cimg_library::cimg::exception_mode" ref="acf66918a1173b3f72fe6f088d94f26b" args="()" --> 1.455 +<div class="memitem"> 1.456 +<div class="memproto"> 1.457 + <table class="memname"> 1.458 + <tr> 1.459 + <td class="memname">unsigned int& cimg_library::cimg::exception_mode </td> 1.460 + <td>(</td> 1.461 + <td class="paramname"> </td> 1.462 + <td> ) </td> 1.463 + <td><code> [inline]</code></td> 1.464 + </tr> 1.465 + </table> 1.466 +</div> 1.467 +<div class="memdoc"> 1.468 + 1.469 +<p> 1.470 +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.471 +<p> 1.472 +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.473 +<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.474 + 1.475 +</div> 1.476 +</div><p> 1.477 +<a class="anchor" name="93ec28267b101050d949d1ebff1b88cf"></a><!-- doxytag: member="cimg_library::cimg::warn" ref="93ec28267b101050d949d1ebff1b88cf" args="(const char *format,...)" --> 1.478 +<div class="memitem"> 1.479 +<div class="memproto"> 1.480 + <table class="memname"> 1.481 + <tr> 1.482 + <td class="memname">void cimg_library::cimg::warn </td> 1.483 + <td>(</td> 1.484 + <td class="paramtype">const char * </td> 1.485 + <td class="paramname"> <em>format</em>, </td> 1.486 + </tr> 1.487 + <tr> 1.488 + <td class="paramkey"></td> 1.489 + <td></td> 1.490 + <td class="paramtype"> </td> 1.491 + <td class="paramname"> <em>...</em></td><td> </td> 1.492 + </tr> 1.493 + <tr> 1.494 + <td></td> 1.495 + <td>)</td> 1.496 + <td></td><td></td><td><code> [inline]</code></td> 1.497 + </tr> 1.498 + </table> 1.499 +</div> 1.500 +<div class="memdoc"> 1.501 + 1.502 +<p> 1.503 +Display a warning message. 1.504 +<p> 1.505 +<dl compact><dt><b>Parameters:</b></dt><dd> 1.506 + <table border="0" cellspacing="2" cellpadding="0"> 1.507 + <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.508 + </table> 1.509 +</dl> 1.510 + 1.511 +</div> 1.512 +</div><p> 1.513 +<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.514 +<div class="memitem"> 1.515 +<div class="memproto"> 1.516 + <table class="memname"> 1.517 + <tr> 1.518 + <td class="memname">int cimg_library::cimg::system </td> 1.519 + <td>(</td> 1.520 + <td class="paramtype">const char *const </td> 1.521 + <td class="paramname"> <em>command</em>, </td> 1.522 + </tr> 1.523 + <tr> 1.524 + <td class="paramkey"></td> 1.525 + <td></td> 1.526 + <td class="paramtype">const char *const </td> 1.527 + <td class="paramname"> <em>module_name</em> = <code>0</code></td><td> </td> 1.528 + </tr> 1.529 + <tr> 1.530 + <td></td> 1.531 + <td>)</td> 1.532 + <td></td><td></td><td><code> [inline]</code></td> 1.533 + </tr> 1.534 + </table> 1.535 +</div> 1.536 +<div class="memdoc"> 1.537 + 1.538 +<p> 1.539 +<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.540 + 1.541 +</div> 1.542 +</div><p> 1.543 +<a class="anchor" name="0d2a283a3aa2572e9d343f040c8c4c6b"></a><!-- doxytag: member="cimg_library::cimg::endianness" ref="0d2a283a3aa2572e9d343f040c8c4c6b" args="()" --> 1.544 +<div class="memitem"> 1.545 +<div class="memproto"> 1.546 + <table class="memname"> 1.547 + <tr> 1.548 + <td class="memname">bool cimg_library::cimg::endianness </td> 1.549 + <td>(</td> 1.550 + <td class="paramname"> </td> 1.551 + <td> ) </td> 1.552 + <td><code> [inline]</code></td> 1.553 + </tr> 1.554 + </table> 1.555 +</div> 1.556 +<div class="memdoc"> 1.557 + 1.558 +<p> 1.559 +Return the current endianness of the CPU. 1.560 +<p> 1.561 +<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.562 + 1.563 +</div> 1.564 +</div><p> 1.565 +<a class="anchor" name="3ac7655e49556a90715f3532af221334"></a><!-- doxytag: member="cimg_library::cimg::sleep" ref="3ac7655e49556a90715f3532af221334" args="(const unsigned int milliseconds)" --> 1.566 +<div class="memitem"> 1.567 +<div class="memproto"> 1.568 + <table class="memname"> 1.569 + <tr> 1.570 + <td class="memname">void cimg_library::cimg::sleep </td> 1.571 + <td>(</td> 1.572 + <td class="paramtype">const unsigned int </td> 1.573 + <td class="paramname"> <em>milliseconds</em> </td> 1.574 + <td> ) </td> 1.575 + <td><code> [inline]</code></td> 1.576 + </tr> 1.577 + </table> 1.578 +</div> 1.579 +<div class="memdoc"> 1.580 + 1.581 +<p> 1.582 +Sleep for a certain numbers of milliseconds. 1.583 +<p> 1.584 +This function frees the CPU ressources during the sleeping time. It may be used to temporize your program properly, without wasting CPU time. 1.585 +</div> 1.586 +</div><p> 1.587 +<a class="anchor" name="3c8917c0f12139bff6de6e3e45fc5b77"></a><!-- doxytag: member="cimg_library::cimg::wait" ref="3c8917c0f12139bff6de6e3e45fc5b77" args="(const unsigned int milliseconds)" --> 1.588 +<div class="memitem"> 1.589 +<div class="memproto"> 1.590 + <table class="memname"> 1.591 + <tr> 1.592 + <td class="memname">unsigned int cimg_library::cimg::wait </td> 1.593 + <td>(</td> 1.594 + <td class="paramtype">const unsigned int </td> 1.595 + <td class="paramname"> <em>milliseconds</em> </td> 1.596 + <td> ) </td> 1.597 + <td><code> [inline]</code></td> 1.598 + </tr> 1.599 + </table> 1.600 +</div> 1.601 +<div class="memdoc"> 1.602 + 1.603 +<p> 1.604 +Wait for a certain number of milliseconds since the last call. 1.605 +<p> 1.606 +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.607 +</div> 1.608 +</div><p> 1.609 +<a class="anchor" name="5dd0a4d361e2db646f5042be6bfe1d31"></a><!-- doxytag: member="cimg_library::cimg::abs" ref="5dd0a4d361e2db646f5042be6bfe1d31" args="(const T a)" --> 1.610 +<div class="memitem"> 1.611 +<div class="memproto"> 1.612 + <table class="memname"> 1.613 + <tr> 1.614 + <td class="memname">T cimg_library::cimg::abs </td> 1.615 + <td>(</td> 1.616 + <td class="paramtype">const T </td> 1.617 + <td class="paramname"> <em>a</em> </td> 1.618 + <td> ) </td> 1.619 + <td><code> [inline]</code></td> 1.620 + </tr> 1.621 + </table> 1.622 +</div> 1.623 +<div class="memdoc"> 1.624 + 1.625 +<p> 1.626 +Return the absolute value of a number. 1.627 +<p> 1.628 +<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.629 + 1.630 +</div> 1.631 +</div><p> 1.632 +<a class="anchor" name="85970edf9afb3b48c0715fadf917854e"></a><!-- doxytag: member="cimg_library::cimg::mod" ref="85970edf9afb3b48c0715fadf917854e" args="(const T &x, const T &m)" --> 1.633 +<div class="memitem"> 1.634 +<div class="memproto"> 1.635 + <table class="memname"> 1.636 + <tr> 1.637 + <td class="memname">T cimg_library::cimg::mod </td> 1.638 + <td>(</td> 1.639 + <td class="paramtype">const T & </td> 1.640 + <td class="paramname"> <em>x</em>, </td> 1.641 + </tr> 1.642 + <tr> 1.643 + <td class="paramkey"></td> 1.644 + <td></td> 1.645 + <td class="paramtype">const T & </td> 1.646 + <td class="paramname"> <em>m</em></td><td> </td> 1.647 + </tr> 1.648 + <tr> 1.649 + <td></td> 1.650 + <td>)</td> 1.651 + <td></td><td></td><td><code> [inline]</code></td> 1.652 + </tr> 1.653 + </table> 1.654 +</div> 1.655 +<div class="memdoc"> 1.656 + 1.657 +<p> 1.658 +Return the modulo of a number. 1.659 +<p> 1.660 +<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.661 + 1.662 +</div> 1.663 +</div><p> 1.664 +<a class="anchor" name="e2bab18e9272641210d8b2d7e4a4503f"></a><!-- doxytag: member="cimg_library::cimg::minmod" ref="e2bab18e9272641210d8b2d7e4a4503f" args="(const T a, const T b)" --> 1.665 +<div class="memitem"> 1.666 +<div class="memproto"> 1.667 + <table class="memname"> 1.668 + <tr> 1.669 + <td class="memname">T cimg_library::cimg::minmod </td> 1.670 + <td>(</td> 1.671 + <td class="paramtype">const T </td> 1.672 + <td class="paramname"> <em>a</em>, </td> 1.673 + </tr> 1.674 + <tr> 1.675 + <td class="paramkey"></td> 1.676 + <td></td> 1.677 + <td class="paramtype">const T </td> 1.678 + <td class="paramname"> <em>b</em></td><td> </td> 1.679 + </tr> 1.680 + <tr> 1.681 + <td></td> 1.682 + <td>)</td> 1.683 + <td></td><td></td><td><code> [inline]</code></td> 1.684 + </tr> 1.685 + </table> 1.686 +</div> 1.687 +<div class="memdoc"> 1.688 + 1.689 +<p> 1.690 +Return the minmod of two numbers. 1.691 +<p> 1.692 +<em>minmod(<code>a</code>,<code>b</code>)</em> is defined to be :<ul> 1.693 +<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.694 + 1.695 +</div> 1.696 +</div><p> 1.697 +<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.698 +<div class="memitem"> 1.699 +<div class="memproto"> 1.700 + <table class="memname"> 1.701 + <tr> 1.702 + <td class="memname">double cimg_library::cimg::round </td> 1.703 + <td>(</td> 1.704 + <td class="paramtype">const double </td> 1.705 + <td class="paramname"> <em>x</em>, </td> 1.706 + </tr> 1.707 + <tr> 1.708 + <td class="paramkey"></td> 1.709 + <td></td> 1.710 + <td class="paramtype">const double </td> 1.711 + <td class="paramname"> <em>y</em>, </td> 1.712 + </tr> 1.713 + <tr> 1.714 + <td class="paramkey"></td> 1.715 + <td></td> 1.716 + <td class="paramtype">const int </td> 1.717 + <td class="paramname"> <em>rounding_type</em> = <code>0</code></td><td> </td> 1.718 + </tr> 1.719 + <tr> 1.720 + <td></td> 1.721 + <td>)</td> 1.722 + <td></td><td></td><td><code> [inline]</code></td> 1.723 + </tr> 1.724 + </table> 1.725 +</div> 1.726 +<div class="memdoc"> 1.727 + 1.728 +<p> 1.729 +Return a rounded number. 1.730 +<p> 1.731 +<dl compact><dt><b>Parameters:</b></dt><dd> 1.732 + <table border="0" cellspacing="2" cellpadding="0"> 1.733 + <tr><td valign="top"></td><td valign="top"><em>x</em> </td><td>is the number to be rounded. </td></tr> 1.734 + <tr><td valign="top"></td><td valign="top"><em>y</em> </td><td>is the rounding precision. </td></tr> 1.735 + <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.736 + </table> 1.737 +</dl> 1.738 + 1.739 +</div> 1.740 +</div><p> 1.741 +<a class="anchor" name="eec70054768b152c0dbea51f5a56536b"></a><!-- doxytag: member="cimg_library::cimg::uncase" ref="eec70054768b152c0dbea51f5a56536b" args="(char *const string)" --> 1.742 +<div class="memitem"> 1.743 +<div class="memproto"> 1.744 + <table class="memname"> 1.745 + <tr> 1.746 + <td class="memname">void cimg_library::cimg::uncase </td> 1.747 + <td>(</td> 1.748 + <td class="paramtype">char *const </td> 1.749 + <td class="paramname"> <em>string</em> </td> 1.750 + <td> ) </td> 1.751 + <td><code> [inline]</code></td> 1.752 + </tr> 1.753 + </table> 1.754 +</div> 1.755 +<div class="memdoc"> 1.756 + 1.757 +<p> 1.758 +Remove the 'case' of a C string. 1.759 +<p> 1.760 +Acts in-place. 1.761 +</div> 1.762 +</div><p> 1.763 +<a class="anchor" name="9ab0fcc7ef1bac330897fec51f617ae6"></a><!-- doxytag: member="cimg_library::cimg::atof" ref="9ab0fcc7ef1bac330897fec51f617ae6" args="(const char *const str)" --> 1.764 +<div class="memitem"> 1.765 +<div class="memproto"> 1.766 + <table class="memname"> 1.767 + <tr> 1.768 + <td class="memname">float cimg_library::cimg::atof </td> 1.769 + <td>(</td> 1.770 + <td class="paramtype">const char *const </td> 1.771 + <td class="paramname"> <em>str</em> </td> 1.772 + <td> ) </td> 1.773 + <td><code> [inline]</code></td> 1.774 + </tr> 1.775 + </table> 1.776 +</div> 1.777 +<div class="memdoc"> 1.778 + 1.779 +<p> 1.780 +Read a float number from a C-string. 1.781 +<p> 1.782 +<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.783 + 1.784 +</div> 1.785 +</div><p> 1.786 +<a class="anchor" name="3f65ad0f35bbbfc7ec197ce32f326da2"></a><!-- doxytag: member="cimg_library::cimg::strlen" ref="3f65ad0f35bbbfc7ec197ce32f326da2" args="(const char *const s)" --> 1.787 +<div class="memitem"> 1.788 +<div class="memproto"> 1.789 + <table class="memname"> 1.790 + <tr> 1.791 + <td class="memname">int cimg_library::cimg::strlen </td> 1.792 + <td>(</td> 1.793 + <td class="paramtype">const char *const </td> 1.794 + <td class="paramname"> <em>s</em> </td> 1.795 + <td> ) </td> 1.796 + <td><code> [inline]</code></td> 1.797 + </tr> 1.798 + </table> 1.799 +</div> 1.800 +<div class="memdoc"> 1.801 + 1.802 +<p> 1.803 +Compute the length of a C-string. 1.804 +<p> 1.805 +<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.806 + 1.807 +</div> 1.808 +</div><p> 1.809 +<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.810 +<div class="memitem"> 1.811 +<div class="memproto"> 1.812 + <table class="memname"> 1.813 + <tr> 1.814 + <td class="memname">int cimg_library::cimg::strncmp </td> 1.815 + <td>(</td> 1.816 + <td class="paramtype">const char *const </td> 1.817 + <td class="paramname"> <em>s1</em>, </td> 1.818 + </tr> 1.819 + <tr> 1.820 + <td class="paramkey"></td> 1.821 + <td></td> 1.822 + <td class="paramtype">const char *const </td> 1.823 + <td class="paramname"> <em>s2</em>, </td> 1.824 + </tr> 1.825 + <tr> 1.826 + <td class="paramkey"></td> 1.827 + <td></td> 1.828 + <td class="paramtype">const int </td> 1.829 + <td class="paramname"> <em>l</em></td><td> </td> 1.830 + </tr> 1.831 + <tr> 1.832 + <td></td> 1.833 + <td>)</td> 1.834 + <td></td><td></td><td><code> [inline]</code></td> 1.835 + </tr> 1.836 + </table> 1.837 +</div> 1.838 +<div class="memdoc"> 1.839 + 1.840 +<p> 1.841 +Compare the first <code>n</code> characters of two C-strings. 1.842 +<p> 1.843 +<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.844 + 1.845 +</div> 1.846 +</div><p> 1.847 +<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.848 +<div class="memitem"> 1.849 +<div class="memproto"> 1.850 + <table class="memname"> 1.851 + <tr> 1.852 + <td class="memname">int cimg_library::cimg::strncasecmp </td> 1.853 + <td>(</td> 1.854 + <td class="paramtype">const char *const </td> 1.855 + <td class="paramname"> <em>s1</em>, </td> 1.856 + </tr> 1.857 + <tr> 1.858 + <td class="paramkey"></td> 1.859 + <td></td> 1.860 + <td class="paramtype">const char *const </td> 1.861 + <td class="paramname"> <em>s2</em>, </td> 1.862 + </tr> 1.863 + <tr> 1.864 + <td class="paramkey"></td> 1.865 + <td></td> 1.866 + <td class="paramtype">const int </td> 1.867 + <td class="paramname"> <em>l</em></td><td> </td> 1.868 + </tr> 1.869 + <tr> 1.870 + <td></td> 1.871 + <td>)</td> 1.872 + <td></td><td></td><td><code> [inline]</code></td> 1.873 + </tr> 1.874 + </table> 1.875 +</div> 1.876 +<div class="memdoc"> 1.877 + 1.878 +<p> 1.879 +Compare the first <code>n</code> characters of two C-strings, ignoring the case. 1.880 +<p> 1.881 +<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.882 + 1.883 +</div> 1.884 +</div><p> 1.885 +<a class="anchor" name="aab723edb9b070b285367e7ffc099d78"></a><!-- doxytag: member="cimg_library::cimg::strcmp" ref="aab723edb9b070b285367e7ffc099d78" args="(const char *const s1, const char *const s2)" --> 1.886 +<div class="memitem"> 1.887 +<div class="memproto"> 1.888 + <table class="memname"> 1.889 + <tr> 1.890 + <td class="memname">int cimg_library::cimg::strcmp </td> 1.891 + <td>(</td> 1.892 + <td class="paramtype">const char *const </td> 1.893 + <td class="paramname"> <em>s1</em>, </td> 1.894 + </tr> 1.895 + <tr> 1.896 + <td class="paramkey"></td> 1.897 + <td></td> 1.898 + <td class="paramtype">const char *const </td> 1.899 + <td class="paramname"> <em>s2</em></td><td> </td> 1.900 + </tr> 1.901 + <tr> 1.902 + <td></td> 1.903 + <td>)</td> 1.904 + <td></td><td></td><td><code> [inline]</code></td> 1.905 + </tr> 1.906 + </table> 1.907 +</div> 1.908 +<div class="memdoc"> 1.909 + 1.910 +<p> 1.911 +Compare two C-strings. 1.912 +<p> 1.913 +<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.914 + 1.915 +</div> 1.916 +</div><p> 1.917 +<a class="anchor" name="43334b3df38ff7c4369a503a4fc3a9f9"></a><!-- doxytag: member="cimg_library::cimg::strcasecmp" ref="43334b3df38ff7c4369a503a4fc3a9f9" args="(const char *const s1, const char *const s2)" --> 1.918 +<div class="memitem"> 1.919 +<div class="memproto"> 1.920 + <table class="memname"> 1.921 + <tr> 1.922 + <td class="memname">int cimg_library::cimg::strcasecmp </td> 1.923 + <td>(</td> 1.924 + <td class="paramtype">const char *const </td> 1.925 + <td class="paramname"> <em>s1</em>, </td> 1.926 + </tr> 1.927 + <tr> 1.928 + <td class="paramkey"></td> 1.929 + <td></td> 1.930 + <td class="paramtype">const char *const </td> 1.931 + <td class="paramname"> <em>s2</em></td><td> </td> 1.932 + </tr> 1.933 + <tr> 1.934 + <td></td> 1.935 + <td>)</td> 1.936 + <td></td><td></td><td><code> [inline]</code></td> 1.937 + </tr> 1.938 + </table> 1.939 +</div> 1.940 +<div class="memdoc"> 1.941 + 1.942 +<p> 1.943 +Compare two C-strings, ignoring the case. 1.944 +<p> 1.945 +<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.946 + 1.947 +</div> 1.948 +</div><p> 1.949 +<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.950 +<div class="memitem"> 1.951 +<div class="memproto"> 1.952 + <table class="memname"> 1.953 + <tr> 1.954 + <td class="memname">int cimg_library::cimg::dialog </td> 1.955 + <td>(</td> 1.956 + <td class="paramtype">const char * </td> 1.957 + <td class="paramname"> <em>title</em>, </td> 1.958 + </tr> 1.959 + <tr> 1.960 + <td class="paramkey"></td> 1.961 + <td></td> 1.962 + <td class="paramtype">const char * </td> 1.963 + <td class="paramname"> <em>msg</em>, </td> 1.964 + </tr> 1.965 + <tr> 1.966 + <td class="paramkey"></td> 1.967 + <td></td> 1.968 + <td class="paramtype">const char * </td> 1.969 + <td class="paramname"> <em>button1_txt</em>, </td> 1.970 + </tr> 1.971 + <tr> 1.972 + <td class="paramkey"></td> 1.973 + <td></td> 1.974 + <td class="paramtype">const char * </td> 1.975 + <td class="paramname"> <em>button2_txt</em>, </td> 1.976 + </tr> 1.977 + <tr> 1.978 + <td class="paramkey"></td> 1.979 + <td></td> 1.980 + <td class="paramtype">const char * </td> 1.981 + <td class="paramname"> <em>button3_txt</em>, </td> 1.982 + </tr> 1.983 + <tr> 1.984 + <td class="paramkey"></td> 1.985 + <td></td> 1.986 + <td class="paramtype">const char * </td> 1.987 + <td class="paramname"> <em>button4_txt</em>, </td> 1.988 + </tr> 1.989 + <tr> 1.990 + <td class="paramkey"></td> 1.991 + <td></td> 1.992 + <td class="paramtype">const char * </td> 1.993 + <td class="paramname"> <em>button5_txt</em>, </td> 1.994 + </tr> 1.995 + <tr> 1.996 + <td class="paramkey"></td> 1.997 + <td></td> 1.998 + <td class="paramtype">const char * </td> 1.999 + <td class="paramname"> <em>button6_txt</em>, </td> 1.1000 + </tr> 1.1001 + <tr> 1.1002 + <td class="paramkey"></td> 1.1003 + <td></td> 1.1004 + <td class="paramtype">const CImg< t > & </td> 1.1005 + <td class="paramname"> <em>logo</em>, </td> 1.1006 + </tr> 1.1007 + <tr> 1.1008 + <td class="paramkey"></td> 1.1009 + <td></td> 1.1010 + <td class="paramtype">const bool </td> 1.1011 + <td class="paramname"> <em>centering</em> = <code>false</code></td><td> </td> 1.1012 + </tr> 1.1013 + <tr> 1.1014 + <td></td> 1.1015 + <td>)</td> 1.1016 + <td></td><td></td><td><code> [inline]</code></td> 1.1017 + </tr> 1.1018 + </table> 1.1019 +</div> 1.1020 +<div class="memdoc"> 1.1021 + 1.1022 +<p> 1.1023 +Display a dialog box, where a user can click standard buttons. 1.1024 +<p> 1.1025 +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.1026 + <table border="0" cellspacing="2" cellpadding="0"> 1.1027 + <tr><td valign="top"></td><td valign="top"><em>title</em> </td><td>= Title of the dialog window. </td></tr> 1.1028 + <tr><td valign="top"></td><td valign="top"><em>msg</em> </td><td>= Main message displayed inside the dialog window. </td></tr> 1.1029 + <tr><td valign="top"></td><td valign="top"><em>button1_txt</em> </td><td>= Label of the 1st button. </td></tr> 1.1030 + <tr><td valign="top"></td><td valign="top"><em>button2_txt</em> </td><td>= Label of the 2nd button. </td></tr> 1.1031 + <tr><td valign="top"></td><td valign="top"><em>button3_txt</em> </td><td>= Label of the 3rd button. </td></tr> 1.1032 + <tr><td valign="top"></td><td valign="top"><em>button4_txt</em> </td><td>= Label of the 4th button. </td></tr> 1.1033 + <tr><td valign="top"></td><td valign="top"><em>button5_txt</em> </td><td>= Label of the 5th button. </td></tr> 1.1034 + <tr><td valign="top"></td><td valign="top"><em>button6_txt</em> </td><td>= Label of the 6th button. </td></tr> 1.1035 + <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.1036 + <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.1037 + </table> 1.1038 +</dl> 1.1039 +<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.1040 +<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.1041 + 1.1042 +</div> 1.1043 +</div><p> 1.1044 +</div> 1.1045 +<hr noshade="noshade" size="1" width="100%"> 1.1046 +<a href="http://sourceforge.net"> 1.1047 +<img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img> 1.1048 +</a> 1.1049 +<!-- Start of StatCounter Code --> 1.1050 +<script type="text/javascript" language="javascript"> 1.1051 +<!-- 1.1052 +var sc_project=895001; 1.1053 +var sc_invisible=1; 1.1054 +var sc_partition=7; 1.1055 +var sc_security="5ea85181"; 1.1056 +//--> 1.1057 +</script> 1.1058 +<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.1059 +<!-- End of StatCounter Code --> 1.1060 +</body> 1.1061 +</html>