public static void Execute(Arguments arguments) { if (arguments == null) { arguments = Dev(); } string opFName = ANALYSIS_NAME + ".txt"; FileInfo opPath = arguments.Output.CombineFile(opFName); string audioFileName = arguments.Source.Name; Log.Verbosity = 1; string title = "# FOR DETECTION OF ACOUSTIC EVENTS HAVING A GRID OR GRATING STRUCTURE"; string date = "# DATE AND TIME: " + DateTime.Now; LoggedConsole.WriteLine(title); LoggedConsole.WriteLine(date); LoggedConsole.WriteLine("# Output folder: " + arguments.Output); LoggedConsole.WriteLine("# Recording file: " + arguments.Source.Name); FileTools.WriteTextFile(opPath.FullName, date + "\n# Recording file: " + audioFileName); //READ PARAMETER VALUES FROM INI FILE var configuration = new ConfigDictionary(arguments.Config); Dictionary <string, string> configDict = configuration.GetTable(); Dictionary <string, string> .KeyCollection keys = configDict.Keys; int startMinute = 5; //dummy value var fiSegmentOfSourceFile = arguments.Source; var diOutputDir = arguments.Output; //############################################################################################################################################# DataTable dt = AnalysisReturnsDataTable(startMinute, fiSegmentOfSourceFile, configDict, diOutputDir); //############################################################################################################################################# if (dt == null) { Log.WriteLine("\n\n\n##############################\n WARNING! No events returned."); } else { //LoggedConsole.WriteLine("\tRecording Duration: {0:f2}seconds", recordingTimeSpan.TotalSeconds); LoggedConsole.WriteLine("# Event count for minute {0} = {1}", startMinute, dt.Rows.Count); DataTableTools.WriteTable2Console(dt); } LoggedConsole.WriteLine("# Finished recording:- " + arguments.Source.FullName); }