Spec-Zone.ru › OpenJDK 27

Class DataBufferDouble

java.lang.Object
java.awt.image.DataBuffer
java.awt.image.DataBufferDouble
public final class DataBufferDouble extends DataBuffer
This class extends DataBuffer and stores data internally in double 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

Fields declared in class DataBuffer

banks, dataType, offset, offsets, size, TYPE_BYTE, TYPE_DOUBLE, TYPE_FLOAT, TYPE_INT, TYPE_SHORT, TYPE_UNDEFINED, TYPE_USHORT
Modifier and Type Field Description
protected int banks
The number of banks in this DataBuffer.
protected int dataType
The data type of this DataBuffer.
protected int offset
Offset into default (first) bank from which to get the first element.
protected int[] offsets
Offsets into all banks.
protected int size
Usable size of all banks.
static final int TYPE_BYTE
Tag for unsigned byte data.
static final int TYPE_DOUBLE
Tag for double data.
static final int TYPE_FLOAT
Tag for float data.
static final int TYPE_INT
Tag for int data.
static final int TYPE_SHORT
Tag for signed short data.
static final int TYPE_UNDEFINED
Tag for undefined data.
static final int TYPE_USHORT
Tag for unsigned short data.

Constructor Summary

Constructor Description
DataBufferDouble(double[][] dataArray, int size)
Constructs a double-based DataBuffer with the specified data arrays.
DataBufferDouble(double[][] dataArray, int size, int[] offsets)
Constructs a double-based DataBuffer with the specified data arrays, size, and per-bank offsets.
DataBufferDouble(double[] dataArray, int size)
Constructs a double-based DataBuffer with the specified data array.
DataBufferDouble(double[] dataArray, int size, int offset)
Constructs a double-based DataBuffer with the specified data array.
DataBufferDouble(int size)
Constructs a double-based DataBuffer with a specified size.
DataBufferDouble(int size, int numBanks)
Constructs a double-based DataBuffer with a specified number of banks, all of which are of a specified size.

Method Summary

Modifier and Type Method Description
double[][] getBankData()
Returns the data array for all banks.
double[] getData()
Returns the default (first) double data array.
double[] 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 an int.
int getElem(int bank, int i)
Returns the requested data array element from the specified bank as an int.
double getElemDouble(int i)
Returns the requested data array element from the first (default) bank as a double.
double getElemDouble(int bank, int i)
Returns the requested data array element from the specified bank as a double.
float getElemFloat(int i)
Returns the requested data array element from the first (default) bank as a float.
float getElemFloat(int bank, int i)
Returns the requested data array element from the specified bank as a float.
void setElem(int i, int val)
Sets the requested data array element in the first (default) bank to the given int.
void setElem(int bank, int i, int val)
Sets the requested data array element in the specified bank to the given int.
void setElemDouble(int i, double val)
Sets the requested data array element in the first (default) bank to the given double.
void setElemDouble(int bank, int i, double val)
Sets the requested data array element in the specified bank to the given double.
void setElemFloat(int i, float val)
Sets the requested data array element in the first (default) bank to the given float.
void setElemFloat(int bank, int i, float val)
Sets the requested data array element in the specified bank to the given float.

Methods declared in class DataBuffer

getDataType, getDataTypeSize, getNumBanks, getOffset, getOffsets, getSize
Modifier and Type Method Description
int getDataType()
Returns the data type of this DataBuffer.
static int getDataTypeSize(int type)
Returns the size (in bits) of the data type, given a datatype tag.
int getNumBanks()
Returns the number of banks in this DataBuffer.
int getOffset()
Returns the offset of the default bank in array elements.
int[] getOffsets()
Returns the offsets (in array elements) of all the banks.
int getSize()
Returns the size (in array elements) of all banks.

Methods declared in class Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Modifier and Type Method Description
protected Object clone()
Creates and returns a copy of this object.
boolean equals(Object obj)
Indicates whether some other object is "equal to" this one.
protected void finalize()
Deprecated, for removal: This API element is subject to removal in a future version.
Finalization is deprecated and subject to removal in a future release.
final Class<?> getClass()
Returns the runtime class of this Object.
int hashCode()
Returns a hash code value for this object.
final void notify()
Wakes up a single thread that is waiting on this object's monitor.
final void notifyAll()
Wakes up all threads that are waiting on this object's monitor.
String toString()
Returns a string representation of the object.
final void wait()
Causes the current thread to wait until it is awakened, typically by being notified or interrupted.
final void wait(long timeoutMillis)
Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
final void wait(long timeoutMillis, int nanos)
Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

