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;
+        }
+    }
+}