<!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: ppsig.cpp Source File</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> <h1>ppsig.cpp</h1><a href="ppsig_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/************************************************************************</span> <a name="l00002"></a>00002 <span class="comment"> ************************************************************************</span> <a name="l00003"></a>00003 <span class="comment"> FAUST compiler</span> <a name="l00004"></a>00004 <span class="comment"> Copyright (C) 2003-2004 GRAME, Centre National de Creation Musicale</span> <a name="l00005"></a>00005 <span class="comment"> ---------------------------------------------------------------------</span> <a name="l00006"></a>00006 <span class="comment"> This program is free software; you can redistribute it and/or modify</span> <a name="l00007"></a>00007 <span class="comment"> it under the terms of the GNU General Public License as published by</span> <a name="l00008"></a>00008 <span class="comment"> the Free Software Foundation; either version 2 of the License, or</span> <a name="l00009"></a>00009 <span class="comment"> (at your option) any later version.</span> <a name="l00010"></a>00010 <span class="comment"></span> <a name="l00011"></a>00011 <span class="comment"> This program is distributed in the hope that it will be useful,</span> <a name="l00012"></a>00012 <span class="comment"> but WITHOUT ANY WARRANTY; without even the implied warranty of</span> <a name="l00013"></a>00013 <span class="comment"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span> <a name="l00014"></a>00014 <span class="comment"> GNU General Public License for more details.</span> <a name="l00015"></a>00015 <span class="comment"></span> <a name="l00016"></a>00016 <span class="comment"> You should have received a copy of the GNU General Public License</span> <a name="l00017"></a>00017 <span class="comment"> along with this program; if not, write to the Free Software</span> <a name="l00018"></a>00018 <span class="comment"> Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.</span> <a name="l00019"></a>00019 <span class="comment"> ************************************************************************</span> <a name="l00020"></a>00020 <span class="comment"> ************************************************************************/</span> <a name="l00021"></a>00021 <a name="l00022"></a>00022 <a name="l00023"></a>00023 <a name="l00024"></a>00024 <span class="preprocessor">#include "<a class="code" href="ppsig_8hh.html">ppsig.hh</a>"</span> <a name="l00025"></a>00025 <span class="preprocessor">#include "<a class="code" href="binop_8hh.html">binop.hh</a>"</span> <a name="l00026"></a>00026 <span class="preprocessor">#include "<a class="code" href="prim2_8hh.html">prim2.hh</a>"</span> <a name="l00027"></a>00027 <span class="preprocessor">#include "<a class="code" href="xtended_8hh.html">xtended.hh</a>"</span> <a name="l00028"></a>00028 <span class="preprocessor">#include "<a class="code" href="recursivness_8hh.html">recursivness.hh</a>"</span> <a name="l00029"></a>00029 <a name="l00030"></a><a class="code" href="classppsig.html#ad279886ecd41b83e4afae067f67a7c0d">00030</a> ostream& <a class="code" href="classppsig.html#ad279886ecd41b83e4afae067f67a7c0d">ppsig::printinfix</a> (ostream& fout, <span class="keyword">const</span> <span class="keywordtype">string</span>& opname, <span class="keywordtype">int</span> priority, <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> x, <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> y)<span class="keyword"> const</span> <a name="l00031"></a>00031 <span class="keyword"></span>{ <a name="l00032"></a>00032 <span class="keywordflow">if</span> (<a class="code" href="classppsig.html#a6d238f345e55135018e1ec7a51b616c8" title="priority context">fPriority</a> > priority) fout << <span class="stringliteral">"("</span>; <a name="l00033"></a>00033 fout << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(x,<a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>,priority) << opname << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(y,<a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>,priority); <a name="l00034"></a>00034 <span class="keywordflow">if</span> (<a class="code" href="classppsig.html#a6d238f345e55135018e1ec7a51b616c8" title="priority context">fPriority</a> > priority) fout << <span class="stringliteral">")"</span>; <a name="l00035"></a>00035 <span class="keywordflow">return</span> fout; <a name="l00036"></a>00036 } <a name="l00037"></a>00037 <a name="l00038"></a><a class="code" href="classppsig.html#ac6af3cbc8021d552e70811d705009df3">00038</a> ostream& <a class="code" href="classppsig.html#ac6af3cbc8021d552e70811d705009df3">ppsig::printfun</a> (ostream& fout, <span class="keyword">const</span> <span class="keywordtype">string</span>& funame, <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> x)<span class="keyword"> const</span> <a name="l00039"></a>00039 <span class="keyword"></span>{ <a name="l00040"></a>00040 <span class="keywordflow">return</span> fout << funame << <span class="charliteral">'('</span> << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(x,<a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>) << <span class="charliteral">')'</span>; <a name="l00041"></a>00041 } <a name="l00042"></a>00042 <a name="l00043"></a><a class="code" href="classppsig.html#a275a195081a58b1a702a7b6d1ff254e0">00043</a> ostream& <a class="code" href="classppsig.html#ac6af3cbc8021d552e70811d705009df3">ppsig::printfun</a> (ostream& fout, <span class="keyword">const</span> <span class="keywordtype">string</span>& funame, <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> x, <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> y)<span class="keyword"> const</span> <a name="l00044"></a>00044 <span class="keyword"></span>{ <a name="l00045"></a>00045 <span class="keywordflow">return</span> fout << funame << <span class="charliteral">'('</span> << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(x,<a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>) << <span class="charliteral">','</span> << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(y,<a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>) << <span class="charliteral">')'</span>; <a name="l00046"></a>00046 } <a name="l00047"></a>00047 <a name="l00048"></a><a class="code" href="classppsig.html#a3db31d27fd225324e1cfb0f9a54f8f99">00048</a> ostream& <a class="code" href="classppsig.html#ac6af3cbc8021d552e70811d705009df3">ppsig::printfun</a> (ostream& fout, <span class="keyword">const</span> <span class="keywordtype">string</span>& funame, <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> x, <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> y, <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> z)<span class="keyword"> const</span> <a name="l00049"></a>00049 <span class="keyword"></span>{ <a name="l00050"></a>00050 <span class="keywordflow">return</span> fout << funame << <span class="charliteral">'('</span> << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(x,<a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>) << <span class="charliteral">','</span> << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(y,<a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>) << <span class="charliteral">','</span> << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(z,<a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>) << <span class="charliteral">')'</span>; <a name="l00051"></a>00051 } <a name="l00052"></a>00052 <a name="l00053"></a><a class="code" href="classppsig.html#a04b5edd3907cfbccebca60d3ccee1952">00053</a> ostream& <a class="code" href="classppsig.html#ac6af3cbc8021d552e70811d705009df3">ppsig::printfun</a> (ostream& fout, <span class="keyword">const</span> <span class="keywordtype">string</span>& funame, <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> x, <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> y, <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> z, <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> zz)<span class="keyword"> const</span> <a name="l00054"></a>00054 <span class="keyword"></span>{ <a name="l00055"></a>00055 <span class="keywordflow">return</span> fout << funame << <span class="charliteral">'('</span> << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(x,<a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>) << <span class="charliteral">','</span> << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(y,<a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>) << <span class="charliteral">','</span> << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(z,<a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>) << <span class="charliteral">','</span> << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(zz,<a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>) << <span class="charliteral">')'</span>; <a name="l00056"></a>00056 } <a name="l00057"></a>00057 <a name="l00058"></a><a class="code" href="classppsig.html#abea3dee49f86f7a72137b47c62fdcb45">00058</a> ostream& <a class="code" href="classppsig.html#ac6af3cbc8021d552e70811d705009df3">ppsig::printfun</a> (ostream& fout, <span class="keyword">const</span> <span class="keywordtype">string</span>& funame, <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> x, <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> y, <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> z, <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> z2, <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> z3)<span class="keyword"> const</span> <a name="l00059"></a>00059 <span class="keyword"></span>{ <a name="l00060"></a>00060 <span class="keywordflow">return</span> fout << funame << <span class="charliteral">'('</span> << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(x,<a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>) << <span class="charliteral">','</span> << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(y,<a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>) << <span class="charliteral">','</span> << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(z,<a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>) << <span class="charliteral">','</span> << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(z2,<a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>) << <span class="charliteral">','</span> << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(z3,<a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>) << <span class="charliteral">')'</span>; <a name="l00061"></a>00061 } <a name="l00062"></a>00062 <a name="l00063"></a><a class="code" href="classppsig.html#a942921bbd4db20fdf558402d4de160fe">00063</a> ostream& <a class="code" href="classppsig.html#a942921bbd4db20fdf558402d4de160fe">ppsig::printui</a> (ostream& fout, <span class="keyword">const</span> <span class="keywordtype">string</span>& funame, <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> label)<span class="keyword"> const</span> <a name="l00064"></a>00064 <span class="keyword"></span>{ <a name="l00065"></a>00065 fout << funame << <span class="charliteral">'('</span>; <a name="l00066"></a>00066 <a class="code" href="classppsig.html#a337c79e762711cfa78144016b09ad9e3">printlabel</a>(fout, label); <a name="l00067"></a>00067 <span class="keywordflow">return</span> fout << <span class="charliteral">')'</span>; <a name="l00068"></a>00068 } <a name="l00069"></a>00069 <a name="l00070"></a><a class="code" href="classppsig.html#a5a6686327b10b9b902bc17846d0b35bf">00070</a> ostream& <a class="code" href="classppsig.html#a942921bbd4db20fdf558402d4de160fe">ppsig::printui</a> (ostream& fout, <span class="keyword">const</span> <span class="keywordtype">string</span>& funame, <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> label, <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> lo, <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> hi, <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> step)<span class="keyword"> const</span> <a name="l00071"></a>00071 <span class="keyword"></span>{ <a name="l00072"></a>00072 fout << funame << <span class="charliteral">'('</span>; <a name="l00073"></a>00073 <a class="code" href="classppsig.html#a337c79e762711cfa78144016b09ad9e3">printlabel</a>(fout, label); <a name="l00074"></a>00074 <span class="keywordflow">return</span> fout <a name="l00075"></a>00075 << <span class="charliteral">','</span> << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(lo,<a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>) <a name="l00076"></a>00076 << <span class="charliteral">','</span> << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(hi,<a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>) <a name="l00077"></a>00077 << <span class="charliteral">','</span> << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(step,<a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>) <a name="l00078"></a>00078 << <span class="charliteral">')'</span>; <a name="l00079"></a>00079 } <a name="l00080"></a>00080 <a name="l00081"></a><a class="code" href="classppsig.html#a30a8461316ca10fc7fe5d7baae4f2e32">00081</a> ostream& <a class="code" href="classppsig.html#a942921bbd4db20fdf558402d4de160fe">ppsig::printui</a> (ostream& fout, <span class="keyword">const</span> <span class="keywordtype">string</span>& funame, <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> label, <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> cur, <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> lo, <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> hi, <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> step)<span class="keyword"> const</span> <a name="l00082"></a>00082 <span class="keyword"></span>{ <a name="l00083"></a>00083 fout << funame << <span class="charliteral">'('</span>; <a name="l00084"></a>00084 <a class="code" href="classppsig.html#a337c79e762711cfa78144016b09ad9e3">printlabel</a>(fout, label); <a name="l00085"></a>00085 <span class="keywordflow">return</span> fout <a name="l00086"></a>00086 << <span class="charliteral">','</span> << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(cur,<a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>) <a name="l00087"></a>00087 << <span class="charliteral">','</span> << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(lo,<a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>) <a name="l00088"></a>00088 << <span class="charliteral">','</span> << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(hi,<a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>) <a name="l00089"></a>00089 << <span class="charliteral">','</span> << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(step,<a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>) <a name="l00090"></a>00090 << <span class="charliteral">')'</span>; <a name="l00091"></a>00091 } <a name="l00092"></a>00092 <a name="l00093"></a><a class="code" href="classppsig.html#ad9eb8849586852dbf68f8510ad30ef88">00093</a> ostream& <a class="code" href="classppsig.html#ad9eb8849586852dbf68f8510ad30ef88">ppsig::printout</a> (ostream& fout, <span class="keywordtype">int</span> i, <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> x)<span class="keyword"> const</span> <a name="l00094"></a>00094 <span class="keyword"></span>{ <a name="l00095"></a>00095 <span class="keywordflow">if</span> (<a class="code" href="classppsig.html#a6d238f345e55135018e1ec7a51b616c8" title="priority context">fPriority</a> > 0) fout << <span class="stringliteral">"("</span>; <a name="l00096"></a>00096 fout << <span class="stringliteral">"OUT"</span> << i << <span class="stringliteral">" = "</span> << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(x, <a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>, 0); <a name="l00097"></a>00097 <span class="keywordflow">if</span> (<a class="code" href="classppsig.html#a6d238f345e55135018e1ec7a51b616c8" title="priority context">fPriority</a> > 0) fout << <span class="stringliteral">")"</span>; <a name="l00098"></a>00098 <span class="keywordflow">return</span> fout; <a name="l00099"></a>00099 } <a name="l00100"></a>00100 <a name="l00101"></a><a class="code" href="classppsig.html#a337c79e762711cfa78144016b09ad9e3">00101</a> ostream& <a class="code" href="classppsig.html#a337c79e762711cfa78144016b09ad9e3">ppsig::printlabel</a> (ostream& fout, <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> pathname)<span class="keyword"> const</span> <a name="l00102"></a>00102 <span class="keyword"></span>{ <a name="l00103"></a>00103 fout << *<a class="code" href="list_8hh.html#a067ad6f83087b420a1c44e48e56be389">hd</a>(pathname); <a name="l00104"></a>00104 pathname = <a class="code" href="list_8hh.html#a4075748f5c7156306ec898795313a2e0">tl</a>(pathname); <a name="l00105"></a>00105 <span class="keywordflow">while</span> (!<a class="code" href="list_8hh.html#a2569c3a07bbbfa55e0afde62de62aeec">isNil</a>(pathname)) { <a name="l00106"></a>00106 fout << <span class="charliteral">'/'</span> << *<a class="code" href="list_8hh.html#a4075748f5c7156306ec898795313a2e0">tl</a>(<a class="code" href="list_8hh.html#a067ad6f83087b420a1c44e48e56be389">hd</a>(pathname)); <a name="l00107"></a>00107 pathname = <a class="code" href="list_8hh.html#a4075748f5c7156306ec898795313a2e0">tl</a>(pathname); <a name="l00108"></a>00108 } <a name="l00109"></a>00109 <span class="keywordflow">return</span> fout; <a name="l00110"></a>00110 } <a name="l00111"></a>00111 <a name="l00112"></a><a class="code" href="classppsig.html#a82415e74018cfd123856714b5ada9d32">00112</a> ostream& <a class="code" href="classppsig.html#a82415e74018cfd123856714b5ada9d32">ppsig::printlist</a> (ostream& fout, <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> largs)<span class="keyword"> const</span> <a name="l00113"></a>00113 <span class="keyword"></span>{ <a name="l00114"></a>00114 <span class="keywordtype">string</span> sep = <span class="stringliteral">""</span>; <a name="l00115"></a>00115 fout << <span class="charliteral">'('</span>; <a name="l00116"></a>00116 <span class="keywordflow">while</span> (!<a class="code" href="list_8hh.html#a2569c3a07bbbfa55e0afde62de62aeec">isNil</a>(largs)) { <a name="l00117"></a>00117 fout << sep << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(<a class="code" href="list_8hh.html#a067ad6f83087b420a1c44e48e56be389">hd</a>(largs), <a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>); <a name="l00118"></a>00118 sep = <span class="stringliteral">", "</span>; <a name="l00119"></a>00119 largs = <a class="code" href="list_8hh.html#a4075748f5c7156306ec898795313a2e0">tl</a>(largs); <a name="l00120"></a>00120 } <a name="l00121"></a>00121 fout << <span class="charliteral">')'</span>; <a name="l00122"></a>00122 <span class="keywordflow">return</span> fout; <a name="l00123"></a>00123 } <a name="l00124"></a>00124 <a name="l00125"></a><a class="code" href="classppsig.html#ab899c42d4be0e64b965ebdf22d032ffa">00125</a> ostream& <a class="code" href="classppsig.html#ab899c42d4be0e64b965ebdf22d032ffa">ppsig::printff</a> (ostream& fout, <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> ff, <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> largs)<span class="keyword"> const</span> <a name="l00126"></a>00126 <span class="keyword"></span>{ <a name="l00127"></a>00127 fout << <a class="code" href="prim2_8cpp.html#a9293046e818b432cfa8a7d418679eff3">ffname</a>(ff); <a class="code" href="classppsig.html#a82415e74018cfd123856714b5ada9d32">printlist</a>(fout, largs); <a name="l00128"></a>00128 <span class="keywordflow">return</span> fout; <a name="l00129"></a>00129 } <a name="l00130"></a>00130 <a name="l00131"></a><a class="code" href="classppsig.html#a1f576f7a4b2231c1dba1e3318c052086">00131</a> ostream& <a class="code" href="classppsig.html#a1f576f7a4b2231c1dba1e3318c052086">ppsig::printFixDelay</a> (ostream& fout, <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> exp, <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> delay)<span class="keyword"> const</span> <a name="l00132"></a>00132 <span class="keyword"></span>{ <a name="l00133"></a>00133 <span class="keywordtype">int</span> d; <a name="l00134"></a>00134 <a name="l00135"></a>00135 <span class="keywordflow">if</span> (<a class="code" href="signals_8cpp.html#a75cc925deac1e031e75ae72271dd5995">isSigInt</a>(delay, &d) && (d==1)) { <a name="l00136"></a>00136 fout << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(exp,<a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>,8) << <span class="stringliteral">"'"</span>; <a name="l00137"></a>00137 } <span class="keywordflow">else</span> { <a name="l00138"></a>00138 <a class="code" href="classppsig.html#ad279886ecd41b83e4afae067f67a7c0d">printinfix</a>(fout, <span class="stringliteral">"@"</span>, 8, exp, delay); <a name="l00139"></a>00139 } <a name="l00140"></a>00140 <span class="keywordflow">return</span> fout; <a name="l00141"></a>00141 } <a name="l00142"></a>00142 <a name="l00143"></a>00143 <span class="comment">// else if ( isSigFixDelay(sig, x, y) ) { printinfix(fout, "@", 8, x, y); }</span> <a name="l00144"></a>00144 <a name="l00145"></a><a class="code" href="classppsig.html#a06638212495135c1c2f766e25ffa5902">00145</a> ostream& <a class="code" href="classppsig.html#a06638212495135c1c2f766e25ffa5902">ppsig::printrec</a> (ostream& fout, <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> var, <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> lexp, <span class="keywordtype">bool</span> hide)<span class="keyword"> const</span> <a name="l00146"></a>00146 <span class="keyword"></span>{ <a name="l00147"></a>00147 <span class="keywordflow">if</span> (<a class="code" href="klass_8cpp.html#a32ff5c21183dba70c007cd5a1ec2e851">isElement</a>(var, <a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>) ) { <a name="l00148"></a>00148 fout << *var; <a name="l00149"></a>00149 } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (hide) { <a name="l00150"></a>00150 fout << *var; <a name="l00151"></a>00151 } <span class="keywordflow">else</span> { <a name="l00152"></a>00152 fout << <span class="stringliteral">"letrec("</span> << *var << <span class="stringliteral">" = "</span> << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(lexp, <a class="code" href="list_8cpp.html#a82cc7a3df71c1e139ce7cf34022ed80d">addElement</a>(var, <a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>)) << <span class="stringliteral">")"</span>; <a name="l00153"></a>00153 } <a name="l00154"></a>00154 <span class="keywordflow">return</span> fout; <a name="l00155"></a>00155 } <a name="l00156"></a>00156 <a name="l00157"></a><a class="code" href="classppsig.html#a215e0a1989859475ed3205de1f87c828">00157</a> ostream& <a class="code" href="classppsig.html#a06638212495135c1c2f766e25ffa5902">ppsig::printrec</a> (ostream& fout, <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> lexp, <span class="keywordtype">bool</span> hide)<span class="keyword"> const</span> <a name="l00158"></a>00158 <span class="keyword"></span>{ <a name="l00159"></a>00159 fout << <span class="stringliteral">"debruijn("</span> << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(lexp,<a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>) << <span class="stringliteral">")"</span>; <a name="l00160"></a>00160 <span class="keywordflow">return</span> fout; <a name="l00161"></a>00161 } <a name="l00162"></a>00162 <a name="l00163"></a><a class="code" href="classppsig.html#aa15dac9c5ff2123c556e165336d4bdb6">00163</a> ostream& <a class="code" href="classppsig.html#aa15dac9c5ff2123c556e165336d4bdb6">ppsig::printextended</a> (ostream& fout, <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> sig)<span class="keyword"> const</span> <a name="l00164"></a>00164 <span class="keyword"></span>{ <a name="l00165"></a>00165 <span class="keywordtype">string</span> sep = <span class="stringliteral">""</span>; <a name="l00166"></a>00166 <a class="code" href="classxtended.html">xtended</a>* p = (<a class="code" href="classxtended.html">xtended</a>*) <a class="code" href="symbol_8hh.html#a603fcb6c07eacf2688c2a8470637d0ff" title="Returns user data.">getUserData</a>(sig); <a name="l00167"></a>00167 <a name="l00168"></a>00168 fout << p-><a class="code" href="classxtended.html#a59e2a80966bb13528803e79b32c7a365">name</a>() << <span class="charliteral">'('</span>; <a name="l00169"></a>00169 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < sig-><a class="code" href="classCTree.html#a68f2be5e845407bc956a2893fe6f0d03" title="return the number of branches (subtrees) of a tree">arity</a>(); i++) { <a name="l00170"></a>00170 fout << sep << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(sig-><a class="code" href="classCTree.html#a06c1513b23dc7b0d9da9c930c6dc43c5" title="return the ith branch (subtree) of a tree">branch</a>(i), <a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>); <a name="l00171"></a>00171 sep = <span class="stringliteral">", "</span>; <a name="l00172"></a>00172 } <a name="l00173"></a>00173 fout << <span class="charliteral">')'</span>; <a name="l00174"></a>00174 <span class="keywordflow">return</span> fout; <a name="l00175"></a>00175 } <a name="l00176"></a>00176 <a name="l00177"></a>00177 <a name="l00178"></a><a class="code" href="classppsig.html#a3a1d56313e3dd0eb7702d909656eb519">00178</a> ostream& <a class="code" href="classppsig.html#a3a1d56313e3dd0eb7702d909656eb519">ppsig::print</a> (ostream& fout)<span class="keyword"> const</span> <a name="l00179"></a>00179 <span class="keyword"></span>{ <a name="l00180"></a>00180 <span class="keywordtype">int</span> i; <a name="l00181"></a>00181 <span class="keywordtype">double</span> r; <a name="l00182"></a>00182 <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> c, sel, x, y, z, u, var, le, label, id, ff, largs, type, <a class="code" href="symbol_8hh.html#a8243134fbbd9d924ebbb3f833922e310" title="Returns the name of a symbol.">name</a>, file; <a name="l00183"></a>00183 <a name="l00184"></a>00184 <span class="keywordflow">if</span> ( <a class="code" href="list_8hh.html#a8bdd73641276e0c0f999f504348eacc1">isList</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>) ) { <a class="code" href="classppsig.html#a82415e74018cfd123856714b5ada9d32">printlist</a>(fout, <a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>); } <a name="l00185"></a>00185 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#a9b54e9177bb3726e06700649c3e5c05d">isProj</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, &i, x) ) { fout << <span class="stringliteral">"proj"</span> << i << <span class="charliteral">'('</span> << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(x, <a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>) << <span class="charliteral">')'</span>; } <a name="l00186"></a>00186 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="recursive-tree_8cpp.html#a4cb44c6e41e21da830e748dc35f16ba5" title="is t a de Bruijn recursive tree">isRec</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, var, le) ) { <a class="code" href="classppsig.html#a06638212495135c1c2f766e25ffa5902">printrec</a>(fout, var, le, <a class="code" href="classppsig.html#a46bd8e7660f4eac94a48da4ec296f473">fHideRecursion</a> <span class="comment">/*&& (getRecursivness(sig)==0)*/</span> ); } <a name="l00187"></a>00187 <a name="l00188"></a>00188 <span class="comment">// debruinj notation</span> <a name="l00189"></a>00189 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="recursive-tree_8cpp.html#a4cb44c6e41e21da830e748dc35f16ba5" title="is t a de Bruijn recursive tree">isRec</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, le) ) { <a class="code" href="classppsig.html#a06638212495135c1c2f766e25ffa5902">printrec</a>(fout, le, <a class="code" href="classppsig.html#a46bd8e7660f4eac94a48da4ec296f473">fHideRecursion</a> ); } <a name="l00190"></a>00190 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="recursive-tree_8cpp.html#a3a07093d0e487cc733adab39f6a18e78" title="is t a de Bruijn recursive reference">isRef</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, i) ) { fout << <span class="stringliteral">"REF["</span> << i << <span class="stringliteral">"]"</span>; } <a name="l00191"></a>00191 <a name="l00192"></a>00192 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="symbol_8hh.html#a603fcb6c07eacf2688c2a8470637d0ff" title="Returns user data.">getUserData</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>) ) { <a class="code" href="classppsig.html#aa15dac9c5ff2123c556e165336d4bdb6">printextended</a>(fout, <a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>); } <a name="l00193"></a>00193 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#a75cc925deac1e031e75ae72271dd5995">isSigInt</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, &i) ) { fout << i; } <a name="l00194"></a>00194 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#a305497ed8593020624204f9d359743f2">isSigReal</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, &r) ) { fout << r; } <a name="l00195"></a>00195 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#a38254d67a0541d98c6097fd51b22ea45">isSigInput</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, &i) ) { fout << <span class="stringliteral">"IN["</span> << i << <span class="stringliteral">"]"</span>; } <a name="l00196"></a>00196 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#a1415deb58619ab50a536d7f2ce425f22">isSigOutput</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, &i, x) ) { <a class="code" href="classppsig.html#ad9eb8849586852dbf68f8510ad30ef88">printout</a>(fout, i, x) ; } <a name="l00197"></a>00197 <a name="l00198"></a>00198 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#a0899d7e2a69a467b0dcf62242397367f">isSigDelay1</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, x) ) { fout << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(x, <a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>, 9) << <span class="stringliteral">"'"</span>; } <a name="l00199"></a>00199 <span class="comment">//else if ( isSigFixDelay(sig, x, y) ) { printinfix(fout, "@", 8, x, y); }</span> <a name="l00200"></a>00200 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#af55cdefee258834b3b8f6c070d4970c9">isSigFixDelay</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, x, y) ) { <a class="code" href="classppsig.html#a1f576f7a4b2231c1dba1e3318c052086">printFixDelay</a>(fout, x, y); } <a name="l00201"></a>00201 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#a18895c816779682006a84aede438af29">isSigPrefix</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, x, y) ) { <a class="code" href="classppsig.html#ac6af3cbc8021d552e70811d705009df3">printfun</a>(fout, <span class="stringliteral">"prefix"</span>, x, y); } <a name="l00202"></a>00202 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#a6aca999210178e06a21136a1bd819031">isSigIota</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, x) ) { <a class="code" href="classppsig.html#ac6af3cbc8021d552e70811d705009df3">printfun</a>(fout, <span class="stringliteral">"iota"</span>, x); } <a name="l00203"></a>00203 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#a8705584c3c319be54be73dc391d25634">isSigBinOp</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, &i, x, y) ) { <a class="code" href="classppsig.html#ad279886ecd41b83e4afae067f67a7c0d">printinfix</a>(fout, <a class="code" href="binop_8cpp.html#a2d55d4b4acaed7188a432ffdb646395a">gBinOpTable</a>[i]->fName, <a class="code" href="binop_8cpp.html#a2d55d4b4acaed7188a432ffdb646395a">gBinOpTable</a>[i]-><a class="code" href="classppsig.html#a6d238f345e55135018e1ec7a51b616c8" title="priority context">fPriority</a>, x, y); } <a name="l00204"></a>00204 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#a7d60b2c9da70fb0a2edff9593d38c573">isSigFFun</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, ff, largs) ) { <a class="code" href="classppsig.html#ab899c42d4be0e64b965ebdf22d032ffa">printff</a>(fout, ff, largs); } <a name="l00205"></a>00205 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#a71788aa9ccfc0aa598243fbef2a88f68">isSigFConst</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, type, name, file) ) { fout << <a class="code" href="tree_8cpp.html#ac753d60778175e30a86cba647db017ad" title="if t has a node of type symbol, return its name otherwise error">tree2str</a>(name); } <a name="l00206"></a>00206 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#a13d7a7178d98383c309b0e4a45dfc96b">isSigFVar</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, type, name, file) ) { fout << <a class="code" href="tree_8cpp.html#ac753d60778175e30a86cba647db017ad" title="if t has a node of type symbol, return its name otherwise error">tree2str</a>(name); } <a name="l00207"></a>00207 <a name="l00208"></a>00208 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#aa9b2ad7a65566fbc382d60e315b42740">isSigTable</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, <span class="keywordtype">id</span>, x, y) ) { <a class="code" href="classppsig.html#ac6af3cbc8021d552e70811d705009df3">printfun</a>(fout, <span class="stringliteral">"TABLE"</span>, x, y); } <a name="l00209"></a>00209 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#ab5b22110acbd38b7d4634dc94bcc8d22">isSigWRTbl</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, <span class="keywordtype">id</span>, x, y, z) ) { <a class="code" href="classppsig.html#ac6af3cbc8021d552e70811d705009df3">printfun</a>(fout, <span class="stringliteral">"write"</span>, x, y, z); } <a name="l00210"></a>00210 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#a9d9cbd375c200fa4e666de6ffb72dbca">isSigRDTbl</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, x, y) ) { <a class="code" href="classppsig.html#ac6af3cbc8021d552e70811d705009df3">printfun</a>(fout, <span class="stringliteral">"read"</span>, x, y); } <a name="l00211"></a>00211 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#a771720237ca174a55a6823cc6623d602">isSigGen</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, x) ) { fout << <a class="code" href="classppsig.html#af9a42a314553d536a0bebfe48b77eaac">ppsig</a>(x, <a class="code" href="classppsig.html#a3863803cb15261fa64881c0130c71a20" title="recursive environment stack">fEnv</a>, <a class="code" href="classppsig.html#a6d238f345e55135018e1ec7a51b616c8" title="priority context">fPriority</a>); } <a name="l00212"></a>00212 <a name="l00213"></a>00213 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#a95620993ef284f3e29f20ebcc3b0a08e">isSigDocConstantTbl</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, x, y) ) { <a class="code" href="classppsig.html#ac6af3cbc8021d552e70811d705009df3">printfun</a>(fout, <span class="stringliteral">"docConstantTbl"</span>, x, y); } <a name="l00214"></a>00214 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#a4d843f58a403cb0802c2255489977396">isSigDocWriteTbl</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, x, y, z, u) ) { <a class="code" href="classppsig.html#ac6af3cbc8021d552e70811d705009df3">printfun</a>(fout, <span class="stringliteral">"docWriteTbl"</span>, x, y, z, u); } <a name="l00215"></a>00215 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#aec3b01f2f3ae693b4422142a22e4d0af">isSigDocAccessTbl</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, x, y) ) { <a class="code" href="classppsig.html#ac6af3cbc8021d552e70811d705009df3">printfun</a>(fout, <span class="stringliteral">"docAccessTbl"</span>, x, y); } <a name="l00216"></a>00216 <a name="l00217"></a>00217 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#a55f14d5c4b5bc07285840f93d380b422">isSigSelect2</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, sel, x, y) ) { <a class="code" href="classppsig.html#ac6af3cbc8021d552e70811d705009df3">printfun</a>(fout, <span class="stringliteral">"select2"</span>, sel, x, y); } <a name="l00218"></a>00218 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#a33cf5ac61f2ad8244394ce1e59914bbc">isSigSelect3</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, sel, x, y, z) ) { <a class="code" href="classppsig.html#ac6af3cbc8021d552e70811d705009df3">printfun</a>(fout, <span class="stringliteral">"select3"</span>, sel, x, y, z); } <a name="l00219"></a>00219 <a name="l00220"></a>00220 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#a3ef48f0da2ef5b8e3ee7371a1e4059ae">isSigIntCast</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, x) ) { <a class="code" href="classppsig.html#ac6af3cbc8021d552e70811d705009df3">printfun</a>(fout, <span class="stringliteral">"int"</span>, x); } <a name="l00221"></a>00221 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#a52448156d86125bbc8de23d641217de2">isSigFloatCast</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, x) ) { <a class="code" href="classppsig.html#ac6af3cbc8021d552e70811d705009df3">printfun</a>(fout, <span class="stringliteral">"float"</span>, x); } <a name="l00222"></a>00222 <a name="l00223"></a>00223 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#a9cb8af593289d910a1f8ec8a9c8d880f">isSigButton</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, label) ) { <a class="code" href="classppsig.html#a942921bbd4db20fdf558402d4de160fe">printui</a>(fout, <span class="stringliteral">"button"</span>, label); } <a name="l00224"></a>00224 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#a48996c1ce74258d499baae3d267078bc">isSigCheckbox</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, label) ) { <a class="code" href="classppsig.html#a942921bbd4db20fdf558402d4de160fe">printui</a>(fout, <span class="stringliteral">"checkbox"</span>, label); } <a name="l00225"></a>00225 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#aac990f39e6a1d50e8e1de3b6f7701cfe">isSigVSlider</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, label,c,x,y,z) ) { <a class="code" href="classppsig.html#a942921bbd4db20fdf558402d4de160fe">printui</a>(fout, <span class="stringliteral">"vslider"</span>, label, c, x, y, z); } <a name="l00226"></a>00226 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#aaa72c718314a1ba2cee25a95c153e37d">isSigHSlider</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, label,c,x,y,z) ) { <a class="code" href="classppsig.html#a942921bbd4db20fdf558402d4de160fe">printui</a>(fout, <span class="stringliteral">"hslider"</span>, label, c, x, y, z); } <a name="l00227"></a>00227 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#aa8476971aba67dfc3af7b5d11f974ef3">isSigNumEntry</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, label,c,x,y,z) ) { <a class="code" href="classppsig.html#a942921bbd4db20fdf558402d4de160fe">printui</a>(fout, <span class="stringliteral">"nentry"</span>, label, c, x, y, z); } <a name="l00228"></a>00228 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#a667a345cf4efcba00fce5a06bc1e8299">isSigVBargraph</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, label,x,y,z) ) { <a class="code" href="classppsig.html#a942921bbd4db20fdf558402d4de160fe">printui</a>(fout, <span class="stringliteral">"vbargraph"</span>, label, x, y, z); } <a name="l00229"></a>00229 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#a5acf9dd03d1d0032e9486867876f1806">isSigHBargraph</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, label,x,y,z) ) { <a class="code" href="classppsig.html#a942921bbd4db20fdf558402d4de160fe">printui</a>(fout, <span class="stringliteral">"hbargraph"</span>, label, x, y, z); } <a name="l00230"></a>00230 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( <a class="code" href="signals_8cpp.html#ad717966fe25735c5cf799e04338192b4">isSigAttach</a>(<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a>, x, y) ) { <a class="code" href="classppsig.html#ac6af3cbc8021d552e70811d705009df3">printfun</a>(fout, <span class="stringliteral">"attach"</span>, x, y); } <a name="l00231"></a>00231 <a name="l00232"></a>00232 <span class="keywordflow">else</span> { <a name="l00233"></a>00233 cerr << <span class="stringliteral">"ERROR, ppsig doesn't recognize signal : "</span> << *<a class="code" href="classppsig.html#aa130c4bbd22db30df138115a6f495cd9">sig</a> << endl; <a name="l00234"></a>00234 exit(1); <a name="l00235"></a>00235 } <a name="l00236"></a>00236 <span class="keywordflow">return</span> fout; <a name="l00237"></a>00237 } <a name="l00238"></a>00238 </pre></div></div> <hr class="footer"/><address style="text-align: right;"><small>Generated on Wed Apr 28 23:59:59 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>