package geniusweb.blingbling; public class ValueTracker { private int valueCount = 0; private double evaluation = 0.0; public int incrementGet() { return ++valueCount; } public void updateEvaluation(int maxValueCount, double weight) { if (weight < 1.0) { double modValueCount = Math.pow(((double) valueCount + 1.0), (1.0 - weight)) - 1.0; double modMaxValueCount = Math.pow(((double) maxValueCount + 1.0), (1.0 - weight)) - 1.0; evaluation = modValueCount / modMaxValueCount; } else { evaluation = 1.0; } } public double getEvaluation() { return evaluation; } public int getCount() { return valueCount; } public String toString() { return "(" + String.valueOf(valueCount) + ") " + String.valueOf(evaluation); } }