/*
 * AbstractBinner1D.java
 *
 * This class handles everything, except the errors
 */

package hep.aida.ref.histogram.binner;

import hep.aida.ref.histogram.HistUtils;
import java.io.Serializable;

/**
 *
 * @author  The AIDA team at SLAC
 *
 */
public abstract class AbstractBinner1D implements Binner1D, Serializable{
    
    protected int[] entries;
    protected double[] binCenter;
    protected double[] sumW;
    protected double[] sumWW;
    protected double[] sumXW;
    protected double[] sumXXW;
    
    protected int bins;
    
    /**
     * Creates a new instance of OneDBinner.
     *
     */
    public AbstractBinner1D(int bins) {
        if (bins < 0) throw new IllegalArgumentException("Number of bins cannot be negative!!! "+bins);
        setNumberOfBins(bins);
    }
    
    public AbstractBinner1D(Binner1D binner) {
        if (binner.bins() < 0) throw new IllegalArgumentException("Number of bins cannot be negative!!! "+bins);
        initBinner(binner);
    }
    
    // Service methods
    
    public void initBinner(Binner1D binner) {
        setNumberOfBins(binner.bins());
        int e = 0;
        double h = 0;
        double er = 0;
        double m = 0;
        double w = 0;
        double r = 0;
        for (int i=0; i 

Ads help maintain this website.