package net.sf.jasperreports.engine.fill; class JRDoubleAverageIncrementer extends JRAbstractExtendedIncrementer { private static JRDoubleAverageIncrementer mainInstance = new JRDoubleAverageIncrementer(); public static JRDoubleAverageIncrementer getInstance() { return mainInstance; } public Object increment(JRCalculable variable, Object expressionValue, AbstractValueProvider valueProvider) { if (expressionValue == null) { if (variable.isInitialized()) return null; return variable.getValue(); } Number countValue = (Number)valueProvider.getValue(variable.getHelperVariable((byte)0)); Number sumValue = (Number)valueProvider.getValue(variable.getHelperVariable((byte)1)); return new Double(sumValue.doubleValue() / countValue.doubleValue()); } public Object initialValue() { return JRDoubleIncrementerFactory.ZERO; } }