X-Git-Url: https://scm.cri.mines-paristech.fr/git/Faustine.git/blobdiff_plain/f59ac471aa5a080301d70e7d7e1e81f34151ba2f..5ffc68ce0ca4af8e3139f8df236b19edae9e4cd5:/interpretor/main.ml?ds=sidebyside diff --git a/interpretor/main.ml b/interpretor/main.ml index 082fba3..ee77898 100644 --- a/interpretor/main.ml +++ b/interpretor/main.ml @@ -5,6 +5,7 @@ Created: 15/05/2013 Modified: 14/08/2013 *) +open Aux;; open Process;; open Faustio;; @@ -61,17 +62,50 @@ let main () = let _ = set_GC () in let () = Arg.parse speclist option_unknown option_usage in + + let () = print_string(" Faustine -> Reading input files...") in + let tic0 = Sys.time () in let wave = new waveio in - let input = wave#read (Array.of_list !inwavs) in + let csv = new csvio in + let input_wave = wave#read (Array.of_list !inwavs) in + let input_csv = csv#read (Array.of_list !incsvs) in + let input = input_wave#append input_csv in + let toc0 = Sys.time () in + let () = print_endline(" Done. (duration: " ^ (string_of_float (toc0 -. tic0)) ^ "s.)") in + + + let () = print_string(" Faustine -> Preprocessing...") in + let tic1 = Sys.time () in let faust_core = Preprocess.preprocess !path_dsp in + let toc1 = Sys.time () in + let () = print_endline(" Done. (duration: " ^ (string_of_float (toc1 -. tic1)) ^ "s.)") in + + + let () = print_string(" Faustine -> Constructing process...") in + let tic2 = Sys.time () in let faust_exp = exp_of_string faust_core in let proc = (new proc_factory)#make faust_exp in + let toc2 = Sys.time () in + let () = print_endline(" Done. (duration: " ^ (string_of_float (toc2 -. tic2)) ^ "s.)") in + + + let () = print_string(" Faustine -> Evaluation...") in + let tic3 = Sys.time () in let output = proc#eval input in + let toc3 = Sys.time () in + let () = print_endline(" Done. (duration: " ^ (string_of_float (toc3 -. tic3)) ^ "s.)") in + + + let data = output#output time_maximum in let rates = output#frequency in - let output_paths = wave#write rates data in - let _ = Array.map print_endline output_paths in + let output_wave_paths = wave#write rates data in + let output_csv_paths = csv#write rates data in + let _ = Array.map print_endline + (Array.map decorate output_wave_paths) in + let _ = Array.map print_endline + (Array.map decorate output_csv_paths) in ();;