annotate SubjectResults.java @ 37:0e030f32a6e2

Allow alphanumeric subject IDs
author Jeremy Gow <jeremy.gow@gmail.com>
date Fri, 16 Nov 2012 10:17:19 +0000
parents 284c23df4652
children 351b0c8b34ac
rev   line source
m@0 1 /*=============================================================================
m@0 2 * File: SubjectResults.java
m@0 3 * Author: Marcus Pearce <m.pearce@gold.ac.uk>
m@0 4 * Created: <2007-12-12 10:44:12 marcusp>
m@12 5 * Time-stamp: <2011-11-10 19:13:32 marcusp>
m@0 6 *=============================================================================
m@0 7 */
m@0 8
m@0 9 import java.util.ArrayList;
m@0 10 import java.util.Iterator;
m@0 11 import java.io.*;
m@0 12
m@0 13 public class SubjectResults {
m@0 14
m@0 15 /* variables */
jeremy@37 16 private String subjectID;
m@0 17 private File outputFile, subjectDataFile;
m@0 18 private ArrayList results, subjectData;
m@0 19 private Experiment exp;
m@0 20
m@0 21 /* accessors */
jeremy@37 22 public String getSubjectID() { return subjectID; }
jeremy@37 23 public void setSubjectID(String id) { subjectID = id; }
m@0 24 public void setSubjectData (ArrayList sd) { subjectData = sd; }
jeremy@37 25 public void setOutputFile (String id) {
jeremy@37 26 outputFile = new File(exp.RESULTS_DIRECTORY + id +
m@0 27 exp.RESULTS_EXTENSION);
m@0 28 }
m@0 29
m@0 30 /* constructor */
m@0 31 public SubjectResults(Experiment e) {
m@0 32 exp = e;
m@0 33 subjectDataFile = new File(exp.SUBJECT_RESULTS_FILE);
m@0 34 results = new ArrayList();
m@0 35 subjectData = new ArrayList();
m@0 36 }
m@0 37
m@0 38 /* methods */
m@0 39 public void addResult(MelodyResults mr) {
m@0 40 results.add(mr);
m@0 41 }
m@0 42
m@0 43 public void writeResults() {
m@0 44 Iterator ri = results.iterator();
m@2 45 boolean header = true;
m@2 46 boolean append = false;
m@0 47 while (ri.hasNext()) {
m@0 48 MelodyResults mResult = (MelodyResults)ri.next();
m@2 49 mResult.writeResults(outputFile, header, append);
m@2 50 if (header) {
m@0 51 header = false;
m@2 52 append = true;
m@2 53 }
m@0 54 }
m@0 55 }
m@0 56
m@0 57 public void writeSubjectData () {
m@0 58 Writer writer = null;
m@0 59 try {
m@0 60 writer = new FileWriter (subjectDataFile, true);
m@0 61 } catch (IOException e) {
m@0 62 System.out.println("Could not write file: " + outputFile.getPath());
m@0 63 return;
m@0 64 }
m@0 65
m@0 66 try {
m@0 67 Iterator sji = subjectData.iterator();
m@0 68 while(sji.hasNext()) {
m@0 69 String[] data = (String[])sji.next();
m@12 70 writer.write(data[1] + ", ");
m@0 71 }
m@0 72 writer.write("\n");
m@0 73 writer.close();
m@0 74
m@0 75 } catch (IOException e) {
m@0 76 System.out.println (e.getMessage());
m@0 77 return;
m@0 78 }
m@0 79 }
m@0 80 }