method to_int : int
method to_float : float
method to_float_array : float array
+ method of_float_array : float array -> value_type
method to_string : string
method normalize : unit
method add : value_type -> value_type
method mul : value_type -> value_type
method recip : value_type
method div : value_type -> value_type
+ method power : value_type -> value_type
+ method _and : value_type -> value_type
+ method _or : value_type -> value_type
+ method _xor : value_type -> value_type
method zero : value_type
method floor : value_type
+ method ceil : value_type
+ method rint : value_type
method int : value_type
+ method float : value_type
method sin : value_type
+ method asin : value_type
method cos : value_type
+ method acos : value_type
+ method tan : value_type
method atan : value_type
- method sqrt : value_type
method atan2 : value_type -> value_type
+ method exp : value_type
+ method sqrt : value_type
+ method ln : value_type
+ method lg : value_type
+ method abs : value_type
+ method fmod : value_type -> value_type
method _mod : value_type -> value_type
- method larger : value_type -> value_type
- method smaller : value_type -> value_type
+ method remainder : value_type -> value_type
+ method gt : value_type -> value_type
+ method lt : value_type -> value_type
+ method geq : value_type -> value_type
+ method leq : value_type -> value_type
+ method eq : value_type -> value_type
+ method neq : value_type -> value_type
+ method shl : value_type -> value_type
+ method shr : value_type -> value_type
+ method max : value_type -> value_type
+ method min : value_type -> value_type
end;;
type symbol = Add
- | Sup
+ | Sub
| Mul
| Div
+ | Power
| Pass
| Stop
+ | And
+ | Or
+ | Xor
| Mem
| Delay
| Floor
+ | Ceil
+ | Rint
| Int
+ | Float
| Sin
+ | Asin
| Cos
+ | Acos
+ | Tan
| Atan
- | Atantwo
+ | Atan2
+ | Exp
| Sqrt
- | Rdtable
+ | Ln
+ | Lg
+ | Abs
+ | Fmod
| Mod
+ | Remainder
| Vectorize
| Vconcat
| Vpick
| Serialize
- | Larger
- | Smaller
+ | Gt
+ | Lt
+ | Geq
+ | Leq
+ | Eq
+ | Neq
+ | Shl
+ | Shr
+ | Max
+ | Min
| Prefix
- | Selecttwo
- | Selectthree
-
+ | Select2
+ | Select3
+ | Rdtable
+ | Rwtable
type faust_exp =
Const of basic
| Merge of faust_exp * faust_exp
+class type rate_type =
+ object
+ method to_int : int
+ method to_float : float
+ method to_string : string
+ method num : int
+ method denom : int
+ method equal : rate_type -> bool
+ method mul : int -> rate_type
+ method div : int -> rate_type
+ end
+
class type signal_type =
object
- method frequency : int
+ method frequency : rate_type
method at : time -> value_type
+ method add_memory : int -> unit
method add : signal_type -> signal_type
method neg : signal_type
method sub : signal_type -> signal_type
method mul : signal_type -> signal_type
method div : signal_type -> signal_type
+ method power : signal_type -> signal_type
+ method _and : signal_type -> signal_type
+ method _or : signal_type -> signal_type
+ method _xor : signal_type -> signal_type
method delay : signal_type -> signal_type
method mem : signal_type
method vectorize : signal_type -> signal_type
method vconcat : signal_type -> signal_type
method vpick : signal_type -> signal_type
method floor : signal_type
+ method ceil : signal_type
+ method rint : signal_type
method int : signal_type
+ method float : signal_type
method sin : signal_type
+ method asin : signal_type
method cos : signal_type
+ method acos : signal_type
+ method tan : signal_type
method atan : signal_type
method atan2 : signal_type -> signal_type
+ method exp : signal_type
method sqrt : signal_type
+ method ln : signal_type
+ method lg : signal_type
+ method abs : signal_type
+ method fmod : signal_type -> signal_type
method _mod : signal_type -> signal_type
- method larger : signal_type -> signal_type
- method smaller : signal_type -> signal_type
+ method remainder : signal_type -> signal_type
+ method gt : signal_type -> signal_type
+ method lt : signal_type -> signal_type
+ method geq : signal_type -> signal_type
+ method leq : signal_type -> signal_type
+ method eq : signal_type -> signal_type
+ method neq : signal_type -> signal_type
+ method shl : signal_type -> signal_type
+ method shr : signal_type -> signal_type
+ method max : signal_type -> signal_type
+ method min : signal_type -> signal_type
method rdtable : signal_type -> signal_type -> signal_type
+ method rwtable : signal_type -> signal_type ->
+ signal_type -> signal_type -> signal_type
method select2 : signal_type -> signal_type -> signal_type
method select3 : signal_type -> signal_type -> signal_type -> signal_type
method prefix : signal_type -> signal_type
end;;
+type matrix = float array array;;
+
+type data = float array array array;;
class type beam_type =
object
- method length : int
- method sub : start: int -> length: int -> beam_type
+ method get : signal_type array
+ method width : int
+ method sub : int -> int -> beam_type
+ method cut : int -> beam_type * beam_type
method append : beam_type -> beam_type
- method matching : size: int -> beam_type
- method time : time -> basic list
- method output : length: int -> (int list) * (float array list)
+ method matching : int -> beam_type
+ method at : time -> value_type array
+ method output : int -> data
+ method frequency : rate_type array
end;;
object
method input : int
method output : int
+ method par : dimension_type -> dimension_type
+ method seq : dimension_type -> dimension_type
+ method split : dimension_type -> dimension_type
+ method merge : dimension_type -> dimension_type
+ method _rec : dimension_type -> dimension_type
end;;
-class type expression_type =
+class type process_type =
+ object
+ method exp : faust_exp
+ method dim : dimension_type
+ method delay : int
+ method eval : beam_type -> beam_type
+ end;;
+
+
+class type io_type =
object
- method get_exp : faust_exp
- method get_dim : dimension_type
- method get_delay : int
- method to_string : string
- method evaluate : beam_type -> beam_type
+ method set : string -> string -> unit
+ method read : string array -> beam_type
+ method write : rate_type array -> data -> string array
end;;