Constructor Details

DataBufferDouble

public DataBufferDouble(int size)
Constructs a double-based DataBuffer with a specified size.
Parameters:
size - The number of elements in the DataBuffer.
Throws:
IllegalArgumentException - if size is less than or equal to zero.

DataBufferDouble

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.
Parameters:
size - The number of elements in each bank of the DataBuffer.
numBanks - The number of banks in the DataBuffer.
Throws:
IllegalArgumentException - if size or numBanks is less than or equal to zero.

DataBufferDouble

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.

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

Parameters:
dataArray - An array of doubles to be used as the first and only bank of this DataBuffer.
size - The number of elements of the array to be used.
Throws:
NullPointerException - if dataArray is null.
IllegalArgumentException - if size is less than or equal to zero, or is greater than the length of dataArray.

DataBufferDouble

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.

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

Parameters:
dataArray - An array of doubles to be used as the first and only bank of this DataBuffer.
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.
Throws:
NullPointerException - if dataArray is null.
IllegalArgumentException - if size is less than or equal to zero, or offset is less than zero, or (offset + size) is greater than the length of dataArray.

DataBufferDouble

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.

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

Parameters:
dataArray - An array of arrays of doubles to be used as the banks of this DataBuffer.
size - The number of elements of each array to be used.
Throws:
NullPointerException - if dataArray is null.
IllegalArgumentException - if size is less than or equal to zero.
IllegalArgumentException - if dataArray does not have at least one bank.
NullPointerException - if any bank of dataArray is null.
IllegalArgumentException - if the length of any bank of dataArray is less than size.

DataBufferDouble

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.

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

Parameters:
dataArray - An array of arrays of doubles to be used as the banks of this DataBuffer.
size - The number of elements of each array to be used.
offsets - An array of integer offsets, one for each bank.
Throws:
IllegalArgumentException - if size is less than or equal to zero.
NullPointerException - if dataArray is null.
NullPointerException - if any bank of dataArray is null.
IllegalArgumentException - if dataArray does not have at least one bank.
NullPointerException - if offsets is null.
IllegalArgumentException - if any element of offsets is less than zero.
ArrayIndexOutOfBoundsException - if the lengths of dataArray and offsets differ.
IllegalArgumentException - if the length of any bank of dataArray is less than (size + offsets[bankIndex]).

Method Details

getData

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

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

Returns:
the first double data array.

getData

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

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

Parameters:
bank - the data array
Returns:
the data array specified by bank.
Throws:
ArrayIndexOutOfBoundsException - if bank is not a valid bank index.

getBankData

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

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

Returns:
all data arrays from this data buffer.

getElem

public int getElem(int i)
Returns the requested data array element from the first (default) bank as an int.
Overrides:
getElem in class DataBuffer
Parameters:
i - The desired data array element.
Returns:
The data entry as an int.
Throws:
ArrayIndexOutOfBoundsException - if (i + getOffset()) is not a valid index.
See Also:
  • setElem(int, int)
  • setElem(int, int, int)

getElem

public int getElem(int bank, int i)
Returns the requested data array element from the specified bank as an int.
Specified by:
getElem in class DataBuffer
Parameters:
bank - The bank number.
i - The desired data array element.
Returns:
The data entry as an int.
Throws:
ArrayIndexOutOfBoundsException - if bank is not a valid bank index, or (i + getOffsets()[bank]) is not a valid index into the bank.
See Also:
  • setElem(int, int)
  • setElem(int, int, int)

setElem

public void setElem(int i, int val)
Sets the requested data array element in the first (default) bank to the given int.
Overrides:
setElem in class DataBuffer
Parameters:
i - The desired data array element.
val - The value to be set.
Throws:
ArrayIndexOutOfBoundsException - if (i + getOffset()) is not a valid index.
See Also:
  • getElem(int)
  • getElem(int, int)

setElem

public void setElem(int bank, int i, int val)
Sets the requested data array element in the specified bank to the given int.
Specified by:
setElem in class DataBuffer
Parameters:
bank - The bank number.
i - The desired data array element.
val - The value to be set.
Throws:
ArrayIndexOutOfBoundsException - if bank is not a valid bank index, or (i + getOffsets()[bank]) is not a valid index into the bank.
See Also:
  • getElem(int)
  • getElem(int, int)

