Mercurial > hg > mep
diff SubjectResults.java @ 0:4031cbb02f08
Initial import.
Ignore-this: 87317e384f22bde48db996355191fa5f
author | Marcus Pearce <m.pearce@gold.ac.uk> |
---|---|
date | Tue, 18 May 2010 11:37:10 +0100 |
parents | |
children | 1fe7ac28a3ca |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/SubjectResults.java Tue May 18 11:37:10 2010 +0100 @@ -0,0 +1,77 @@ +/*============================================================================= + * File: SubjectResults.java + * Author: Marcus Pearce <m.pearce@gold.ac.uk> + * Created: <2007-12-12 10:44:12 marcusp> + * Time-stamp: <2007-12-17 11:49:35 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; + while (ri.hasNext()) { + MelodyResults mResult = (MelodyResults)ri.next(); + mResult.writeResults(outputFile, header); + if (header) + header = false; + } + } + + 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; + } + } +}