Merge branch 'OOP' of https://scm.cri.ensmp.fr/git/Faustine into OOP
[Faustine.git] / documentation / Faustexp.html
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2 <html>
3 <head>
4 <link rel="stylesheet" href="style.css" type="text/css">
5 <meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type">
6 <link rel="Start" href="index.html">
7 <link rel="previous" href="Signal.html">
8 <link rel="next" href="Interpreter.html">
9 <link rel="Up" href="index.html">
10 <link title="Index of types" rel=Appendix href="index_types.html">
11 <link title="Index of exceptions" rel=Appendix href="index_exceptions.html">
12 <link title="Index of values" rel=Appendix href="index_values.html">
13 <link title="Index of modules" rel=Appendix href="index_modules.html">
14 <link title="Types" rel="Chapter" href="Types.html">
15 <link title="Parser" rel="Chapter" href="Parser.html">
16 <link title="Lexer" rel="Chapter" href="Lexer.html">
17 <link title="Value" rel="Chapter" href="Value.html">
18 <link title="Signal" rel="Chapter" href="Signal.html">
19 <link title="Faustexp" rel="Chapter" href="Faustexp.html">
20 <link title="Interpreter" rel="Chapter" href="Interpreter.html">
21 <link title="Preprocess" rel="Chapter" href="Preprocess.html">
22 <link title="Main" rel="Chapter" href="Main.html"><title>Faustexp</title>
23 </head>
24 <body>
25 <div class="navbar"><a href="Signal.html">Previous</a>
26 &nbsp;<a href="index.html">Up</a>
27 &nbsp;<a href="Interpreter.html">Next</a>
28 </div>
29 <center><h1>Module <a href="type_Faustexp.html">Faustexp</a></h1></center>
30 <br>
31 <pre><span class="keyword">module</span> Faustexp: <code class="code">sig</code> <a href="Faustexp.html">..</a> <code class="code">end</code></pre>Module: Faustexp
32 Description: dimension estimation and delay estimation of faust expressions.<br>
33 <b>Author(s):</b> WANG Haisheng
34 Created: 03/06/2013 Modified: 04/06/2013<br>
35 <hr width="100%">
36 <pre><span id="EXCEPTIONBeam_Matching_Error"><span class="keyword">exception</span> Beam_Matching_Error</span> <span class="keyword">of</span> <code class="type">string</code></pre>
37 <div class="info">
38 Exception raised in beam matching of faust expressions.<br>
39 </div>
40 <pre><span id="EXCEPTIONNotYetDone"><span class="keyword">exception</span> NotYetDone</span></pre>
41 <div class="info">
42 Exception raised in case that the branch under call hasn't yet been programed.<br>
43 </div>
44 <pre><span id="VALdelay"><span class="keyword">val</span> <a href="code_VALFaustexp.delay.html">delay</a></span> : <code class="type"><a href="Types.html#TYPEfaust_exp">Types.faust_exp</a> -> int</code></pre><div class="info">
45 val delay : faust_exp -&gt; int, returns the number of delays estimated staticly.
46 Attention: delays of "@" is estimated as 10 constant,
47 delays of "vectorize" and "serialize" haven't been implemented,
48 delays of "rdtable" hasn't been implemented.<br>
49 </div>
50 <pre><span id="VALexp_of_string"><span class="keyword">val</span> <a href="code_VALFaustexp.exp_of_string.html">exp_of_string</a></span> : <code class="type">string -> <a href="Types.html#TYPEfaust_exp">Types.faust_exp</a></code></pre><div class="info">
51 val exp_of_string : string -&gt; faust_exp, faust expression parser.<br>
52 </div>
53 <pre><span id="VALget_root"><span class="keyword">val</span> <a href="code_VALFaustexp.get_root.html">get_root</a></span> : <code class="type"><a href="Types.html#TYPEdimension">Types.dimension</a> -> int * int</code></pre><div class="info">
54 val get_root : dimension -&gt; int * int, returns the root of dimension tree.<br>
55 </div>
56 <pre><span id="VALsubtree"><span class="keyword">val</span> <a href="code_VALFaustexp.subtree.html">subtree</a></span> : <code class="type"><a href="Types.html#TYPEdimension">Types.dimension</a> -> int -> <a href="Types.html#TYPEdimension">Types.dimension</a></code></pre><div class="info">
57 val subtree : dimention -&gt; int -&gt; dimension, returns a subtree of dimension tree.<br>
58 </div>
59 <pre><span id="VALsubtree_left"><span class="keyword">val</span> <a href="code_VALFaustexp.subtree_left.html">subtree_left</a></span> : <code class="type"><a href="Types.html#TYPEdimension">Types.dimension</a> -> <a href="Types.html#TYPEdimension">Types.dimension</a></code></pre><div class="info">
60 val subtree_left : dimension -&gt; dimension, returns the left subtree of dimension tree.<br>
61 </div>
62 <pre><span id="VALsubtree_right"><span class="keyword">val</span> <a href="code_VALFaustexp.subtree_right.html">subtree_right</a></span> : <code class="type"><a href="Types.html#TYPEdimension">Types.dimension</a> -> <a href="Types.html#TYPEdimension">Types.dimension</a></code></pre><div class="info">
63 val subtree_right : dimension -&gt; dimension, returns the right subtree of dimension tree.<br>
64 </div>
65 <pre><span id="VALd_par"><span class="keyword">val</span> <a href="code_VALFaustexp.d_par.html">d_par</a></span> : <code class="type">int * int -> int * int -> int * int</code></pre><div class="info">
66 val d_par : int * int -&gt; int * int -&gt; int * int, process dimension for constructor "par(,)",
67 which is the addition of two dimensions.<br>
68 </div>
69 <pre><span id="VALd_seq"><span class="keyword">val</span> <a href="code_VALFaustexp.d_seq.html">d_seq</a></span> : <code class="type">'a * 'b -> 'b * 'c -> 'a * 'c</code></pre><div class="info">
70 val d_seq : int * int -&gt; int * int -&gt; int * int, process dimension for constructor "seq(:)",
71 which is (size of input beam of first exp, size of output beam of second exp)
72 along with beam matching.<br>
73 </div>
74 <pre><span id="VALd_split"><span class="keyword">val</span> <a href="code_VALFaustexp.d_split.html">d_split</a></span> : <code class="type">'a * int -> int * 'b -> 'a * 'b</code></pre><div class="info">
75 val d_split : int * int -&gt; int * int -&gt; int * int, process dimension for constructor "split(&lt;:)",
76 which is (size of input beam of first exp, size of output beam of second exp)
77 along with beam matching.<br>
78 </div>
79 <pre><span id="VALd_merge"><span class="keyword">val</span> <a href="code_VALFaustexp.d_merge.html">d_merge</a></span> : <code class="type">'a * int -> int * 'b -> 'a * 'b</code></pre><div class="info">
80 val d_merge : int * int -&gt; int * int -&gt; int * int, process dimension for constructor "merge(:&gt;)",
81 which is (size of input beam of first exp, size of output beam of second exp)
82 along with beam matching.<br>
83 </div>
84 <pre><span id="VALd_rec"><span class="keyword">val</span> <a href="code_VALFaustexp.d_rec.html">d_rec</a></span> : <code class="type">int * 'a -> 'a * int -> int * 'a</code></pre><div class="info">
85 val d_rec : int * int -&gt; int * int -&gt; int * int, process dimension for constructor "rec(~)",
86 which is (size of input beam of first exp - size of output beam of second exp,
87 size of output beam of first exp)
88 along with beam matching.<br>
89 </div>
90 <pre><span id="VALdim"><span class="keyword">val</span> <a href="code_VALFaustexp.dim.html">dim</a></span> : <code class="type"><a href="Types.html#TYPEfaust_exp">Types.faust_exp</a> -> <a href="Types.html#TYPEdimension">Types.dimension</a></code></pre><div class="info">
91 val dim : faust_exp -&gt; int * int, returns dimension for faust expression,
92 along with beam matching.<br>
93 </div>
94 <pre><span id="VALprint_exp"><span class="keyword">val</span> <a href="code_VALFaustexp.print_exp.html">print_exp</a></span> : <code class="type"><a href="Types.html#TYPEfaust_exp">Types.faust_exp</a> -> unit</code></pre><div class="info">
95 val print_exp : faust_exp -&gt; unit, print to console the input faust expression.<br>
96 </div>
97 </body></html>