Nested vectors are implemented, including parser and class nstio.
[Faustine.git] / interpreter / types.ml
index dd82e7c..aa82868 100644 (file)
@@ -24,6 +24,7 @@ class type value_type =
     method to_float_array : float array
     method of_float_array : float array -> value_type
     method to_string : string
+    method to_neststring : string
     method normalize : unit
     method add : value_type -> value_type
     method neg : value_type
@@ -120,6 +121,17 @@ type symbol = Add
            | Select3
            | Rdtable
            | Rwtable
+           | Button
+           | Checkbox
+           | Vslider
+           | Hslider
+           | Vgroup
+           | Hgroup
+           | Tgroup
+           | Hbargraph
+           | Vbargraph
+           | Nentry
+           | Attach
 
 type faust_exp =
          Const of basic
@@ -205,6 +217,8 @@ type matrix = float array array;;
 
 type data = float array array array;;
 
+type raw_data = value_type array array;;
+
 class type beam_type =
     object
       method get : signal_type array
@@ -215,6 +229,7 @@ class type beam_type =
       method matching : int -> beam_type
       method at : time -> value_type array
       method output : int -> data
+      method output_values : int -> raw_data
       method frequency : rate_type array
     end;;
 
@@ -242,7 +257,14 @@ class type process_type =
 
 class type io_type = 
     object
-      method set : string -> string -> unit
+      method set : string -> string -> string -> unit
       method read : string array -> beam_type
-      method write : rate_type array -> data -> string array
+      method write : rate_type array -> data -> string * string -> string array
     end;;
+
+
+type nest =
+         Scalar of float
+       | Vector of nestpar
+and nestpar = Unary of nest
+            | Binary of nest * nestpar;;
\ No newline at end of file