Class DataBufferFloat

java.lang.Object
java.awt.image.DataBuffer
java.awt.image.DataBufferFloat

public final classDataBufferFloatextendsDataBuffer
This class extendsDataBuffer and stores data internally infloat form.

Note that some implementations may function more efficiently if they can maintain control over how the data for an image is stored. For example, optimizations such as caching an image in video memory require that the implementation track all modifications to that data. Other implementations may operate better if they can store the data in locations other than a Java array. To maintain optimum compatibility with various optimizations it is best to avoid constructors and methods which expose the underlying storage as a Java array as noted below in the documentation for those methods.

Since:
1.4
  • Field Summary

  • Constructor Summary

    Constructors
    Constructor
    Description
    DataBufferFloat(float[][] dataArray, int size)
    Constructs afloat-basedDataBuffer with the specified data arrays.
    DataBufferFloat(float[][] dataArray, int size, int[] offsets)
    Constructs afloat-basedDataBuffer with the specified data arrays, size, and per-bank offsets.
    DataBufferFloat(float[] dataArray, int size)
    Constructs afloat-basedDataBuffer with the specified data array.
    DataBufferFloat(float[] dataArray, int size, int offset)
    Constructs afloat-basedDataBuffer with the specified data array.
    DataBufferFloat(int size)
    Constructs afloat-basedDataBuffer with a specified size.
    DataBufferFloat(int size, int numBanks)
    Constructs afloat-basedDataBuffer with a specified number of banks, all of which are of a specified size.
  • Method Summary

    Modifier and Type
    Method
    Description
    float[][]
    Returns the data array for all banks.
    float[]
    Returns the default (first)float data array.
    float[]
    getData(int bank)
    Returns the data array for the specified bank.
    int
    getElem(int i)
    Returns the requested data array element from the first (default) bank as anint.
    int
    getElem(int bank, int i)
    Returns the requested data array element from the specified bank as anint.
    double
    Returns the requested data array element from the first (default) bank as adouble.
    double
    getElemDouble(int bank, int i)
    Returns the requested data array element from the specified bank as adouble.
    float
    getElemFloat(int i)
    Returns the requested data array element from the first (default) bank as afloat.
    float
    getElemFloat(int bank, int i)
    Returns the requested data array element from the specified bank as afloat.
    void
    setElem(int i, int val)
    Sets the requested data array element in the first (default) bank to the givenint.
    void
    setElem(int bank, int i, int val)
    Sets the requested data array element in the specified bank to the givenint.
    void
    setElemDouble(int i, double val)
    Sets the requested data array element in the first (default) bank to the givendouble.
    void
    setElemDouble(int bank, int i, double val)
    Sets the requested data array element in the specified bank to the givendouble.
    void
    setElemFloat(int i, float val)
    Sets the requested data array element in the first (default) bank to the givenfloat.
    void
    setElemFloat(int bank, int i, float val)
    Sets the requested data array element in the specified bank to the givenfloat.
  • Constructor Details

    • DataBufferFloat

      public DataBufferFloat(int size)
      Constructs afloat-basedDataBuffer with a specified size.
      Parameters:
      size - The number of elements in the DataBuffer.
    • DataBufferFloat

      public DataBufferFloat(int size, int numBanks)
      Constructs afloat-basedDataBuffer with a specified number of banks, all of which are of a specified size.
      Parameters:
      size - The number of elements in each bank of theDataBuffer.
      numBanks - The number of banks in theDataBuffer.
    • DataBufferFloat

      public DataBufferFloat(float[] dataArray, int size)
      Constructs afloat-basedDataBuffer with the specified data array. Only the firstsize elements are available for use by thisDataBuffer. The array must be large enough to holdsize elements.

      Note thatDataBuffer objects created by this constructor may be incompatible withperformance optimizations used by some implementations (such as caching an associated image in video memory).

      Parameters:
      dataArray - An array offloats to be used as the first and only bank of thisDataBuffer.
      size - The number of elements of the array to be used.
    • DataBufferFloat

      public DataBufferFloat(float[] dataArray, int size, int offset)
      Constructs afloat-basedDataBuffer with the specified data array. Only the elements betweenoffset andoffset + size - 1 are available for use by thisDataBuffer. The array must be large enough to holdoffset + size elements.

      Note thatDataBuffer objects created by this constructor may be incompatible withperformance optimizations used by some implementations (such as caching an associated image in video memory).

      Parameters:
      dataArray - An array offloats to be used as the first and only bank of thisDataBuffer.
      size - The number of elements of the array to be used.
      offset - The offset of the first element of the array that will be used.
    • DataBufferFloat

      public DataBufferFloat(float[][] dataArray, int size)
      Constructs afloat-basedDataBuffer with the specified data arrays. Only the firstsize elements of each array are available for use by thisDataBuffer. The number of banks will be equal todataArray.length.

      Note thatDataBuffer objects created by this constructor may be incompatible withperformance optimizations used by some implementations (such as caching an associated image in video memory).

      Parameters:
      dataArray - An array of arrays offloats to be used as the banks of thisDataBuffer.
      size - The number of elements of each array to be used.
    • DataBufferFloat

      public DataBufferFloat(float[][] dataArray, int size, int[] offsets)
      Constructs afloat-basedDataBuffer with the specified data arrays, size, and per-bank offsets. The number of banks is equal todataArray.length. Each array must be at least as large assize plus the corresponding offset. There must be an entry in the offsets array for each data array.

      Note thatDataBuffer objects created by this constructor may be incompatible withperformance optimizations used by some implementations (such as caching an associated image in video memory).

      Parameters:
      dataArray - An array of arrays offloats to be used as the banks of thisDataBuffer.
      size - The number of elements of each array to be used.
      offsets - An array of integer offsets, one for each bank.
  • Method Details

    • getData

      public float[] getData()
      Returns the default (first)float data array.

      Note that calling this method may cause thisDataBuffer object to be incompatible withperformance optimizations used by some implementations (such as caching an associated image in video memory).

      Returns:
      the first float data array.
    • getData

      public float[] getData(int bank)
      Returns the data array for the specified bank.

      Note that calling this method may cause thisDataBuffer object to be incompatible withperformance optimizations used by some implementations (such as caching an associated image in video memory).

      Parameters:
      bank - the data array
      Returns:
      the data array specified bybank.
    • getBankData

      public float[][] getBankData()
      Returns the data array for all banks.

      Note that calling this method may cause thisDataBuffer object to be incompatible withperformance optimizations used by some implementations (such as caching an associated image in video memory).

      Returns:
      all data arrays for this data buffer.
    • getElem

      public int getElem(int i)
      Returns the requested data array element from the first (default) bank as anint.
      Overrides:
      getElem in class DataBuffer
      Parameters:
      i - The desired data array element.
      Returns:
      The data entry as anint.
      See Also:
    • getElem

      public int getElem(int bank, int i)
      Returns the requested data array element from the specified bank as anint.
      Specified by:
      getElem in class DataBuffer
      Parameters:
      bank - The bank number.
      i - The desired data array element.
      Returns:
      The data entry as anint.
      See Also:
    • setElem

      public void setElem(int i, int val)
      Sets the requested data array element in the first (default) bank to the givenint.
      Overrides:
      setElem in class DataBuffer
      Parameters:
      i - The desired data array element.
      val - The value to be set.
      See Also:
    • setElem

      public void setElem(int bank, int i, int val)
      Sets the requested data array element in the specified bank to the givenint.
      Specified by:
      setElem in class DataBuffer
      Parameters:
      bank - The bank number.
      i - The desired data array element.
      val - The value to be set.
      See Also:
    • getElemFloat

      public float getElemFloat(int i)
      Returns the requested data array element from the first (default) bank as afloat.
      Overrides:
      getElemFloat in class DataBuffer
      Parameters:
      i - The desired data array element.
      Returns:
      The data entry as afloat.
      See Also:
    • getElemFloat

      public float getElemFloat(int bank, int i)
      Returns the requested data array element from the specified bank as afloat.
      Overrides:
      getElemFloat in class DataBuffer
      Parameters:
      bank - The bank number.
      i - The desired data array element.
      Returns:
      The data entry as afloat.
      See Also:
    • setElemFloat

      public void setElemFloat(int i, float val)
      Sets the requested data array element in the first (default) bank to the givenfloat.
      Overrides:
      setElemFloat in class DataBuffer
      Parameters:
      i - The desired data array element.
      val - The value to be set.
      See Also:
    • setElemFloat

      public void setElemFloat(int bank, int i, float val)
      Sets the requested data array element in the specified bank to the givenfloat.
      Overrides:
      setElemFloat in class DataBuffer
      Parameters:
      bank - The bank number.
      i - The desired data array element.
      val - The value to be set.
      See Also:
    • getElemDouble

      public double getElemDouble(int i)
      Returns the requested data array element from the first (default) bank as adouble.
      Overrides:
      getElemDouble in class DataBuffer
      Parameters:
      i - The desired data array element.
      Returns:
      The data entry as adouble.
      See Also:
    • getElemDouble

      public double getElemDouble(int bank, int i)
      Returns the requested data array element from the specified bank as adouble.
      Overrides:
      getElemDouble in class DataBuffer
      Parameters:
      bank - The bank number.
      i - The desired data array element.
      Returns:
      The data entry as adouble.
      See Also:
    • setElemDouble

      public void setElemDouble(int i, double val)
      Sets the requested data array element in the first (default) bank to the givendouble.
      Overrides:
      setElemDouble in class DataBuffer
      Parameters:
      i - The desired data array element.
      val - The value to be set.
      See Also:
    • setElemDouble

      public void setElemDouble(int bank, int i, double val)
      Sets the requested data array element in the specified bank to the givendouble.
      Overrides:
      setElemDouble in class DataBuffer
      Parameters:
      bank - The bank number.
      i - The desired data array element.
      val - The value to be set.
      See Also: