package ie.dcu.auto; import java.util.*; public class EvaluationResults { private static class Item { final double[] values; public Item(double[] values) { this.values = values.clone(); } }; private String[] measures; private final List results; public EvaluationResults() { this.measures = new String[0]; this.results = new ArrayList(); } void setMeasures(String[] measures) { if (this.measures != measures) { clearResults(); this.measures = measures.clone(); } } public String[] getMeasures() { return measures; } public int getMeasureCount() { return measures.length; } public int indexOfMeasure(String measure) { for (int i = 0; i < measures.length; i++) { if (measures[i].equals(measure)) { return i; } } return -1; } void clearResults() { results.clear(); } void addResults(double[] results) { if (results.length != measures.length) { throw new IllegalArgumentException(); } this.results.add(new Item(results)); } public double[] getResults(int idx) { return results.get(idx).values; } public int getResultCount() { return results.size(); } }