Mon, 03 Aug 2009 14:09:20 +0100
added P-touch decoder source
1 xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
2 <head>
3 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></meta>
4 <title>The CImg Library - C++ Template Image Processing Toolkit</title>
5 <meta content="David Tschumperle" name="author"></meta>
6 <link rel="shortcut icon" type="image/x-icon" href="http://cimg.sourceforge.net/favicon.ico"></link>
7 <link rel="icon" type="image/png" href="favicon.png"></link>
8 <link href="doxygen.css" rel="stylesheet" type="text/css">
9 <link href="tabs.css" rel="stylesheet" type="text/css">
10 <style type="text/css">
11 <!--
12 body {background-color:white; font-family:sans-serif; }
13 a:active{text-decoration:none; color:#303090}
14 a:link{text-decoration:none; color:#303090}
15 a:visited{text-decoration:none; color:#303090}
16 a:hover{text-decoration:underline; color:#4E9F71}
17 -->
18 </style>
19 <script language="JavaScript" type="text/javascript">
20 <!-- Original: Eric King (eric_andrew_king@hotmail.com) is used to display images in popup windows -->
21 <!-- Web Site: http://redrival.com/eak/ -->
22 <!-- This script and many more are available free online at -->
23 <!-- The JavaScript Source!! http://javascript.internet.com -->
24 <!-- Begin
25 function NewWindow(mypage, myname, w, h, scroll) {
26 var winl = (screen.width - w) / 2;
27 var wint = (screen.height - h) / 2;
28 winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable'
29 win = window.open(mypage, myname, winprops)
30 if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); }
31 }
32 // End -->
33 </script>
34 </head>
35 <body>
36 <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%">
37 <tbody><tr><td>
38 <hr noshade="noshade" size="1" width="90%"></hr>
39 <center>
40 <br/>
41 <a href="http://cimg.sourceforge.net"><img src="http://cimg.sourceforge.net/img/CImgLogo.jpg" alt="" border="0"></img></a><br/>
42 <br/>
43 </center>
44 <hr noshade="noshade" size="1" width="90%"></hr>
45 <center>
46 <table bgcolor="#EEEEFF" style="width: 90%; text-align: left; margin-left: auto; margin-right: auto;" border="0" cellpadding="3" cellspacing="0">
47 <tbody><tr><td style="text-align: center; vertical-align: top;">
48 <font color="#FFFFFF" face="Arial,Helvetica" size="-1">
49 <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/index.shtml">Main</a> <b>]</b>
50 <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/news.shtml">News</a><b>] </b>
51 <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/download.shtml">Download</a> <b>]</b>
52 <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/screenshots.shtml">Screenshots</a> <b>]</b>
53 <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__faq.html">FAQ</a> <b>]</b>
54 <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/group__cimg__tutorial.html">Tutorial</a> <b>]</b>
55 <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/reference/index.html">Documentation</a> <b>]</b>
56 <b>[</b> <a target="_parent" href="http://sourceforge.net/forum/forum.php?forum_id=334630">Forum</a> <b>]</b>
57 <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/chat.shtml">Chat</a> <b>]</b>
58 <b>[</b> <a target="_parent" href="http://cimg.sourceforge.net/links.shtml">Links</a> <b>]</b>
59 </font>
60 </td></tr></tbody>
61 </table>
62 </center>
63 <hr noshade="noshade" size="1" width="90%"></hr>
64 </td></tr></tbody>
65 </table>
66 <!-- Generated by Doxygen 1.5.7.1 -->
67 <script type="text/javascript">
68 <!--
69 function changeDisplayState (e){
70 var num=this.id.replace(/[^[0-9]/g,'');
71 var button=this.firstChild;
72 var sectionDiv=document.getElementById('dynsection'+num);
73 if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){
74 sectionDiv.style.display='block';
75 button.src='open.gif';
76 }else{
77 sectionDiv.style.display='none';
78 button.src='closed.gif';
79 }
80 }
81 function initDynSections(){
82 var divs=document.getElementsByTagName('div');
83 var sectionCounter=1;
84 for(var i=0;i<divs.length-1;i++){
85 if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){
86 var header=divs[i];
87 var section=divs[i+1];
88 var button=header.firstChild;
89 if (button!='IMG'){
90 divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild);
91 button=document.createElement('img');
92 divs[i].insertBefore(button,divs[i].firstChild);
93 }
94 header.style.cursor='pointer';
95 header.onclick=changeDisplayState;
96 header.id='dynheader'+sectionCounter;
97 button.src='closed.gif';
98 section.id='dynsection'+sectionCounter;
99 section.style.display='none';
100 section.style.marginLeft='14px';
101 sectionCounter++;
102 }
103 }
104 }
105 window.onload = initDynSections;
106 -->
107 </script>
108 <div class="navigation" id="top">
109 <div class="tabs">
110 <ul>
111 <li><a href="index.html"><span>Main Page</span></a></li>
112 <li><a href="modules.html"><span>Modules</span></a></li>
113 <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
114 <li><a href="annotated.html"><span>Classes</span></a></li>
115 </ul>
116 </div>
117 <div class="tabs">
118 <ul>
119 <li><a href="namespaces.html"><span>Namespace List</span></a></li>
120 <li><a href="namespacemembers.html"><span>Namespace Members</span></a></li>
121 </ul>
122 </div>
123 <div class="navpath"><a class="el" href="namespacecimg__library.html">cimg_library</a>::<a class="el" href="namespacecimg__library_1_1cimg.html">cimg</a>
124 </div>
125 </div>
126 <div class="contents">
127 <h1>cimg_library::cimg Namespace Reference</h1>Namespace that encompasses <em>low-level</em> functions and variables of the CImg Library.
128 <a href="#_details">More...</a>
129 <p>
130 <table border="0" cellpadding="0" cellspacing="0">
131 <tr><td></td></tr>
132 <tr><td colspan="2"><br><h2>Functions</h2></td></tr>
133 <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>
135 <tr><td class="mdescLeft"> </td><td class="mdescRight">Print informations about CImg environement variables. <a href="#c1b66fe77173de9e5e8542b2823d6071"></a><br></td></tr>
136 <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>
138 <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>
139 <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>
141 <tr><td class="mdescLeft"> </td><td class="mdescRight">Display a warning message. <a href="#93ec28267b101050d949d1ebff1b88cf"></a><br></td></tr>
142 <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>
144 <tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="f3bb87016460121409a8f1a2ebe418b1"></a><!-- doxytag: member="cimg_library::cimg::temporary" ref="f3bb87016460121409a8f1a2ebe418b1" args="(const T &)" -->
145 template<typename T > </td></tr>
146 <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>
148 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return a reference to a temporary variable of type T. <br></td></tr>
149 <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)" -->
150 template<typename T > </td></tr>
151 <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>
153 <tr><td class="mdescLeft"> </td><td class="mdescRight">Exchange values of variables <code>a</code> and <code>b</code>. <br></td></tr>
154 <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)" -->
155 template<typename T1 , typename T2 > </td></tr>
156 <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>
158 <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>
159 <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)" -->
160 template<typename T1 , typename T2 , typename T3 > </td></tr>
161 <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>
163 <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>
164 <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)" -->
165 template<typename T1 , typename T2 , typename T3 , typename T4 > </td></tr>
166 <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>
168 <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>
169 <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)" -->
170 template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 > </td></tr>
171 <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>
173 <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>
174 <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)" -->
175 template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 > </td></tr>
176 <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>
178 <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>
179 <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)" -->
180 template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 > </td></tr>
181 <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>
183 <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>
184 <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)" -->
185 template<typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 > </td></tr>
186 <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>
188 <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>
189 <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>
191 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the current endianness of the CPU. <a href="#0d2a283a3aa2572e9d343f040c8c4c6b"></a><br></td></tr>
192 <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)" -->
193 template<typename T > </td></tr>
194 <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>
196 <tr><td class="mdescLeft"> </td><td class="mdescRight">Invert endianness of a memory buffer. <br></td></tr>
197 <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)" -->
198 template<typename T > </td></tr>
199 <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>
201 <tr><td class="mdescLeft"> </td><td class="mdescRight">Invert endianness of a single variable. <br></td></tr>
202 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f883131bbc64e996d212114cc2b2b21a"></a><!-- doxytag: member="cimg_library::cimg::time" ref="f883131bbc64e996d212114cc2b2b21a" args="()" -->
203 unsigned long </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#f883131bbc64e996d212114cc2b2b21a">time</a> ()</td></tr>
205 <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the value of a system timer with a millisecond precision. <br></td></tr>
206 <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>
208 <tr><td class="mdescLeft"> </td><td class="mdescRight">Sleep for a certain numbers of milliseconds. <a href="#3ac7655e49556a90715f3532af221334"></a><br></td></tr>
209 <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>
211 <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>
212 <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)" -->
213 template<typename T > </td></tr>
214 <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>
216 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return a left bitwise-rotated number. <br></td></tr>
217 <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)" -->
218 template<typename T > </td></tr>
219 <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>
221 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return a right bitwise-rotated number. <br></td></tr>
222 <tr><td class="memTemplParams" nowrap colspan="2">template<typename T > </td></tr>
223 <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>
225 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the absolute value of a number. <a href="#5dd0a4d361e2db646f5042be6bfe1d31"></a><br></td></tr>
226 <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)" -->
227 template<typename T > </td></tr>
228 <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>
230 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the square of a number. <br></td></tr>
231 <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)" -->
232 int </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#8dde183be46c1821a3901b63825a4cf4">xln</a> (const int x)</td></tr>
234 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return 1 + log_10(x). <br></td></tr>
235 <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)" -->
236 template<typename t1 , typename t2 > </td></tr>
237 <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>
239 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the minimum value between two numbers. <br></td></tr>
240 <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)" -->
241 template<typename t1 , typename t2 , typename t3 > </td></tr>
242 <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>
244 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the minimum value between three numbers. <br></td></tr>
245 <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)" -->
246 template<typename t1 , typename t2 , typename t3 , typename t4 > </td></tr>
247 <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">cimg::superset3< t1, t2, t3, <br class="typebreak">
248 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>
250 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the minimum value between four numbers. <br></td></tr>
251 <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)" -->
252 template<typename t1 , typename t2 > </td></tr>
253 <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>
255 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the maximum value between two numbers. <br></td></tr>
256 <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)" -->
257 template<typename t1 , typename t2 , typename t3 > </td></tr>
258 <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>
260 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the maximum value between three numbers. <br></td></tr>
261 <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)" -->
262 template<typename t1 , typename t2 , typename t3 , typename t4 > </td></tr>
263 <tr><td class="memTemplItemLeft" nowrap align="right" valign="top">cimg::superset3< t1, t2, t3, <br class="typebreak">
264 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>
266 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the maximum value between four numbers. <br></td></tr>
267 <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)" -->
268 template<typename T > </td></tr>
269 <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>
271 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the sign of a number. <br></td></tr>
272 <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)" -->
273 template<typename T > </td></tr>
274 <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>
276 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the nearest power of 2 higher than a given number. <br></td></tr>
277 <tr><td class="memTemplParams" nowrap colspan="2">template<typename T > </td></tr>
278 <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>
280 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the modulo of a number. <a href="#85970edf9afb3b48c0715fadf917854e"></a><br></td></tr>
281 <tr><td class="memTemplParams" nowrap colspan="2">template<typename T > </td></tr>
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#e2bab18e9272641210d8b2d7e4a4503f">minmod</a> (const T a, const T b)</td></tr>
284 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the minmod of two numbers. <a href="#e2bab18e9272641210d8b2d7e4a4503f"></a><br></td></tr>
285 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f31db729637ea4dad61e49e5729839c4"></a><!-- doxytag: member="cimg_library::cimg::rand" ref="f31db729637ea4dad61e49e5729839c4" args="()" -->
286 double </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#f31db729637ea4dad61e49e5729839c4">rand</a> ()</td></tr>
288 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return a random variable between [0,1] with respect to an uniform distribution. <br></td></tr>
289 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ae82972570fdc0904d4f03df7b5d3023"></a><!-- doxytag: member="cimg_library::cimg::crand" ref="ae82972570fdc0904d4f03df7b5d3023" args="()" -->
290 double </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#ae82972570fdc0904d4f03df7b5d3023">crand</a> ()</td></tr>
292 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return a random variable between [-1,1] with respect to an uniform distribution. <br></td></tr>
293 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0341a323738439349625b2de5f35bb4c"></a><!-- doxytag: member="cimg_library::cimg::grand" ref="0341a323738439349625b2de5f35bb4c" args="()" -->
294 double </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#0341a323738439349625b2de5f35bb4c">grand</a> ()</td></tr>
296 <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>
297 <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)" -->
298 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>
300 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return a random variable following a Poisson distribution of parameter z. <br></td></tr>
301 <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>
303 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return a rounded number. <a href="#0bfd704cc09f4a25f09035b067aca4e3"></a><br></td></tr>
304 <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)" -->
305 char </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#5a028d4d4de4e1894263a29a6de8e2ee">uncase</a> (const char x)</td></tr>
307 <tr><td class="mdescLeft"> </td><td class="mdescRight">Remove the 'case' of an ASCII character. <br></td></tr>
308 <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>
310 <tr><td class="mdescLeft"> </td><td class="mdescRight">Remove the 'case' of a C string. <a href="#eec70054768b152c0dbea51f5a56536b"></a><br></td></tr>
311 <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>
313 <tr><td class="mdescLeft"> </td><td class="mdescRight">Read a float number from a C-string. <a href="#9ab0fcc7ef1bac330897fec51f617ae6"></a><br></td></tr>
314 <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>
316 <tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the length of a C-string. <a href="#3f65ad0f35bbbfc7ec197ce32f326da2"></a><br></td></tr>
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#efc1425e963cd56d8a926908749119a5">strncmp</a> (const char *const s1, const char *const s2, const int l)</td></tr>
319 <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>
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#747de40c911c42d60e1a4ee3f0c69c6c">strncasecmp</a> (const char *const s1, const char *const s2, const int l)</td></tr>
322 <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>
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#aab723edb9b070b285367e7ffc099d78">strcmp</a> (const char *const s1, const char *const s2)</td></tr>
325 <tr><td class="mdescLeft"> </td><td class="mdescRight">Compare two C-strings. <a href="#aab723edb9b070b285367e7ffc099d78"></a><br></td></tr>
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#43334b3df38ff7c4369a503a4fc3a9f9">strcasecmp</a> (const char *const s1, const char *const s2)</td></tr>
328 <tr><td class="mdescLeft"> </td><td class="mdescRight">Compare two C-strings, ignoring the case. <a href="#43334b3df38ff7c4369a503a4fc3a9f9"></a><br></td></tr>
329 <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)" -->
330 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>
332 <tr><td class="mdescLeft"> </td><td class="mdescRight">Find a character in a C-string. <br></td></tr>
333 <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)" -->
334 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>
336 <tr><td class="mdescLeft"> </td><td class="mdescRight">Remove useless delimiters on the borders of a C-string. <br></td></tr>
337 <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)" -->
338 void </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#7199326277681bfe958fc21a508897e2">strclean</a> (char *const s)</td></tr>
340 <tr><td class="mdescLeft"> </td><td class="mdescRight">Remove useless spaces and symmetric delimiters ', " and ` from a C-string. <br></td></tr>
341 <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)" -->
342 void </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#7710ef1683aa12ead974583b764cd353">strescape</a> (char *const s)</td></tr>
344 <tr><td class="mdescLeft"> </td><td class="mdescRight">Replace explicit escape sequences '' in C-strings (where x in [ntvbrfa?'"0]). <br></td></tr>
345 <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)" -->
346 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>
348 <tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the basename of a filename. <br></td></tr>
349 <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)" -->
350 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>
352 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return or set path to store temporary files. <br></td></tr>
353 <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)" -->
354 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>
356 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return or set path to the ImageMagick's <code>convert</code> tool. <br></td></tr>
357 <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)" -->
358 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>
360 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return path of the GraphicsMagick's <code>gm</code> tool. <br></td></tr>
361 <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)" -->
362 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>
364 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return or set path of the <code>XMedcon</code> tool. <br></td></tr>
365 <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)" -->
366 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>
368 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return or set path to the 'ffmpeg' command. <br></td></tr>
369 <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)" -->
370 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>
372 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return or set path to the 'gzip' command. <br></td></tr>
373 <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)" -->
374 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>
376 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return or set path to the 'gunzip' command. <br></td></tr>
377 <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)" -->
378 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>
380 <tr><td class="mdescLeft"> </td><td class="mdescRight">Return or set path to the 'dcraw' command. <br></td></tr>
381 <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)" -->
382 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>
384 <tr><td class="mdescLeft"> </td><td class="mdescRight">Split a filename into two strings 'body' and 'extension'. <br></td></tr>
385 <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)" -->
386 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>
388 <tr><td class="mdescLeft"> </td><td class="mdescRight">Create a numbered version of a filename. <br></td></tr>
389 <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)" -->
390 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>
392 <tr><td class="mdescLeft"> </td><td class="mdescRight">Open a file, and check for possible errors. <br></td></tr>
393 <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)" -->
394 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>
396 <tr><td class="mdescLeft"> </td><td class="mdescRight">Close a file, and check for possible errors. <br></td></tr>
397 <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)" -->
398 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>
400 <tr><td class="mdescLeft"> </td><td class="mdescRight">Try to guess the image format of a filename, using its magick numbers. <br></td></tr>
401 <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)" -->
402 template<typename T > </td></tr>
403 <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>
405 <tr><td class="mdescLeft"> </td><td class="mdescRight">Read file data, and check for possible errors. <br></td></tr>
406 <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)" -->
407 template<typename T > </td></tr>
408 <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>
410 <tr><td class="mdescLeft"> </td><td class="mdescRight">Write data to a file, and check for possible errors. <br></td></tr>
411 <tr><td class="memTemplParams" nowrap colspan="2">template<typename t > </td></tr>
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#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>
414 <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>
415 <tr><td colspan="2"><br><h2>Variables</h2></td></tr>
416 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0227707be3c6c40e2f71806077fbfcdb"></a><!-- doxytag: member="cimg_library::cimg::valuePI" ref="0227707be3c6c40e2f71806077fbfcdb" args="" -->
417 const double </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacecimg__library_1_1cimg.html#0227707be3c6c40e2f71806077fbfcdb">valuePI</a> = 3.14159265358979323846</td></tr>
419 <tr><td class="mdescLeft"> </td><td class="mdescRight">Definition of the mathematical constant PI. <br></td></tr>
420 </table>
421 <hr><a name="_details"></a><h2>Detailed Description</h2>
422 Namespace that encompasses <em>low-level</em> functions and variables of the CImg Library.
423 <p>
424 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>
425 <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>
427 <p>
428 <hr><h2>Function Documentation</h2>
429 <a class="anchor" name="c1b66fe77173de9e5e8542b2823d6071"></a><!-- doxytag: member="cimg_library::cimg::info" ref="c1b66fe77173de9e5e8542b2823d6071" args="()" -->
430 <div class="memitem">
431 <div class="memproto">
432 <table class="memname">
433 <tr>
434 <td class="memname">void info </td>
435 <td>(</td>
436 <td class="paramname"> </td>
437 <td> ) </td>
438 <td><code> [inline]</code></td>
439 </tr>
440 </table>
441 </div>
442 <div class="memdoc">
444 <p>
445 Print informations about CImg environement variables.
446 <p>
447 Printing is done on the standard error output.
448 </div>
449 </div><p>
450 <a class="anchor" name="acf66918a1173b3f72fe6f088d94f26b"></a><!-- doxytag: member="cimg_library::cimg::exception_mode" ref="acf66918a1173b3f72fe6f088d94f26b" args="()" -->
451 <div class="memitem">
452 <div class="memproto">
453 <table class="memname">
454 <tr>
455 <td class="memname">unsigned int& cimg_library::cimg::exception_mode </td>
456 <td>(</td>
457 <td class="paramname"> </td>
458 <td> ) </td>
459 <td><code> [inline]</code></td>
460 </tr>
461 </table>
462 </div>
463 <div class="memdoc">
465 <p>
466 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.
467 <p>
468 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>
469 <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>
471 </div>
472 </div><p>
473 <a class="anchor" name="93ec28267b101050d949d1ebff1b88cf"></a><!-- doxytag: member="cimg_library::cimg::warn" ref="93ec28267b101050d949d1ebff1b88cf" args="(const char *format,...)" -->
474 <div class="memitem">
475 <div class="memproto">
476 <table class="memname">
477 <tr>
478 <td class="memname">void cimg_library::cimg::warn </td>
479 <td>(</td>
480 <td class="paramtype">const char * </td>
481 <td class="paramname"> <em>format</em>, </td>
482 </tr>
483 <tr>
484 <td class="paramkey"></td>
485 <td></td>
486 <td class="paramtype"> </td>
487 <td class="paramname"> <em>...</em></td><td> </td>
488 </tr>
489 <tr>
490 <td></td>
491 <td>)</td>
492 <td></td><td></td><td><code> [inline]</code></td>
493 </tr>
494 </table>
495 </div>
496 <div class="memdoc">
498 <p>
499 Display a warning message.
500 <p>
501 <dl compact><dt><b>Parameters:</b></dt><dd>
502 <table border="0" cellspacing="2" cellpadding="0">
503 <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>
504 </table>
505 </dl>
507 </div>
508 </div><p>
509 <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)" -->
510 <div class="memitem">
511 <div class="memproto">
512 <table class="memname">
513 <tr>
514 <td class="memname">int cimg_library::cimg::system </td>
515 <td>(</td>
516 <td class="paramtype">const char *const </td>
517 <td class="paramname"> <em>command</em>, </td>
518 </tr>
519 <tr>
520 <td class="paramkey"></td>
521 <td></td>
522 <td class="paramtype">const char *const </td>
523 <td class="paramname"> <em>module_name</em> = <code>0</code></td><td> </td>
524 </tr>
525 <tr>
526 <td></td>
527 <td>)</td>
528 <td></td><td></td><td><code> [inline]</code></td>
529 </tr>
530 </table>
531 </div>
532 <div class="memdoc">
534 <p>
535 <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>
537 </div>
538 </div><p>
539 <a class="anchor" name="0d2a283a3aa2572e9d343f040c8c4c6b"></a><!-- doxytag: member="cimg_library::cimg::endianness" ref="0d2a283a3aa2572e9d343f040c8c4c6b" args="()" -->
540 <div class="memitem">
541 <div class="memproto">
542 <table class="memname">
543 <tr>
544 <td class="memname">bool cimg_library::cimg::endianness </td>
545 <td>(</td>
546 <td class="paramname"> </td>
547 <td> ) </td>
548 <td><code> [inline]</code></td>
549 </tr>
550 </table>
551 </div>
552 <div class="memdoc">
554 <p>
555 Return the current endianness of the CPU.
556 <p>
557 <dl class="return" compact><dt><b>Returns:</b></dt><dd><code>false</code> for "Little Endian", <code>true</code> for "Big Endian". </dd></dl>
559 </div>
560 </div><p>
561 <a class="anchor" name="3ac7655e49556a90715f3532af221334"></a><!-- doxytag: member="cimg_library::cimg::sleep" ref="3ac7655e49556a90715f3532af221334" args="(const unsigned int milliseconds)" -->
562 <div class="memitem">
563 <div class="memproto">
564 <table class="memname">
565 <tr>
566 <td class="memname">void cimg_library::cimg::sleep </td>
567 <td>(</td>
568 <td class="paramtype">const unsigned int </td>
569 <td class="paramname"> <em>milliseconds</em> </td>
570 <td> ) </td>
571 <td><code> [inline]</code></td>
572 </tr>
573 </table>
574 </div>
575 <div class="memdoc">
577 <p>
578 Sleep for a certain numbers of milliseconds.
579 <p>
580 This function frees the CPU ressources during the sleeping time. It may be used to temporize your program properly, without wasting CPU time.
581 </div>
582 </div><p>
583 <a class="anchor" name="3c8917c0f12139bff6de6e3e45fc5b77"></a><!-- doxytag: member="cimg_library::cimg::wait" ref="3c8917c0f12139bff6de6e3e45fc5b77" args="(const unsigned int milliseconds)" -->
584 <div class="memitem">
585 <div class="memproto">
586 <table class="memname">
587 <tr>
588 <td class="memname">unsigned int cimg_library::cimg::wait </td>
589 <td>(</td>
590 <td class="paramtype">const unsigned int </td>
591 <td class="paramname"> <em>milliseconds</em> </td>
592 <td> ) </td>
593 <td><code> [inline]</code></td>
594 </tr>
595 </table>
596 </div>
597 <div class="memdoc">
599 <p>
600 Wait for a certain number of milliseconds since the last call.
601 <p>
602 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.
603 </div>
604 </div><p>
605 <a class="anchor" name="5dd0a4d361e2db646f5042be6bfe1d31"></a><!-- doxytag: member="cimg_library::cimg::abs" ref="5dd0a4d361e2db646f5042be6bfe1d31" args="(const T a)" -->
606 <div class="memitem">
607 <div class="memproto">
608 <table class="memname">
609 <tr>
610 <td class="memname">T cimg_library::cimg::abs </td>
611 <td>(</td>
612 <td class="paramtype">const T </td>
613 <td class="paramname"> <em>a</em> </td>
614 <td> ) </td>
615 <td><code> [inline]</code></td>
616 </tr>
617 </table>
618 </div>
619 <div class="memdoc">
621 <p>
622 Return the absolute value of a number.
623 <p>
624 <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>
626 </div>
627 </div><p>
628 <a class="anchor" name="85970edf9afb3b48c0715fadf917854e"></a><!-- doxytag: member="cimg_library::cimg::mod" ref="85970edf9afb3b48c0715fadf917854e" args="(const T &x, const T &m)" -->
629 <div class="memitem">
630 <div class="memproto">
631 <table class="memname">
632 <tr>
633 <td class="memname">T cimg_library::cimg::mod </td>
634 <td>(</td>
635 <td class="paramtype">const T & </td>
636 <td class="paramname"> <em>x</em>, </td>
637 </tr>
638 <tr>
639 <td class="paramkey"></td>
640 <td></td>
641 <td class="paramtype">const T & </td>
642 <td class="paramname"> <em>m</em></td><td> </td>
643 </tr>
644 <tr>
645 <td></td>
646 <td>)</td>
647 <td></td><td></td><td><code> [inline]</code></td>
648 </tr>
649 </table>
650 </div>
651 <div class="memdoc">
653 <p>
654 Return the modulo of a number.
655 <p>
656 <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>
658 </div>
659 </div><p>
660 <a class="anchor" name="e2bab18e9272641210d8b2d7e4a4503f"></a><!-- doxytag: member="cimg_library::cimg::minmod" ref="e2bab18e9272641210d8b2d7e4a4503f" args="(const T a, const T b)" -->
661 <div class="memitem">
662 <div class="memproto">
663 <table class="memname">
664 <tr>
665 <td class="memname">T cimg_library::cimg::minmod </td>
666 <td>(</td>
667 <td class="paramtype">const T </td>
668 <td class="paramname"> <em>a</em>, </td>
669 </tr>
670 <tr>
671 <td class="paramkey"></td>
672 <td></td>
673 <td class="paramtype">const T </td>
674 <td class="paramname"> <em>b</em></td><td> </td>
675 </tr>
676 <tr>
677 <td></td>
678 <td>)</td>
679 <td></td><td></td><td><code> [inline]</code></td>
680 </tr>
681 </table>
682 </div>
683 <div class="memdoc">
685 <p>
686 Return the minmod of two numbers.
687 <p>
688 <em>minmod(<code>a</code>,<code>b</code>)</em> is defined to be :<ul>
689 <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>
691 </div>
692 </div><p>
693 <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)" -->
694 <div class="memitem">
695 <div class="memproto">
696 <table class="memname">
697 <tr>
698 <td class="memname">double cimg_library::cimg::round </td>
699 <td>(</td>
700 <td class="paramtype">const double </td>
701 <td class="paramname"> <em>x</em>, </td>
702 </tr>
703 <tr>
704 <td class="paramkey"></td>
705 <td></td>
706 <td class="paramtype">const double </td>
707 <td class="paramname"> <em>y</em>, </td>
708 </tr>
709 <tr>
710 <td class="paramkey"></td>
711 <td></td>
712 <td class="paramtype">const int </td>
713 <td class="paramname"> <em>rounding_type</em> = <code>0</code></td><td> </td>
714 </tr>
715 <tr>
716 <td></td>
717 <td>)</td>
718 <td></td><td></td><td><code> [inline]</code></td>
719 </tr>
720 </table>
721 </div>
722 <div class="memdoc">
724 <p>
725 Return a rounded number.
726 <p>
727 <dl compact><dt><b>Parameters:</b></dt><dd>
728 <table border="0" cellspacing="2" cellpadding="0">
729 <tr><td valign="top"></td><td valign="top"><em>x</em> </td><td>is the number to be rounded. </td></tr>
730 <tr><td valign="top"></td><td valign="top"><em>y</em> </td><td>is the rounding precision. </td></tr>
731 <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>
732 </table>
733 </dl>
735 </div>
736 </div><p>
737 <a class="anchor" name="eec70054768b152c0dbea51f5a56536b"></a><!-- doxytag: member="cimg_library::cimg::uncase" ref="eec70054768b152c0dbea51f5a56536b" args="(char *const string)" -->
738 <div class="memitem">
739 <div class="memproto">
740 <table class="memname">
741 <tr>
742 <td class="memname">void cimg_library::cimg::uncase </td>
743 <td>(</td>
744 <td class="paramtype">char *const </td>
745 <td class="paramname"> <em>string</em> </td>
746 <td> ) </td>
747 <td><code> [inline]</code></td>
748 </tr>
749 </table>
750 </div>
751 <div class="memdoc">
753 <p>
754 Remove the 'case' of a C string.
755 <p>
756 Acts in-place.
757 </div>
758 </div><p>
759 <a class="anchor" name="9ab0fcc7ef1bac330897fec51f617ae6"></a><!-- doxytag: member="cimg_library::cimg::atof" ref="9ab0fcc7ef1bac330897fec51f617ae6" args="(const char *const str)" -->
760 <div class="memitem">
761 <div class="memproto">
762 <table class="memname">
763 <tr>
764 <td class="memname">float cimg_library::cimg::atof </td>
765 <td>(</td>
766 <td class="paramtype">const char *const </td>
767 <td class="paramname"> <em>str</em> </td>
768 <td> ) </td>
769 <td><code> [inline]</code></td>
770 </tr>
771 </table>
772 </div>
773 <div class="memdoc">
775 <p>
776 Read a float number from a C-string.
777 <p>
778 <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>
780 </div>
781 </div><p>
782 <a class="anchor" name="3f65ad0f35bbbfc7ec197ce32f326da2"></a><!-- doxytag: member="cimg_library::cimg::strlen" ref="3f65ad0f35bbbfc7ec197ce32f326da2" args="(const char *const s)" -->
783 <div class="memitem">
784 <div class="memproto">
785 <table class="memname">
786 <tr>
787 <td class="memname">int cimg_library::cimg::strlen </td>
788 <td>(</td>
789 <td class="paramtype">const char *const </td>
790 <td class="paramname"> <em>s</em> </td>
791 <td> ) </td>
792 <td><code> [inline]</code></td>
793 </tr>
794 </table>
795 </div>
796 <div class="memdoc">
798 <p>
799 Compute the length of a C-string.
800 <p>
801 <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>
803 </div>
804 </div><p>
805 <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)" -->
806 <div class="memitem">
807 <div class="memproto">
808 <table class="memname">
809 <tr>
810 <td class="memname">int cimg_library::cimg::strncmp </td>
811 <td>(</td>
812 <td class="paramtype">const char *const </td>
813 <td class="paramname"> <em>s1</em>, </td>
814 </tr>
815 <tr>
816 <td class="paramkey"></td>
817 <td></td>
818 <td class="paramtype">const char *const </td>
819 <td class="paramname"> <em>s2</em>, </td>
820 </tr>
821 <tr>
822 <td class="paramkey"></td>
823 <td></td>
824 <td class="paramtype">const int </td>
825 <td class="paramname"> <em>l</em></td><td> </td>
826 </tr>
827 <tr>
828 <td></td>
829 <td>)</td>
830 <td></td><td></td><td><code> [inline]</code></td>
831 </tr>
832 </table>
833 </div>
834 <div class="memdoc">
836 <p>
837 Compare the first <code>n</code> characters of two C-strings.
838 <p>
839 <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>
841 </div>
842 </div><p>
843 <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)" -->
844 <div class="memitem">
845 <div class="memproto">
846 <table class="memname">
847 <tr>
848 <td class="memname">int cimg_library::cimg::strncasecmp </td>
849 <td>(</td>
850 <td class="paramtype">const char *const </td>
851 <td class="paramname"> <em>s1</em>, </td>
852 </tr>
853 <tr>
854 <td class="paramkey"></td>
855 <td></td>
856 <td class="paramtype">const char *const </td>
857 <td class="paramname"> <em>s2</em>, </td>
858 </tr>
859 <tr>
860 <td class="paramkey"></td>
861 <td></td>
862 <td class="paramtype">const int </td>
863 <td class="paramname"> <em>l</em></td><td> </td>
864 </tr>
865 <tr>
866 <td></td>
867 <td>)</td>
868 <td></td><td></td><td><code> [inline]</code></td>
869 </tr>
870 </table>
871 </div>
872 <div class="memdoc">
874 <p>
875 Compare the first <code>n</code> characters of two C-strings, ignoring the case.
876 <p>
877 <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>
879 </div>
880 </div><p>
881 <a class="anchor" name="aab723edb9b070b285367e7ffc099d78"></a><!-- doxytag: member="cimg_library::cimg::strcmp" ref="aab723edb9b070b285367e7ffc099d78" args="(const char *const s1, const char *const s2)" -->
882 <div class="memitem">
883 <div class="memproto">
884 <table class="memname">
885 <tr>
886 <td class="memname">int cimg_library::cimg::strcmp </td>
887 <td>(</td>
888 <td class="paramtype">const char *const </td>
889 <td class="paramname"> <em>s1</em>, </td>
890 </tr>
891 <tr>
892 <td class="paramkey"></td>
893 <td></td>
894 <td class="paramtype">const char *const </td>
895 <td class="paramname"> <em>s2</em></td><td> </td>
896 </tr>
897 <tr>
898 <td></td>
899 <td>)</td>
900 <td></td><td></td><td><code> [inline]</code></td>
901 </tr>
902 </table>
903 </div>
904 <div class="memdoc">
906 <p>
907 Compare two C-strings.
908 <p>
909 <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>
911 </div>
912 </div><p>
913 <a class="anchor" name="43334b3df38ff7c4369a503a4fc3a9f9"></a><!-- doxytag: member="cimg_library::cimg::strcasecmp" ref="43334b3df38ff7c4369a503a4fc3a9f9" args="(const char *const s1, const char *const s2)" -->
914 <div class="memitem">
915 <div class="memproto">
916 <table class="memname">
917 <tr>
918 <td class="memname">int cimg_library::cimg::strcasecmp </td>
919 <td>(</td>
920 <td class="paramtype">const char *const </td>
921 <td class="paramname"> <em>s1</em>, </td>
922 </tr>
923 <tr>
924 <td class="paramkey"></td>
925 <td></td>
926 <td class="paramtype">const char *const </td>
927 <td class="paramname"> <em>s2</em></td><td> </td>
928 </tr>
929 <tr>
930 <td></td>
931 <td>)</td>
932 <td></td><td></td><td><code> [inline]</code></td>
933 </tr>
934 </table>
935 </div>
936 <div class="memdoc">
938 <p>
939 Compare two C-strings, ignoring the case.
940 <p>
941 <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>
943 </div>
944 </div><p>
945 <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)" -->
946 <div class="memitem">
947 <div class="memproto">
948 <table class="memname">
949 <tr>
950 <td class="memname">int cimg_library::cimg::dialog </td>
951 <td>(</td>
952 <td class="paramtype">const char * </td>
953 <td class="paramname"> <em>title</em>, </td>
954 </tr>
955 <tr>
956 <td class="paramkey"></td>
957 <td></td>
958 <td class="paramtype">const char * </td>
959 <td class="paramname"> <em>msg</em>, </td>
960 </tr>
961 <tr>
962 <td class="paramkey"></td>
963 <td></td>
964 <td class="paramtype">const char * </td>
965 <td class="paramname"> <em>button1_txt</em>, </td>
966 </tr>
967 <tr>
968 <td class="paramkey"></td>
969 <td></td>
970 <td class="paramtype">const char * </td>
971 <td class="paramname"> <em>button2_txt</em>, </td>
972 </tr>
973 <tr>
974 <td class="paramkey"></td>
975 <td></td>
976 <td class="paramtype">const char * </td>
977 <td class="paramname"> <em>button3_txt</em>, </td>
978 </tr>
979 <tr>
980 <td class="paramkey"></td>
981 <td></td>
982 <td class="paramtype">const char * </td>
983 <td class="paramname"> <em>button4_txt</em>, </td>
984 </tr>
985 <tr>
986 <td class="paramkey"></td>
987 <td></td>
988 <td class="paramtype">const char * </td>
989 <td class="paramname"> <em>button5_txt</em>, </td>
990 </tr>
991 <tr>
992 <td class="paramkey"></td>
993 <td></td>
994 <td class="paramtype">const char * </td>
995 <td class="paramname"> <em>button6_txt</em>, </td>
996 </tr>
997 <tr>
998 <td class="paramkey"></td>
999 <td></td>
1000 <td class="paramtype">const CImg< t > & </td>
1001 <td class="paramname"> <em>logo</em>, </td>
1002 </tr>
1003 <tr>
1004 <td class="paramkey"></td>
1005 <td></td>
1006 <td class="paramtype">const bool </td>
1007 <td class="paramname"> <em>centering</em> = <code>false</code></td><td> </td>
1008 </tr>
1009 <tr>
1010 <td></td>
1011 <td>)</td>
1012 <td></td><td></td><td><code> [inline]</code></td>
1013 </tr>
1014 </table>
1015 </div>
1016 <div class="memdoc">
1018 <p>
1019 Display a dialog box, where a user can click standard buttons.
1020 <p>
1021 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>
1022 <table border="0" cellspacing="2" cellpadding="0">
1023 <tr><td valign="top"></td><td valign="top"><em>title</em> </td><td>= Title of the dialog window. </td></tr>
1024 <tr><td valign="top"></td><td valign="top"><em>msg</em> </td><td>= Main message displayed inside the dialog window. </td></tr>
1025 <tr><td valign="top"></td><td valign="top"><em>button1_txt</em> </td><td>= Label of the 1st button. </td></tr>
1026 <tr><td valign="top"></td><td valign="top"><em>button2_txt</em> </td><td>= Label of the 2nd button. </td></tr>
1027 <tr><td valign="top"></td><td valign="top"><em>button3_txt</em> </td><td>= Label of the 3rd button. </td></tr>
1028 <tr><td valign="top"></td><td valign="top"><em>button4_txt</em> </td><td>= Label of the 4th button. </td></tr>
1029 <tr><td valign="top"></td><td valign="top"><em>button5_txt</em> </td><td>= Label of the 5th button. </td></tr>
1030 <tr><td valign="top"></td><td valign="top"><em>button6_txt</em> </td><td>= Label of the 6th button. </td></tr>
1031 <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>
1032 <tr><td valign="top"></td><td valign="top"><em>centering</em> </td><td>= Tell to center the dialog window on the screen. </td></tr>
1033 </table>
1034 </dl>
1035 <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>
1036 <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>
1038 </div>
1039 </div><p>
1040 </div>
1041 <hr noshade="noshade" size="1" width="100%">
1042 <a href="http://sourceforge.net">
1043 <img src="http://sourceforge.net/sflogo.php?group_id=96492&type=3" border="0" height="37" width="125"></img>
1044 </a>
1045 <!-- Start of StatCounter Code -->
1046 <script type="text/javascript" language="javascript">
1047 <!--
1048 var sc_project=895001;
1049 var sc_invisible=1;
1050 var sc_partition=7;
1051 var sc_security="5ea85181";
1052 //-->
1053 </script>
1054 <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>
1055 <!-- End of StatCounter Code -->
1056 </body>
1057 </html>