getElemFloat

public float getElemFloat(int i)
Returns the requested data array element from the first (default) bank as a float.
Overrides:
getElemFloat in class DataBuffer
Parameters:
i - The desired data array element.
Returns:
The data entry as a float.
Throws:
ArrayIndexOutOfBoundsException - if (i + getOffset()) is not a valid index.
See Also:
  • setElemFloat(int, float)
  • setElemFloat(int, int, float)

getElemFloat

public float getElemFloat(int bank, int i)
Returns the requested data array element from the specified bank as a float.
Overrides:
getElemFloat in class DataBuffer
Parameters:
bank - The bank number.
i - The desired data array element.
Returns:
The data entry as a float.
Throws:
ArrayIndexOutOfBoundsException - if bank is not a valid bank index, or (i + getOffsets()[bank]) is not a valid index into the bank.
See Also:
  • setElemFloat(int, float)
  • setElemFloat(int, int, float)

setElemFloat

public void setElemFloat(int i, float val)
Sets the requested data array element in the first (default) bank to the given float.
Overrides:
setElemFloat in class DataBuffer
Parameters:
i - The desired data array element.
val - The value to be set.
Throws:
ArrayIndexOutOfBoundsException - if (i + getOffset()) is not a valid index.
See Also:
  • getElemFloat(int)
  • getElemFloat(int, int)

setElemFloat

public void setElemFloat(int bank, int i, float val)
Sets the requested data array element in the specified bank to the given float.
Overrides:
setElemFloat in class DataBuffer
Parameters:
bank - The bank number.
i - The desired data array element.
val - The value to be set.
Throws:
ArrayIndexOutOfBoundsException - if bank is not a valid bank index, or (i + getOffsets()[bank]) is not a valid index into the bank.
See Also:
  • getElemFloat(int)
  • getElemFloat(int, int)

getElemDouble

public double getElemDouble(int i)
Returns the requested data array element from the first (default) bank as a double.
Overrides:
getElemDouble in class DataBuffer
Parameters:
i - The desired data array element.
Returns:
The data entry as a double.
Throws:
ArrayIndexOutOfBoundsException - if (i + getOffset()) is not a valid index.
See Also:
  • setElemDouble(int, double)
  • setElemDouble(int, int, double)

getElemDouble

public double getElemDouble(int bank, int i)
Returns the requested data array element from the specified bank as a double.
Overrides:
getElemDouble in class DataBuffer
Parameters:
bank - The bank number.
i - The desired data array element.
Returns:
The data entry as a double.
Throws:
ArrayIndexOutOfBoundsException - if bank is not a valid bank index, or (i + getOffsets()[bank]) is not a valid index into the bank.
See Also:
  • setElemDouble(int, double)
  • setElemDouble(int, int, double)

setElemDouble

public void setElemDouble(int i, double val)
Sets the requested data array element in the first (default) bank to the given double.
Overrides:
setElemDouble in class DataBuffer
Parameters:
i - The desired data array element.
val - The value to be set.
Throws:
ArrayIndexOutOfBoundsException - if (i + getOffset()) is not a valid index.
See Also:
  • getElemDouble(int)
  • getElemDouble(int, int)

setElemDouble

public void setElemDouble(int bank, int i, double val)
Sets the requested data array element in the specified bank to the given double.
Overrides:
setElemDouble in class DataBuffer
Parameters:
bank - The bank number.
i - The desired data array element.
val - The value to be set.
Throws:
ArrayIndexOutOfBoundsException - if bank is not a valid bank index, or (i + getOffsets()[bank]) is not a valid index into the bank.
See Also:
  • getElemDouble(int)
  • getElemDouble(int, int)

Report a bug or suggest an enhancement
For further API reference and developer documentation see the Java SE Documentation, which contains more detailed, developer-targeted descriptions with conceptual overviews, definitions of terms, workarounds, and working code examples. Other versions.
Java is a trademark or registered trademark of Oracle and/or its affiliates in the US and other countries.
Copyright © 1993, 2026, Oracle and/or its affiliates, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
All rights reserved. Use is subject to license terms and the documentation redistribution policy.

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API