// Path: src/main/java/org/harmony_analyser/application/visualizations/DataChartFactory.java
// public class DataChartFactory {
// 	private final String[] ALL_VISUALIZATIONS = new String[] {
// 		"nnls-chroma:chordino-labels",
// 		"qm-vamp-plugins:qm-keydetector",
// 		"chord_analyser:average_chord_complexity_distance",
// 		"chord_analyser:chord_complexity_distance",
// 		"chord_analyser:tps_distance",
// 		"chroma_analyser:simple_difference",
// 		"chroma_analyser:complexity_difference",
// 	};
// 
// 	public String[] getAllVisualizations() {
// 		return ALL_VISUALIZATIONS;
// 	}
// 
// 	public DataChart createDataChart(String analysisKey, VisualizationData visualizationData) {
// 		switch (analysisKey) {
// 			case "nnls-chroma:chordino-labels":
// 			case "qm-vamp-plugins:qm-keydetector":
// 				return new SegmentationDataChart(visualizationData);
// 			case "chord_analyser:average_chord_complexity_distance":
// 				return new AveragesDataChart(visualizationData);
// 			case "chord_analyser:chord_complexity_distance":
// 			case "chroma_analyser:simple_difference":
// 			case "chroma_analyser:complexity_difference":
// 			case "chord_analyser:tps_distance":
// 				return new LineDataChart(visualizationData);
// 			default:
// 				return new EmptyDataChart(VisualizationData.EMPTY_VISUALIZATION_DATA);
// 		}
// 	}
// }


import org.apache.commons.cli.*;
import org.harmony_analyser.application.visualizations.DataChartFactory;
import org.harmony_analyser.jharmonyanalyser.services.*;
import java.io.File;
package org.harmony_analyser.cli_scripts;



/**
 * Script to perform arbitrary harmony-analyser analysis in the current directory
 */

public class HarmonyAnalyserScript {
	private static String analysisKey;
	private static String suffixAndExtension;
	private static float audibleThreshold;
	private static AudioAnalyser audioAnalyser;

	public static void main(String[] args) {
		System.out.println("--- Starting Harmony Analyser 1.2-beta ---");
		System.out.println("Author: marsik@ksi.mff.cuni.cz");
		System.out.println("harmony-analyser.org");
		System.out.println();

		AnalysisFactory analysisFactory = new AnalysisFactory();
// Path: src/main/java/org/harmony_analyser/application/visualizations/DataChartFactory.java
// public class DataChartFactory {
// 	private final String[] ALL_VISUALIZATIONS = new String[] {
// 		"nnls-chroma:chordino-labels",
// 		"qm-vamp-plugins:qm-keydetector",
// 		"chord_analyser:average_chord_complexity_distance",
// 		"chord_analyser:chord_complexity_distance",
// 		"chord_analyser:tps_distance",
// 		"chroma_analyser:simple_difference",
// 		"chroma_analyser:complexity_difference",
// 	};
// 
// 	public String[] getAllVisualizations() {
// 		return ALL_VISUALIZATIONS;
// 	}
// 
// 	public DataChart createDataChart(String analysisKey, VisualizationData visualizationData) {
// 		switch (analysisKey) {
// 			case "nnls-chroma:chordino-labels":
// 			case "qm-vamp-plugins:qm-keydetector":
// 				return new SegmentationDataChart(visualizationData);
// 			case "chord_analyser:average_chord_complexity_distance":
// 				return new AveragesDataChart(visualizationData);
// 			case "chord_analyser:chord_complexity_distance":
// 			case "chroma_analyser:simple_difference":
// 			case "chroma_analyser:complexity_difference":
// 			case "chord_analyser:tps_distance":
// 				return new LineDataChart(visualizationData);
// 			default:
// 				return new EmptyDataChart(VisualizationData.EMPTY_VISUALIZATION_DATA);
// 		}
// 	}
// }


// Path: src/main/java/org/harmony_analyser/cli_scripts/HarmonyAnalyserScript.java
import org.apache.commons.cli.*;
import org.harmony_analyser.application.visualizations.DataChartFactory;
import org.harmony_analyser.jharmonyanalyser.services.*;
import java.io.File;

package org.harmony_analyser.cli_scripts;



/**
 * Script to perform arbitrary harmony-analyser analysis in the current directory
 */

public class HarmonyAnalyserScript {
	private static String analysisKey;
	private static String suffixAndExtension;
	private static float audibleThreshold;
	private static AudioAnalyser audioAnalyser;

	public static void main(String[] args) {
		System.out.println("--- Starting Harmony Analyser 1.2-beta ---");
		System.out.println("Author: marsik@ksi.mff.cuni.cz");
		System.out.println("harmony-analyser.org");
		System.out.println();

		AnalysisFactory analysisFactory = new AnalysisFactory();
		DataChartFactory dataChartFactory = new DataChartFactory();