/** Creates a new instance of VariationsTableModel */ public VariationsTableModel() { _rows = VariationsFactory.getVariationQuantity(); int maxAdditionalParams = 0; _parameters.ensureCapacity(_rows); _coefficients.ensureCapacity(_rows); for (int i = 0; i < _rows; i++) { _coefficients.add(Double.valueOf(0)); IVariation tmp = VariationsFactory.getVariation(i, Double.valueOf(0)); int parametersQuantity = tmp.getParametersQuantity(); ArrayList<Double> parameters = new ArrayList<>(parametersQuantity); for (int j = 0; j < parametersQuantity; j++) { parameters.add(Double.valueOf(0)); } _parameters.add(parameters); if (maxAdditionalParams < parametersQuantity) { maxAdditionalParams = parametersQuantity; } } _columns = 2 + maxAdditionalParams; }
/** * Returns IVariation object corresponding to the given row. * * @param row row index * @return Variation object */ public IVariation getVariation(int row) { IVariation temp = VariationsFactory.getVariation(row, _coefficients.get(row)); temp.setCoefficient(_coefficients.get(row)); if (temp.getParametersQuantity() > 0) { ArrayList<Double> parTemp = new ArrayList<>(_parameters.get(row)); temp.setParameters(parTemp); } return temp; }