FileDocCategorySizeDatePackage
DataBufferDouble.javaAPI DocJava SE 5 API10499Fri Aug 26 14:56:54 BST 2005java.awt.image

DataBufferDouble

public final class DataBufferDouble extends DataBuffer
This class extends DataBuffer and stores data internally in double form.
see
DataBuffer
since
1.4

Fields Summary
double[]
bankdata
The array of data banks.
double[]
data
A reference to the default data bank.
Constructors Summary
public DataBufferDouble(int size)
Constructs a double-based DataBuffer with a specified size.

param
size The number of elements in the DataBuffer.

        super(TYPE_DOUBLE, size);
        data = new double[size];
        bankdata = new double[1][];
        bankdata[0] = data;
    
public DataBufferDouble(int size, int numBanks)
Constructs a double-based DataBuffer with a specified number of banks, all of which are of a specified size.

param
size The number of elements in each bank of the DataBuffer.
param
numBanks The number of banks in the DataBuffer.

        super(TYPE_DOUBLE, size, numBanks);
        bankdata = new double[numBanks][];
        for (int i= 0; i < numBanks; i++) {
            bankdata[i] = new double[size];
        }
        data = bankdata[0];
    
public DataBufferDouble(double[] dataArray, int size)
Constructs a double-based DataBuffer with the specified data array. Only the first size elements are available for use by this DataBuffer. The array must be large enough to hold size elements.

param
dataArray An array of doubles to be used as the first and only bank of this DataBuffer.
param
size The number of elements of the array to be used.

        super(TYPE_DOUBLE, size);
        data = dataArray;
        bankdata = new double[1][];
        bankdata[0] = data;
    
public DataBufferDouble(double[] dataArray, int size, int offset)
Constructs a double-based DataBuffer with the specified data array. Only the elements between offset and offset + size - 1 are available for use by this DataBuffer. The array must be large enough to hold offset + size elements.

param
dataArray An array of doubles to be used as the first and only bank of this DataBuffer.
param
size The number of elements of the array to be used.
param
offset The offset of the first element of the array that will be used.

        super(TYPE_DOUBLE, size, 1, offset);
        data = dataArray;
        bankdata = new double[1][];
        bankdata[0] = data;
    
public DataBufferDouble(double[] dataArray, int size)
Constructs a double-based DataBuffer with the specified data arrays. Only the first size elements of each array are available for use by this DataBuffer. The number of banks will be equal to dataArray.length.

param
dataArray An array of arrays of doubles to be used as the banks of this DataBuffer.
param
size The number of elements of each array to be used.

        super(TYPE_DOUBLE, size, dataArray.length);
        bankdata = (double[][]) dataArray.clone();
        data = bankdata[0];
    
public DataBufferDouble(double[] dataArray, int size, int[] offsets)
Constructs a double-based DataBuffer with the specified data arrays, size, and per-bank offsets. The number of banks is equal to dataArray.length. Each array must be at least as large as size plus the corresponding offset. There must be an entry in the offsets array for each data array.

param
dataArray An array of arrays of doubles to be used as the banks of this DataBuffer.
param
size The number of elements of each array to be used.
param
offsets An array of integer offsets, one for each bank.

        super(TYPE_DOUBLE, size, dataArray.length, offsets);
        bankdata = (double[][]) dataArray.clone();
        data = bankdata[0];
    
Methods Summary
public double[][]getBankData()
Returns the data array for all banks.

return
all data arrays from this data buffer.

        return (double[][]) bankdata.clone();
    
public double[]getData()
Returns the default (first) double data array.

return
the first double data array.

        return data;
    
public double[]getData(int bank)
Returns the data array for the specified bank.

param
bank the data array
return
the data array specified by bank.

        return bankdata[bank];
    
public intgetElem(int i)
Returns the requested data array element from the first (default) bank as an int.

param
i The desired data array element.
return
The data entry as an int.
see
#setElem(int, int)
see
#setElem(int, int, int)

        return (int)(data[i+offset]);
    
public intgetElem(int bank, int i)
Returns the requested data array element from the specified bank as an int.

param
bank The bank number.
param
i The desired data array element.
return
The data entry as an int.
see
#setElem(int, int)
see
#setElem(int, int, int)

        return (int)(bankdata[bank][i+offsets[bank]]);
    
public doublegetElemDouble(int i)
Returns the requested data array element from the first (default) bank as a double.

param
i The desired data array element.
return
The data entry as a double.
see
#setElemDouble(int, double)
see
#setElemDouble(int, int, double)

        return data[i+offset];
    
public doublegetElemDouble(int bank, int i)
Returns the requested data array element from the specified bank as a double.

param
bank The bank number.
param
i The desired data array element.
return
The data entry as a double.
see
#setElemDouble(int, double)
see
#setElemDouble(int, int, double)

        return bankdata[bank][i+offsets[bank]];
    
public floatgetElemFloat(int i)
Returns the requested data array element from the first (default) bank as a float.

param
i The desired data array element.
return
The data entry as a float.
see
#setElemFloat(int, float)
see
#setElemFloat(int, int, float)

        return (float)data[i+offset];
    
public floatgetElemFloat(int bank, int i)
Returns the requested data array element from the specified bank as a float.

param
bank The bank number.
param
i The desired data array element.
return
The data entry as a float.
see
#setElemFloat(int, float)
see
#setElemFloat(int, int, float)

        return (float)bankdata[bank][i+offsets[bank]];
    
public voidsetElem(int i, int val)
Sets the requested data array element in the first (default) bank to the given int.

param
i The desired data array element.
param
val The value to be set.
see
#getElem(int)
see
#getElem(int, int)

        data[i+offset] = (double)val;
    
public voidsetElem(int bank, int i, int val)
Sets the requested data array element in the specified bank to the given int.

param
bank The bank number.
param
i The desired data array element.
param
val The value to be set.
see
#getElem(int)
see
#getElem(int, int)

        bankdata[bank][i+offsets[bank]] = (double)val;
    
public voidsetElemDouble(int i, double val)
Sets the requested data array element in the first (default) bank to the given double.

param
i The desired data array element.
param
val The value to be set.
see
#getElemDouble(int)
see
#getElemDouble(int, int)

        data[i+offset] = val;
    
public voidsetElemDouble(int bank, int i, double val)
Sets the requested data array element in the specified bank to the given double.

param
bank The bank number.
param
i The desired data array element.
param
val The value to be set.
see
#getElemDouble(int)
see
#getElemDouble(int, int)

        bankdata[bank][i+offsets[bank]] = val;
    
public voidsetElemFloat(int i, float val)
Sets the requested data array element in the first (default) bank to the given float.

param
i The desired data array element.
param
val The value to be set.
see
#getElemFloat(int)
see
#getElemFloat(int, int)

        data[i+offset] = (double)val;
    
public voidsetElemFloat(int bank, int i, float val)
Sets the requested data array element in the specified bank to the given float.

param
bank The bank number.
param
i The desired data array element.
param
val The value to be set.
see
#getElemFloat(int)
see
#getElemFloat(int, int)

        bankdata[bank][i+offsets[bank]] = (double)val;