<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <title>FAUST compiler: doc_compile.cpp File Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <link href="doxygen.css" rel="stylesheet" type="text/css"/> </head> <body> <!-- Generated by Doxygen 1.6.3 --> <div class="navigation" id="top"> <div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="annotated.html"><span>Classes</span></a></li> <li class="current"><a href="files.html"><span>Files</span></a></li> </ul> </div> <div class="tabs"> <ul> <li><a href="files.html"><span>File List</span></a></li> <li><a href="globals.html"><span>File Members</span></a></li> </ul> </div> </div> <div class="contents"> <h1>doc_compile.cpp File Reference</h1><code>#include <stdio.h></code><br/> <code>#include <iostream></code><br/> <code>#include <sstream></code><br/> <code>#include <vector></code><br/> <code>#include <math.h></code><br/> <code>#include "<a class="el" href="doc__compile_8hh_source.html">doc_compile.hh</a>"</code><br/> <code>#include "<a class="el" href="sigtype_8hh_source.html">sigtype.hh</a>"</code><br/> <code>#include "<a class="el" href="floats_8hh_source.html">floats.hh</a>"</code><br/> <code>#include "<a class="el" href="sigprint_8hh_source.html">sigprint.hh</a>"</code><br/> <code>#include "<a class="el" href="sigtyperules_8hh_source.html">sigtyperules.hh</a>"</code><br/> <code>#include "<a class="el" href="recursivness_8hh_source.html">recursivness.hh</a>"</code><br/> <code>#include "<a class="el" href="simplify_8hh_source.html">simplify.hh</a>"</code><br/> <code>#include "<a class="el" href="privatise_8hh_source.html">privatise.hh</a>"</code><br/> <code>#include "<a class="el" href="prim2_8hh_source.html">prim2.hh</a>"</code><br/> <code>#include "<a class="el" href="xtended_8hh_source.html">xtended.hh</a>"</code><br/> <code>#include "<a class="el" href="compatibility_8hh_source.html">compatibility.hh</a>"</code><br/> <code>#include "<a class="el" href="ppsig_8hh_source.html">ppsig.hh</a>"</code><br/> <code>#include "<a class="el" href="names_8hh_source.html">names.hh</a>"</code><br/> <code>#include "<a class="el" href="doc_8hh_source.html">doc.hh</a>"</code><br/> <code>#include "<a class="el" href="tlib_8hh_source.html">tlib.hh</a>"</code><br/> <code>#include "<a class="el" href="doc__notice_8hh_source.html">doc_notice.hh</a>"</code><br/> <div class="dynheader"> Include dependency graph for doc_compile.cpp:</div> <div class="dynsection"> </div> <p><a href="doc__compile_8cpp_source.html">Go to the source code of this file.</a></p> <table border="0" cellpadding="0" cellspacing="0"> <tr><td colspan="2"><h2>Functions</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="doc__compile_8cpp.html#a7285e749493c862181d92b35fc470b0e">getSigListNickName</a> (<a class="el" href="classCTree.html">Tree</a> t, <a class="el" href="classCTree.html">Tree</a> &id)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="doc__compile_8cpp.html#af40d9db717982956ede067d6eeab6105">extractMetadata</a> (const string &fulllabel, string &label, map< string, set< string > > &metadata)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Extracts metadata from a UI label : 'vol [unit: dB]' -> 'vol' + metadata map. <a href="#af40d9db717982956ede067d6eeab6105"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">static string </td><td class="memItemRight" valign="bottom"><a class="el" href="doc__compile_8cpp.html#a96e69d2d939df869ffe8081b135df075">rmWhiteSpaces</a> (const string &s)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight"><a class="el" href="doc__compile_8cpp.html#a96e69d2d939df869ffe8081b135df075" title="rmWhiteSpaces(): Remove the leading and trailing white spaces of a string (but not...">rmWhiteSpaces()</a>: Remove the leading and trailing white spaces of a string (but not those in the middle of the string) <a href="#a96e69d2d939df869ffe8081b135df075"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">static bool </td><td class="memItemRight" valign="bottom"><a class="el" href="doc__compile_8cpp.html#ad0098c569646d0ca8c8fee6e60816523">isVerySimpleFormula</a> (<a class="el" href="classCTree.html">Tree</a> sig)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Test if exp is very simple that is it can't be considered a real component. <a href="#ad0098c569646d0ca8c8fee6e60816523"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">static bool </td><td class="memItemRight" valign="bottom"><a class="el" href="doc__compile_8cpp.html#af57948a6478e3580933fdfd7073bdb21">isSeparator</a> (char c)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">tests if a charactere is a word separator <a href="#af57948a6478e3580933fdfd7073bdb21"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">static string </td><td class="memItemRight" valign="bottom"><a class="el" href="doc__compile_8cpp.html#a502e3fd69a07ef289ca3b6159343119d">replaceTimeBy</a> (const string &src, char r)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Replaces the occurences of 't' in a formula with another character. <a href="#a502e3fd69a07ef289ca3b6159343119d"></a><br/></td></tr> <tr><td colspan="2"><h2>Variables</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="doc__compile_8cpp.html#a5f97ede46bd9fd364fc69fd7bc04e5ae">gLessTempSwitch</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="doc__compile_8cpp.html#a278e0cda879c0108aff047853ab0214c">gMaxCopyDelay</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top">map< string, string > </td><td class="memItemRight" valign="bottom"><a class="el" href="doc__compile_8cpp.html#aa28e02b0250cd740aa42876df3b7c3e4">gDocMathStringMap</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top">static const unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="doc__compile_8cpp.html#a319e519c8e2e02aaf1d53786aa514d69">MAX_RIGHT_MEMBER</a> = 20</td></tr> <tr><td class="memItemLeft" align="right" valign="top">static const unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="doc__compile_8cpp.html#ad331a5d4b7c9e1298da154df85a98837">MAX_SUB_EXPR</a> = 10</td></tr> </table> <hr/><h2>Function Documentation</h2> <a class="anchor" id="af40d9db717982956ede067d6eeab6105"></a><!-- doxytag: member="doc_compile.cpp::extractMetadata" ref="af40d9db717982956ede067d6eeab6105" args="(const string &fulllabel, string &label, map< string, set< string > > &metadata)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">static void extractMetadata </td> <td>(</td> <td class="paramtype">const string & </td> <td class="paramname"> <em>fulllabel</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">string & </td> <td class="paramname"> <em>label</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">map< string, set< string > > & </td> <td class="paramname"> <em>metadata</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [static]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Extracts metadata from a UI label : 'vol [unit: dB]' -> 'vol' + metadata map. </p> <p>Definition at line <a class="el" href="doc__compile_8cpp_source.html#l01344">1344</a> of file <a class="el" href="doc__compile_8cpp_source.html">doc_compile.cpp</a>.</p> <p>References <a class="el" href="doc__compile_8cpp_source.html#l01443">rmWhiteSpaces()</a>.</p> <p>Referenced by <a class="el" href="doc__compile_8cpp_source.html#l01319">DocCompiler::getUIDocInfos()</a>.</p> <p><div class="fragment"><pre class="fragment"><a name="l01345"></a>01345 { <a name="l01346"></a>01346 <span class="keyword">enum</span> {kLabel, kEscape1, kEscape2, kEscape3, kKey, kValue}; <a name="l01347"></a>01347 <span class="keywordtype">int</span> state = kLabel; <span class="keywordtype">int</span> deep = 0; <a name="l01348"></a>01348 <span class="keywordtype">string</span> key, value; <a name="l01349"></a>01349 <a name="l01350"></a>01350 <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i=0; i < fulllabel.size(); i++) { <a name="l01351"></a>01351 <span class="keywordtype">char</span> c = fulllabel[i]; <a name="l01352"></a>01352 <span class="keywordflow">switch</span> (state) { <a name="l01353"></a>01353 <span class="keywordflow">case</span> kLabel : <a name="l01354"></a>01354 assert (deep == 0); <a name="l01355"></a>01355 <span class="keywordflow">switch</span> (c) { <a name="l01356"></a>01356 <span class="keywordflow">case</span> <span class="charliteral">'\\'</span> : state = kEscape1; <span class="keywordflow">break</span>; <a name="l01357"></a>01357 <span class="keywordflow">case</span> <span class="charliteral">'['</span> : state = kKey; deep++; <span class="keywordflow">break</span>; <a name="l01358"></a>01358 <span class="keywordflow">default</span> : label += c; <a name="l01359"></a>01359 } <a name="l01360"></a>01360 <span class="keywordflow">break</span>; <a name="l01361"></a>01361 <a name="l01362"></a>01362 <span class="keywordflow">case</span> kEscape1 : <a name="l01363"></a>01363 label += c; <a name="l01364"></a>01364 state = kLabel; <a name="l01365"></a>01365 <span class="keywordflow">break</span>; <a name="l01366"></a>01366 <a name="l01367"></a>01367 <span class="keywordflow">case</span> kEscape2 : <a name="l01368"></a>01368 key += c; <a name="l01369"></a>01369 state = kKey; <a name="l01370"></a>01370 <span class="keywordflow">break</span>; <a name="l01371"></a>01371 <a name="l01372"></a>01372 <span class="keywordflow">case</span> kEscape3 : <a name="l01373"></a>01373 value += c; <a name="l01374"></a>01374 state = kValue; <a name="l01375"></a>01375 <span class="keywordflow">break</span>; <a name="l01376"></a>01376 <a name="l01377"></a>01377 <span class="keywordflow">case</span> kKey : <a name="l01378"></a>01378 assert (deep > 0); <a name="l01379"></a>01379 <span class="keywordflow">switch</span> (c) { <a name="l01380"></a>01380 <span class="keywordflow">case</span> <span class="charliteral">'\\'</span> : state = kEscape2; <a name="l01381"></a>01381 <span class="keywordflow">break</span>; <a name="l01382"></a>01382 <a name="l01383"></a>01383 <span class="keywordflow">case</span> <span class="charliteral">'['</span> : deep++; <a name="l01384"></a>01384 key += c; <a name="l01385"></a>01385 <span class="keywordflow">break</span>; <a name="l01386"></a>01386 <a name="l01387"></a>01387 <span class="keywordflow">case</span> <span class="charliteral">':'</span> : <span class="keywordflow">if</span> (deep == 1) { <a name="l01388"></a>01388 state = kValue; <a name="l01389"></a>01389 } <span class="keywordflow">else</span> { <a name="l01390"></a>01390 key += c; <a name="l01391"></a>01391 } <a name="l01392"></a>01392 <span class="keywordflow">break</span>; <a name="l01393"></a>01393 <span class="keywordflow">case</span> <span class="charliteral">']'</span> : deep--; <a name="l01394"></a>01394 <span class="keywordflow">if</span> (deep < 1) { <a name="l01395"></a>01395 metadata[<a class="code" href="doc__compile_8cpp.html#a96e69d2d939df869ffe8081b135df075" title="rmWhiteSpaces(): Remove the leading and trailing white spaces of a string (but not...">rmWhiteSpaces</a>(key)].insert(<span class="stringliteral">""</span>); <a name="l01396"></a>01396 state = kLabel; <a name="l01397"></a>01397 key=<span class="stringliteral">""</span>; <a name="l01398"></a>01398 value=<span class="stringliteral">""</span>; <a name="l01399"></a>01399 } <span class="keywordflow">else</span> { <a name="l01400"></a>01400 key += c; <a name="l01401"></a>01401 } <a name="l01402"></a>01402 <span class="keywordflow">break</span>; <a name="l01403"></a>01403 <span class="keywordflow">default</span> : key += c; <a name="l01404"></a>01404 } <a name="l01405"></a>01405 <span class="keywordflow">break</span>; <a name="l01406"></a>01406 <a name="l01407"></a>01407 <span class="keywordflow">case</span> kValue : <a name="l01408"></a>01408 assert (deep > 0); <a name="l01409"></a>01409 <span class="keywordflow">switch</span> (c) { <a name="l01410"></a>01410 <span class="keywordflow">case</span> <span class="charliteral">'\\'</span> : state = kEscape3; <a name="l01411"></a>01411 <span class="keywordflow">break</span>; <a name="l01412"></a>01412 <a name="l01413"></a>01413 <span class="keywordflow">case</span> <span class="charliteral">'['</span> : deep++; <a name="l01414"></a>01414 value += c; <a name="l01415"></a>01415 <span class="keywordflow">break</span>; <a name="l01416"></a>01416 <a name="l01417"></a>01417 <span class="keywordflow">case</span> <span class="charliteral">']'</span> : deep--; <a name="l01418"></a>01418 <span class="keywordflow">if</span> (deep < 1) { <a name="l01419"></a>01419 metadata[<a class="code" href="doc__compile_8cpp.html#a96e69d2d939df869ffe8081b135df075" title="rmWhiteSpaces(): Remove the leading and trailing white spaces of a string (but not...">rmWhiteSpaces</a>(key)].insert(<a class="code" href="doc__compile_8cpp.html#a96e69d2d939df869ffe8081b135df075" title="rmWhiteSpaces(): Remove the leading and trailing white spaces of a string (but not...">rmWhiteSpaces</a>(value)); <a name="l01420"></a>01420 state = kLabel; <a name="l01421"></a>01421 key=<span class="stringliteral">""</span>; <a name="l01422"></a>01422 value=<span class="stringliteral">""</span>; <a name="l01423"></a>01423 } <span class="keywordflow">else</span> { <a name="l01424"></a>01424 value += c; <a name="l01425"></a>01425 } <a name="l01426"></a>01426 <span class="keywordflow">break</span>; <a name="l01427"></a>01427 <span class="keywordflow">default</span> : value += c; <a name="l01428"></a>01428 } <a name="l01429"></a>01429 <span class="keywordflow">break</span>; <a name="l01430"></a>01430 <a name="l01431"></a>01431 <span class="keywordflow">default</span> : <a name="l01432"></a>01432 cerr << <span class="stringliteral">"ERROR unrecognized state (in extractMetadata) : "</span> << state << endl; <a name="l01433"></a>01433 } <a name="l01434"></a>01434 } <a name="l01435"></a>01435 label = <a class="code" href="doc__compile_8cpp.html#a96e69d2d939df869ffe8081b135df075" title="rmWhiteSpaces(): Remove the leading and trailing white spaces of a string (but not...">rmWhiteSpaces</a>(label); <a name="l01436"></a>01436 } </pre></div></p> <p><div class="dynheader"> Here is the call graph for this function:</div> <div class="dynsection"> </div> </p> <p><div class="dynheader"> Here is the caller graph for this function:</div> <div class="dynsection"> </div> </p> </div> </div> <a class="anchor" id="a7285e749493c862181d92b35fc470b0e"></a><!-- doxytag: member="doc_compile.cpp::getSigListNickName" ref="a7285e749493c862181d92b35fc470b0e" args="(Tree t, Tree &id)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool getSigListNickName </td> <td>(</td> <td class="paramtype"><a class="el" href="classCTree.html">Tree</a> </td> <td class="paramname"> <em>t</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="classCTree.html">Tree</a> & </td> <td class="paramname"> <em>id</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="af57948a6478e3580933fdfd7073bdb21"></a><!-- doxytag: member="doc_compile.cpp::isSeparator" ref="af57948a6478e3580933fdfd7073bdb21" args="(char c)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">static bool isSeparator </td> <td>(</td> <td class="paramtype">char </td> <td class="paramname"> <em>c</em></td> <td> ) </td> <td><code> [static]</code></td> </tr> </table> </div> <div class="memdoc"> <p>tests if a charactere is a word separator </p> <p>Definition at line <a class="el" href="doc__compile_8cpp_source.html#l00779">779</a> of file <a class="el" href="doc__compile_8cpp_source.html">doc_compile.cpp</a>.</p> <p>Referenced by <a class="el" href="doc__compile_8cpp_source.html#l00793">replaceTimeBy()</a>.</p> <p><div class="fragment"><pre class="fragment"><a name="l00780"></a>00780 { <a name="l00781"></a>00781 <span class="keywordtype">bool</span> w = ( ((c >= <span class="charliteral">'a'</span>) && (c <=<span class="charliteral">'z'</span>)) <a name="l00782"></a>00782 || ((c >= <span class="charliteral">'A'</span>) && (c <=<span class="charliteral">'Z'</span>)) <a name="l00783"></a>00783 || ((c >= <span class="charliteral">'0'</span>) && (c <=<span class="charliteral">'9'</span>)) <a name="l00784"></a>00784 ); <a name="l00785"></a>00785 <a name="l00786"></a>00786 <span class="keywordflow">return</span> ! w; <a name="l00787"></a>00787 } </pre></div></p> <p><div class="dynheader"> Here is the caller graph for this function:</div> <div class="dynsection"> </div> </p> </div> </div> <a class="anchor" id="ad0098c569646d0ca8c8fee6e60816523"></a><!-- doxytag: member="doc_compile.cpp::isVerySimpleFormula" ref="ad0098c569646d0ca8c8fee6e60816523" args="(Tree sig)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">static bool isVerySimpleFormula </td> <td>(</td> <td class="paramtype"><a class="el" href="classCTree.html">Tree</a> </td> <td class="paramname"> <em>sig</em></td> <td> ) </td> <td><code> [static]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Test if exp is very simple that is it can't be considered a real component. </p> <dl><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>exp</em> </td><td>the signal we want to test </td></tr> </table> </dd> </dl> <dl class="return"><dt><b>Returns:</b></dt><dd>true if it a very simple signal </dd></dl> <p>Definition at line <a class="el" href="doc__compile_8cpp_source.html#l00502">502</a> of file <a class="el" href="doc__compile_8cpp_source.html">doc_compile.cpp</a>.</p> <p>References <a class="el" href="signals_8cpp_source.html#l00199">isSigButton()</a>, <a class="el" href="signals_8cpp_source.html#l00205">isSigCheckbox()</a>, <a class="el" href="signals_8cpp_source.html#l00138">isSigFConst()</a>, <a class="el" href="signals_8cpp_source.html#l00212">isSigHSlider()</a>, <a class="el" href="signals_8cpp_source.html#l00048">isSigInput()</a>, <a class="el" href="signals_8cpp_source.html#l00041">isSigInt()</a>, <a class="el" href="signals_8cpp_source.html#l00252">isSigNumEntry()</a>, <a class="el" href="signals_8cpp_source.html#l00044">isSigReal()</a>, <a class="el" href="signals_8cpp_source.html#l00232">isSigVSlider()</a>, and <a class="el" href="symbol_8hh_source.html#l00098">name()</a>.</p> <p>Referenced by <a class="el" href="doc__compile_8cpp_source.html#l00521">DocCompiler::generateCacheCode()</a>.</p> <p><div class="fragment"><pre class="fragment"><a name="l00503"></a>00503 { <a name="l00504"></a>00504 <span class="keywordtype">int</span> i; <a name="l00505"></a>00505 <span class="keywordtype">double</span> r; <a name="l00506"></a>00506 <a class="code" href="classCTree.html" title="A CTree = (Node x [CTree]) is a Node associated with a list of subtrees called branches...">Tree</a> type, <a class="code" href="symbol_8hh.html#a8243134fbbd9d924ebbb3f833922e310" title="Returns the name of a symbol.">name</a>, file, label, c, x, y, z; <a name="l00507"></a>00507 <a name="l00508"></a>00508 <span class="keywordflow">return</span> <a class="code" href="signals_8cpp.html#a75cc925deac1e031e75ae72271dd5995">isSigInt</a>(sig, &i) <a name="l00509"></a>00509 || <a class="code" href="signals_8cpp.html#a305497ed8593020624204f9d359743f2">isSigReal</a>(sig, &r) <a name="l00510"></a>00510 || <a class="code" href="signals_8cpp.html#a38254d67a0541d98c6097fd51b22ea45">isSigInput</a>(sig, &i) <a name="l00511"></a>00511 || <a class="code" href="signals_8cpp.html#a71788aa9ccfc0aa598243fbef2a88f68">isSigFConst</a>(sig, type, name, file) <a name="l00512"></a>00512 || <a class="code" href="signals_8cpp.html#a9cb8af593289d910a1f8ec8a9c8d880f">isSigButton</a>(sig, label) <a name="l00513"></a>00513 || <a class="code" href="signals_8cpp.html#a48996c1ce74258d499baae3d267078bc">isSigCheckbox</a>(sig, label) <a name="l00514"></a>00514 || <a class="code" href="signals_8cpp.html#aac990f39e6a1d50e8e1de3b6f7701cfe">isSigVSlider</a>(sig, label,c,x,y,z) <a name="l00515"></a>00515 || <a class="code" href="signals_8cpp.html#aaa72c718314a1ba2cee25a95c153e37d">isSigHSlider</a>(sig, label,c,x,y,z) <a name="l00516"></a>00516 || <a class="code" href="signals_8cpp.html#aa8476971aba67dfc3af7b5d11f974ef3">isSigNumEntry</a>(sig, label,c,x,y,z) <a name="l00517"></a>00517 ; <a name="l00518"></a>00518 } </pre></div></p> <p><div class="dynheader"> Here is the call graph for this function:</div> <div class="dynsection"> </div> </p> <p><div class="dynheader"> Here is the caller graph for this function:</div> <div class="dynsection"> </div> </p> </div> </div> <a class="anchor" id="a502e3fd69a07ef289ca3b6159343119d"></a><!-- doxytag: member="doc_compile.cpp::replaceTimeBy" ref="a502e3fd69a07ef289ca3b6159343119d" args="(const string &src, char r)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">static string replaceTimeBy </td> <td>(</td> <td class="paramtype">const string & </td> <td class="paramname"> <em>src</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">char </td> <td class="paramname"> <em>r</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [static]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Replaces the occurences of 't' in a formula with another character. </p> <p>Definition at line <a class="el" href="doc__compile_8cpp_source.html#l00793">793</a> of file <a class="el" href="doc__compile_8cpp_source.html">doc_compile.cpp</a>.</p> <p>References <a class="el" href="doc__compile_8cpp_source.html#l00779">isSeparator()</a>.</p> <p>Referenced by <a class="el" href="doc__compile_8cpp_source.html#l00814">DocCompiler::generateDocWriteTbl()</a>.</p> <p><div class="fragment"><pre class="fragment"><a name="l00794"></a>00794 { <a name="l00795"></a>00795 <span class="keywordtype">string</span> dst; <a name="l00796"></a>00796 <span class="keywordtype">char</span> pre = 0; <a name="l00797"></a>00797 <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i=0; i < src.size(); i++) <a name="l00798"></a>00798 { <a name="l00799"></a>00799 <span class="keywordtype">char</span> x = src[i]; <a name="l00800"></a>00800 <span class="keywordflow">if</span> ((x==<span class="charliteral">'t'</span>) && <a class="code" href="doc__compile_8cpp.html#af57948a6478e3580933fdfd7073bdb21" title="tests if a charactere is a word separator">isSeparator</a>(pre) && ((i == src.size()-1) || <a class="code" href="doc__compile_8cpp.html#af57948a6478e3580933fdfd7073bdb21" title="tests if a charactere is a word separator">isSeparator</a>(src[i+1]))) { <a name="l00801"></a>00801 dst.push_back(r); <a name="l00802"></a>00802 } <span class="keywordflow">else</span> { <a name="l00803"></a>00803 dst.push_back(x); <a name="l00804"></a>00804 } <a name="l00805"></a>00805 pre = x; <a name="l00806"></a>00806 } <a name="l00807"></a>00807 <span class="keywordflow">return</span> dst; <a name="l00808"></a>00808 } </pre></div></p> <p><div class="dynheader"> Here is the call graph for this function:</div> <div class="dynsection"> </div> </p> <p><div class="dynheader"> Here is the caller graph for this function:</div> <div class="dynsection"> </div> </p> </div> </div> <a class="anchor" id="a96e69d2d939df869ffe8081b135df075"></a><!-- doxytag: member="doc_compile.cpp::rmWhiteSpaces" ref="a96e69d2d939df869ffe8081b135df075" args="(const string &s)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">static string rmWhiteSpaces </td> <td>(</td> <td class="paramtype">const string & </td> <td class="paramname"> <em>s</em></td> <td> ) </td> <td><code> [static]</code></td> </tr> </table> </div> <div class="memdoc"> <p><a class="el" href="doc__compile_8cpp.html#a96e69d2d939df869ffe8081b135df075" title="rmWhiteSpaces(): Remove the leading and trailing white spaces of a string (but not...">rmWhiteSpaces()</a>: Remove the leading and trailing white spaces of a string (but not those in the middle of the string) </p> <p>Definition at line <a class="el" href="doc__compile_8cpp_source.html#l01443">1443</a> of file <a class="el" href="doc__compile_8cpp_source.html">doc_compile.cpp</a>.</p> <p>Referenced by <a class="el" href="doc__compile_8cpp_source.html#l01344">extractMetadata()</a>.</p> <p><div class="fragment"><pre class="fragment"><a name="l01444"></a>01444 { <a name="l01445"></a>01445 <span class="keywordtype">size_t</span> i = s.find_first_not_of(<span class="stringliteral">" \t"</span>); <a name="l01446"></a>01446 <span class="keywordtype">size_t</span> j = s.find_last_not_of(<span class="stringliteral">" \t"</span>); <a name="l01447"></a>01447 <a name="l01448"></a>01448 <span class="keywordflow">if</span> ( (i != string::npos) & (j != string::npos) ) { <a name="l01449"></a>01449 <span class="keywordflow">return</span> s.substr(i, 1+j-i); <a name="l01450"></a>01450 } <span class="keywordflow">else</span> { <a name="l01451"></a>01451 <span class="keywordflow">return</span> <span class="stringliteral">""</span>; <a name="l01452"></a>01452 } <a name="l01453"></a>01453 } </pre></div></p> <p><div class="dynheader"> Here is the caller graph for this function:</div> <div class="dynsection"> </div> </p> </div> </div> <hr/><h2>Variable Documentation</h2> <a class="anchor" id="aa28e02b0250cd740aa42876df3b7c3e4"></a><!-- doxytag: member="doc_compile.cpp::gDocMathStringMap" ref="aa28e02b0250cd740aa42876df3b7c3e4" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">map<string, string> <a class="el" href="lateq_8cpp.html#aa28e02b0250cd740aa42876df3b7c3e4">gDocMathStringMap</a></td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="lateq_8cpp_source.html#l00050">50</a> of file <a class="el" href="lateq_8cpp_source.html">lateq.cpp</a>.</p> <p>Referenced by <a class="el" href="doc__lang_8cpp_source.html#l00113">importDocStrings()</a>, <a class="el" href="doc__compile_8cpp_source.html#l01263">DocCompiler::prepareBinaryUI()</a>, <a class="el" href="doc__compile_8cpp_source.html#l01293">DocCompiler::prepareIntervallicUI()</a>, <a class="el" href="lateq_8cpp_source.html#l00077">Lateq::println()</a>, <a class="el" href="lateq_8cpp_source.html#l00130">Lateq::printOneLine()</a>, and <a class="el" href="doc__lang_8cpp_source.html#l00176">storePair()</a>.</p> </div> </div> <a class="anchor" id="a5f97ede46bd9fd364fc69fd7bc04e5ae"></a><!-- doxytag: member="doc_compile.cpp::gLessTempSwitch" ref="a5f97ede46bd9fd364fc69fd7bc04e5ae" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool <a class="el" href="main_8cpp.html#a5f97ede46bd9fd364fc69fd7bc04e5ae">gLessTempSwitch</a></td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="main_8cpp_source.html#l00123">123</a> of file <a class="el" href="main_8cpp_source.html">main.cpp</a>.</p> <p>Referenced by <a class="el" href="main_8cpp_source.html#l00160">process_cmdline()</a>.</p> </div> </div> <a class="anchor" id="a278e0cda879c0108aff047853ab0214c"></a><!-- doxytag: member="doc_compile.cpp::gMaxCopyDelay" ref="a278e0cda879c0108aff047853ab0214c" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int <a class="el" href="delayline_8cpp.html#a278e0cda879c0108aff047853ab0214c">gMaxCopyDelay</a></td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="main_8cpp_source.html#l00124">124</a> of file <a class="el" href="main_8cpp_source.html">main.cpp</a>.</p> <p>Referenced by <a class="el" href="delayline_8cpp_source.html#l00051">dlineLoop()</a>, <a class="el" href="compile__scal_8cpp_source.html#l01199">ScalarCompiler::generateDelayLine()</a>, <a class="el" href="compile__scal_8cpp_source.html#l01151">ScalarCompiler::generateDelayVecNoTemp()</a>, <a class="el" href="compile__vect_8cpp_source.html#l00288">VectorCompiler::generateFixDelay()</a>, <a class="el" href="compile__scal_8cpp_source.html#l01098">ScalarCompiler::generateFixDelay()</a>, and <a class="el" href="main_8cpp_source.html#l00160">process_cmdline()</a>.</p> </div> </div> <a class="anchor" id="a319e519c8e2e02aaf1d53786aa514d69"></a><!-- doxytag: member="doc_compile.cpp::MAX_RIGHT_MEMBER" ref="a319e519c8e2e02aaf1d53786aa514d69" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const unsigned int <a class="el" href="doc__compile_8cpp.html#a319e519c8e2e02aaf1d53786aa514d69">MAX_RIGHT_MEMBER</a> = 20<code> [static]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="doc__compile_8cpp_source.html#l00065">65</a> of file <a class="el" href="doc__compile_8cpp_source.html">doc_compile.cpp</a>.</p> </div> </div> <a class="anchor" id="ad331a5d4b7c9e1298da154df85a98837"></a><!-- doxytag: member="doc_compile.cpp::MAX_SUB_EXPR" ref="ad331a5d4b7c9e1298da154df85a98837" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const unsigned int <a class="el" href="doc__compile_8cpp.html#ad331a5d4b7c9e1298da154df85a98837">MAX_SUB_EXPR</a> = 10<code> [static]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="doc__compile_8cpp_source.html#l00066">66</a> of file <a class="el" href="doc__compile_8cpp_source.html">doc_compile.cpp</a>.</p> </div> </div> </div> <hr class="footer"/><address style="text-align: right;"><small>Generated on Thu Apr 29 00:00:04 2010 for FAUST compiler by <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.3 </small></address> </body> </html>