Mercurial > hg > mep
view SubjectResults.java @ 4:5080b65e6963
Close MIDI sequencer and synthesizer properly and allow user to pass MIDI file directory as a command line argument
Ignore-this: dbf86cc9008fba00379b67dd541adb38
author | Marcus Pearce <m.pearce@gold.ac.uk> |
---|---|
date | Thu, 18 Nov 2010 11:47:32 +0000 |
parents | 1fe7ac28a3ca |
children | 284c23df4652 |
line wrap: on
line source
/*============================================================================= * File: SubjectResults.java * Author: Marcus Pearce <m.pearce@gold.ac.uk> * Created: <2007-12-12 10:44:12 marcusp> * Time-stamp: <2010-11-16 15:28:10 marcusp> *============================================================================= */ import java.util.ArrayList; import java.util.Iterator; import java.io.*; public class SubjectResults { /* variables */ private int subjectID; private File outputFile, subjectDataFile; private ArrayList results, subjectData; private Experiment exp; /* accessors */ public int getSubjectID() { return subjectID; } public void setSubjectID(int id) { subjectID = id; } public void setSubjectData (ArrayList sd) { subjectData = sd; } public void setOutputFile (int id) { outputFile = new File(exp.RESULTS_DIRECTORY + Integer.toString(id) + exp.RESULTS_EXTENSION); } /* constructor */ public SubjectResults(Experiment e) { exp = e; subjectDataFile = new File(exp.SUBJECT_RESULTS_FILE); results = new ArrayList(); subjectData = new ArrayList(); } /* methods */ public void addResult(MelodyResults mr) { results.add(mr); } public void writeResults() { Iterator ri = results.iterator(); boolean header = true; boolean append = false; while (ri.hasNext()) { MelodyResults mResult = (MelodyResults)ri.next(); mResult.writeResults(outputFile, header, append); if (header) { header = false; append = true; } } } public void writeSubjectData () { Writer writer = null; try { writer = new FileWriter (subjectDataFile, true); } catch (IOException e) { System.out.println("Could not write file: " + outputFile.getPath()); return; } try { Iterator sji = subjectData.iterator(); while(sji.hasNext()) { String[] data = (String[])sji.next(); writer.write(data[1] + " "); } writer.write("\n"); writer.close(); } catch (IOException e) { System.out.println (e.getMessage()); return; } } }