Index: branches/Classification-Extensions/HeuristicLab.Optimization/3.3/ResultCollection.cs
===================================================================
--- branches/Classification-Extensions/HeuristicLab.Optimization/3.3/ResultCollection.cs	(revision 11760)
+++ branches/Classification-Extensions/HeuristicLab.Optimization/3.3/ResultCollection.cs	(revision 11761)
@@ -24,7 +24,6 @@
 using HeuristicLab.Core;
 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
-using System.Linq;
 
-namespace HeuristicLab.Optimization {   
+namespace HeuristicLab.Optimization {
   [StorableClass]
   [Item("ResultCollection", "Represents a collection of results.")]
@@ -47,5 +46,5 @@
 
     public virtual void CollectResultValues(IDictionary<string, IItem> values) {
-      CollectResultValues(values, string.Empty);  
+      CollectResultValues(values, string.Empty);
     }
 
@@ -67,6 +66,7 @@
       if (result.Value == null) yield break;
       yield return new KeyValuePair<string, IItem>(string.Empty, result.Value);
+
       var resultCollection = result.Value as ResultCollection;
-      if (resultCollection != null) {       
+      if (resultCollection != null) {
         var children = new Dictionary<string, IItem>();
         resultCollection.CollectResultValues(children);
Index: branches/Classification-Extensions/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Classification/ClassificationSolutionBase.cs
===================================================================
--- branches/Classification-Extensions/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Classification/ClassificationSolutionBase.cs	(revision 11760)
+++ branches/Classification-Extensions/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Classification/ClassificationSolutionBase.cs	(revision 11761)
@@ -128,9 +128,10 @@
       TestNormalizedGiniCoefficient = testNormalizedGini;
 
-      trainingPerformanceCalculator.Calculate(originalTrainingClassValues, estimatedTrainingClassValues, out errorState);
-      if (errorState == OnlineCalculatorError.None)
+      trainingPerformanceCalculator.Calculate(originalTrainingClassValues, estimatedTrainingClassValues);
+      if (trainingPerformanceCalculator.ErrorState == OnlineCalculatorError.None)
         ClassificationPerformanceMeasures.SetTrainingResults(trainingPerformanceCalculator);
-      testPerformanceCalculator.Calculate(originalTestClassValues, estimatedTestClassValues, out errorState);
-      if (errorState == OnlineCalculatorError.None)
+
+      testPerformanceCalculator.Calculate(originalTestClassValues, estimatedTestClassValues);
+      if (testPerformanceCalculator.ErrorState == OnlineCalculatorError.None)
         ClassificationPerformanceMeasures.SetTestResults(testPerformanceCalculator);
     }
Index: branches/Classification-Extensions/HeuristicLab.Problems.DataAnalysis/3.4/OnlineCalculators/ClassificationPerformanceMeasuresCalculator.cs
===================================================================
--- branches/Classification-Extensions/HeuristicLab.Problems.DataAnalysis/3.4/OnlineCalculators/ClassificationPerformanceMeasuresCalculator.cs	(revision 11760)
+++ branches/Classification-Extensions/HeuristicLab.Problems.DataAnalysis/3.4/OnlineCalculators/ClassificationPerformanceMeasuresCalculator.cs	(revision 11761)
@@ -22,6 +22,4 @@
 using System;
 using System.Collections.Generic;
-using System.Linq;
-using System.Text;
 using HeuristicLab.Common;
 
@@ -32,21 +30,18 @@
       this.positiveClassName = positiveClassName;
       this.positiveClassValue = positiveClassValue;
-      Reset();        
+      Reset();
     }
 
     #region Properties
-    private string positiveClassName;
-    private double positiveClassValue;
     private int truePositiveCount, falsePositiveCount, trueNegativeCount, falseNegativeCount;
 
+    private readonly string positiveClassName;
     public string PositiveClassName {
-      get {
-        return positiveClassName;
-      }
+      get { return positiveClassName; }
     }
+
+    private readonly double positiveClassValue;
     public double PositiveClassValue {
-      get {
-        return positiveClassValue;
-      }
+      get { return positiveClassValue; }
     }
     public double TruePositiveRate {
@@ -92,5 +87,5 @@
     }
     #endregion
-                                
+
     public void Reset() {
       truePositiveCount = 0;
@@ -103,26 +98,26 @@
     public void Add(double originalClassValue, double estimatedClassValue) {
       // ignore cases where original is NaN completely 
-      if (!double.IsNaN(originalClassValue)) {
-        if (originalClassValue.IsAlmost(positiveClassValue) 
-              || estimatedClassValue.IsAlmost(positiveClassValue)) { //positive class/positive class estimation
-          if (estimatedClassValue.IsAlmost(originalClassValue)) {
-            truePositiveCount++;
-          } else {
-            if (estimatedClassValue.IsAlmost(positiveClassValue)) //misclassification of the negative class
-              falsePositiveCount++;
-            else //misclassification of the positive class
-              falseNegativeCount++;
-          }
-        } else { //negative class/negative class estimation
-          //In a multiclass classification all misclassifications of the negative class
-          //will be treated as true negatives except on positive class estimations
-          trueNegativeCount++;
+      if (double.IsNaN(originalClassValue)) return;
+
+      if (originalClassValue.IsAlmost(positiveClassValue)
+            || estimatedClassValue.IsAlmost(positiveClassValue)) { //positive class/positive class estimation
+        if (estimatedClassValue.IsAlmost(originalClassValue)) {
+          truePositiveCount++;
+        } else {
+          if (estimatedClassValue.IsAlmost(positiveClassValue)) //misclassification of the negative class
+            falsePositiveCount++;
+          else //misclassification of the positive class
+            falseNegativeCount++;
         }
-        errorState = OnlineCalculatorError.None; // number of (non-NaN) samples >= 1
+      } else { //negative class/negative class estimation
+        //In a multiclass classification all misclassifications of the negative class
+        //will be treated as true negatives except on positive class estimations
+        trueNegativeCount++;
       }
+
+      errorState = OnlineCalculatorError.None; // number of (non-NaN) samples >= 1
     }
 
-    public void Calculate(IEnumerable<double> originalClassValues, IEnumerable<double> estimatedClassValues,
-                                                                          out OnlineCalculatorError errorState) {
+    public void Calculate(IEnumerable<double> originalClassValues, IEnumerable<double> estimatedClassValues) {
       IEnumerator<double> originalEnumerator = originalClassValues.GetEnumerator();
       IEnumerator<double> estimatedEnumerator = estimatedClassValues.GetEnumerator();
@@ -137,10 +132,8 @@
 
       // check if both enumerators are at the end to make sure both enumerations have the same length
-      if (ErrorState == OnlineCalculatorError.None &&
-          (estimatedEnumerator.MoveNext() || originalEnumerator.MoveNext())) {
+      if (ErrorState == OnlineCalculatorError.None && (estimatedEnumerator.MoveNext() || originalEnumerator.MoveNext())) {
         throw new ArgumentException("Number of elements in originalValues and estimatedValues enumerations doesn't match.");
-      } else {
-        errorState = ErrorState;
       }
+      errorState = ErrorState;
     }
   }
