Spec-Zone.ru › OpenJDK 17

Класс DataBuffer

java.lang.Object
java.awt.image.DataBuffer
Прямые известные подклассы:
DataBufferByte, DataBufferDouble, DataBufferFloat, DataBufferInt, DataBufferShort, DataBufferUShort
public abstract class DataBuffer extends Object
Этот класс предназначен для обертывания одного или нескольких массивов данных. Каждый массив данных в DataBuffer называется банком. Существуют методы доступа для получения и установки элементов банков DataBuffer с указанием банка и без него. Методы без указания банка используют 0-й банк по умолчанию. DataBuffer может необязательно принимать смещение для каждого банка, так что данные в существующем массиве могут использоваться, даже если интересные данные не начинаются с нулевой позиции массива. Получение или установка 0-го элемента банка использует элемент (0+смещение) массива. Поле size определяет, сколько данных массива доступно для использования. Размер + смещение для данного банка никогда не должно быть больше длины соответствующего массива данных. Тип данных буфера данных указывает тип массива(ов) данных и может также указывать дополнительную семантику, например, хранение беззнаковых 8-битных данных в элементах массива байтов. Тип данных может быть TYPE_UNDEFINED или одним из типов, определенных ниже. В будущем могут быть добавлены другие типы. В общем случае, объект класса DataBuffer будет приведён к одному из его подклассов, специфичных для типа данных, для доступа к методам, специфичным для типа данных, для повышения производительности. В настоящее время API Java 2D(tm) использует DataBuffers типа TYPE_BYTE, TYPE_USHORT, TYPE_INT, TYPE_SHORT, TYPE_FLOAT и TYPE_DOUBLE для хранения данных изображения.
См. также:
  • Raster
  • SampleModel

Краткое описание полей

Модификатор и тип Поле Описание
protected int banks
Количество банков в этом DataBuffer.
protected int dataType
Тип данных этого DataBuffer.
protected int offset
Смещение в первый (по умолчанию) банк от которого берется первый элемент.
protected int[] offsets
Смещения во все банки.
protected int size
Используемый размер всех банков.
static final int TYPE_BYTE
Тег для беззнаковых байтовых данных.
static final int TYPE_DOUBLE
Тег для данных типа double.
static final int TYPE_FLOAT
Тег для данных типа float.
static final int TYPE_INT
Тег для данных типа int.
static final int TYPE_SHORT
Тег для данных типа signed short.
static final int TYPE_UNDEFINED
Тег для неопределённых данных.
static final int TYPE_USHORT
Тег для беззнаковых данных типа short.

Краткое описание конструкторов

DataBuffer(int dataType, int size)
DataBuffer(int dataType, int size, int numBanks)
DataBuffer(int dataType, int size, int numBanks, int offset)
DataBuffer(int dataType, int size, int numBanks, int[] offsets)
Модификатор Конструктор Описание
protected
Создаёт DataBuffer, содержащий один банк заданного типа данных и размера.
protected
Создаёт DataBuffer, содержащий заданное количество банков.
protected
Создаёт DataBuffer, содержащий заданное количество банков.
protected
Создаёт DataBuffer, содержащий заданное количество банков.

Краткое описание методов

Модификатор и тип Метод Описание
int getDataType()
Возвращает тип данных этого DataBuffer.
static int getDataTypeSize(int type)
Возвращает размер (в битах) типа данных, заданного тегом типа данных.
int getElem(int i)
Возвращает запрашиваемый элемент массива данных из первого (по умолчанию) банка в виде целого числа.
abstract int getElem(int bank, int i)
Возвращает запрашиваемый элемент массива данных из указанного банка в виде целого числа.
double getElemDouble(int i)
Возвращает запрашиваемый элемент массива данных из первого (по умолчанию) банка в виде double.
double getElemDouble(int bank, int i)
Возвращает запрашиваемый элемент массива данных из указанного банка в виде double.
float getElemFloat(int i)
Возвращает запрашиваемый элемент массива данных из первого (по умолчанию) банка в виде float.
float getElemFloat(int bank, int i)
Возвращает запрашиваемый элемент массива данных из указанного банка в виде float.
int getNumBanks()
Возвращает количество банков в этом DataBuffer.
int getOffset()
Возвращает смещение первого банка по умолчанию в элементах массива.
int[] getOffsets()
Возвращает смещения (в элементах массива) всех банков.
int getSize()
Возвращает размер (в элементах массива) всех банков.
void setElem(int i, int val)
Устанавливает запрашиваемый элемент массива данных в первом (по умолчанию) банке из данного целого числа.
abstract void setElem(int bank, int i, int val)
Устанавливает запрашиваемый элемент массива данных в указанном банке из данного целого числа.
void setElemDouble(int i, double val)
Устанавливает запрашиваемый элемент массива данных в первом (по умолчанию) банке из данного double.
void setElemDouble(int bank, int i, double val)
Устанавливает запрашиваемый элемент массива данных в указанном банке из данного double.
void setElemFloat(int i, float val)
Устанавливает запрашиваемый элемент массива данных в первом (по умолчанию) банке из данного float.
void setElemFloat(int bank, int i, float val)
Устанавливает запрашиваемый элемент массива данных в указанном банке из данного float.

Методы, унаследованные от класса java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Подробное описание полей

TYPE_BYTE

@Native public static final int TYPE_BYTE
Тег для данных беззнакового байта.
См. также:
  • Значения константных полей

TYPE_USHORT

@Native public static final int TYPE_USHORT
Тег для данных беззнакового короткого целого.
См. также:
  • Значения константных полей

TYPE_SHORT

@Native public static final int TYPE_SHORT
Тег для данных со знаком короткого целого. Заполнитель для будущего использования.
См. также:
  • Значения константных полей

TYPE_INT

@Native public static final int TYPE_INT
Тег для данных типа int.
См. также:
  • Значения константных полей

TYPE_FLOAT

@Native public static final int TYPE_FLOAT
Тег для данных типа float. Заполнитель для будущего использования.
См. также:
  • Значения константных полей

TYPE_DOUBLE

@Native public static final int TYPE_DOUBLE
Тег для данных типа double. Заполнитель для будущего использования.
См. также:
  • Значения константных полей

TYPE_UNDEFINED

@Native public static final int TYPE_UNDEFINED
Тег для неопределённых данных.
См. также:
  • Значения константных полей

dataType

protected int dataType
Тип данных этого DataBuffer.

banks

protected int banks
Количество банков в этом DataBuffer.

offset

protected int offset
Смещение в стандартном (первом) банке, с которого получать первый элемент.

size

protected int size
Используемый размер всех банков.

offsets

protected int[] offsets
Смещения во всех банках.

Подробное описание конструкторов

DataBuffer

protected DataBuffer(int dataType, int size)
Конструирует DataBuffer, содержащий один банк указанного типа данных и размера.
Параметры:
dataType - тип данных этого DataBuffer
size - размер банков

DataBuffer

protected DataBuffer(int dataType, int size, int numBanks)
Конструирует DataBuffer, содержащий указанное количество банков. Каждый банк имеет указанный размер и смещение 0.
Параметры:
dataType - тип данных этого DataBuffer
size - размер банков
numBanks - количество банков в этом DataBuffer

DataBuffer

protected DataBuffer(int dataType, int size, int numBanks, int offset)
Конструирует DataBuffer, содержащий указанное количество банков. Каждый банк имеет указанный тип данных, размер и смещение.
Параметры:
dataType - тип данных этого DataBuffer
size - размер банков
numBanks - количество банков в этом DataBuffer
offset - смещение для каждого банка

DataBuffer

protected DataBuffer(int dataType, int size, int numBanks, int[] offsets)
Конструирует DataBuffer, содержащий указанное количество банков. Каждый банк имеет указанный тип данных и размер. Смещение для каждого банка определяется соответствующим элементом в массиве смещений.
Параметры:
dataType - тип данных этого DataBuffer
size - размер банков
numBanks - количество банков в этом DataBuffer
offsets - массив, содержащий смещение для каждого банка.
Исключения:
ArrayIndexOutOfBoundsException - если numBanks не равно длине offsets

Подробное описание методов

getDataTypeSize

public static int getDataTypeSize(int type)
Возвращает размер (в битах) типа данных, заданного тегом типа данных.
Параметры:
type - значение одного из определённых тегов типа данных
Возвращает:
размер типа данных
Исключения:
IllegalArgumentException - если type меньше нуля или больше TYPE_DOUBLE

getDataType

public int getDataType()
Возвращает тип данных этого DataBuffer.
Возвращает:
тип данных этого DataBuffer.

getSize

public int getSize()
Возвращает размер (в элементах массива) всех банков.
Возвращает:
размер всех банков.

getOffset

public int getOffset()
Возвращает смещение стандартного банка в элементах массива.
Возвращает:
смещение стандартного банка.

getOffsets

public int[] getOffsets()
Возвращает смещения (в элементах массива) всех банков.
Возвращает:
смещения всех банков.

getNumBanks

public int getNumBanks()
Возвращает количество банков в этом DataBuffer.
Возвращает:
количество банков.

getElem

public int getElem(int i)
Возвращает запрашиваемый элемент массива данных из первого (стандартного) банка как целое число.
Параметры:
i - индекс запрашиваемого элемента массива данных
Возвращает:
элемент массива данных по указанному индексу.
См. также:
  • setElem(int, int)
  • setElem(int, int, int)

getElem

public abstract int getElem(int bank, int i)
Возвращает запрашиваемый элемент массива данных из указанного банка как целое число.
Параметры:
bank - указанный банк
i - индекс запрашиваемого элемента массива данных
Возвращает:
элемент массива данных по указанному индексу из указанного банка по указанному индексу.
См. также:
  • setElem(int, int)
  • setElem(int, int, int)

setElem

public void setElem(int i, int val)
Устанавливает запрашиваемый элемент массива данных в первом (стандартном) банке из данного целого числа.
Параметры:
i - указанный индекс в массиве данных
val - данные для установки элемента в массиве данных по указанному индексу
См. также:
  • getElem(int)
  • getElem(int, int)

setElem

public abstract void setElem(int bank, int i, int val)
Устанавливает запрашиваемый элемент массива данных в указанном банке из данного целого числа.
Параметры:
bank - указанный банк
i - указанный индекс в массиве данных
val - данные для установки элемента в указанном банке по указанному индексу в массиве данных
См. также:
  • getElem(int)
  • getElem(int, int)

getElemFloat

public float getElemFloat(int i)
Возвращает запрашиваемый элемент массива данных из первого (стандартного) банка как float. Реализация в этом классе заключается в приведении getElem(i) к float. Подклассы могут переопределить этот метод, если требуется другая реализация.
Параметры:
i - индекс запрашиваемого элемента массива данных
Возвращает:
значение float, представляющее элемент массива данных по указанному индексу.
См. также:
  • setElemFloat(int, float)
  • setElemFloat(int, int, float)

getElemFloat

public float getElemFloat(int bank, int i)
Возвращает запрашиваемый элемент массива данных из указанного банка в виде числа с плавающей запятой. Реализация в этом классе заключается в приведении getElem(int, int) к типу float. Подклассы могут переопределить этот метод, если требуется другая реализация.
Параметры:
bank - указанный банк
i - индекс запрашиваемого элемента массива данных
Возвращает:
значение с плавающей запятой, представляющее элемент массива данных из указанного банка по указанному индексу.
См. также:
  • setElemFloat(int, float)
  • setElemFloat(int, int, float)

setElemFloat

public void setElemFloat(int i, float val)
Устанавливает запрашиваемый элемент массива данных в первом (по умолчанию) банке из данного значения с плавающей запятой. Реализация в этом классе заключается в приведении val к типу int и вызове setElem(int, int). Подклассы могут переопределить этот метод, если требуется другая реализация.
Параметры:
i - указанный индекс
val - значение для установки элемента по указанному индексу в массиве данных
См. также:
  • getElemFloat(int)
  • getElemFloat(int, int)

setElemFloat

public void setElemFloat(int bank, int i, float val)
Устанавливает запрашиваемый элемент массива данных в указанном банке из данного значения с плавающей запятой. Реализация в этом классе заключается в приведении val к типу int и вызове setElem(int, int). Подклассы могут переопределить этот метод, если требуется другая реализация.
Параметры:
bank - указанный банк
i - указанный индекс
val - значение для установки элемента в указанном банке по указанному индексу в массиве данных
См. также:
  • getElemFloat(int)
  • getElemFloat(int, int)

getElemDouble

public double getElemDouble(int i)
Возвращает запрашиваемый элемент массива данных из первого (по умолчанию) банка в виде числа двойной точности. Реализация в этом классе заключается в приведении getElem(int) к типу double. Подклассы могут переопределить этот метод, если требуется другая реализация.
Параметры:
i - указанный индекс
Возвращает:
значение двойной точности, представляющее элемент по указанному индексу в массиве данных.
См. также:
  • setElemDouble(int, double)
  • setElemDouble(int, int, double)

getElemDouble

public double getElemDouble(int bank, int i)
Возвращает запрашиваемый элемент массива данных из указанного банка в виде числа двойной точности. Реализация в этом классе заключается в приведении getElem(bank, i) к типу double. Подклассы могут переопределить этот метод, если требуется другая реализация.
Параметры:
bank - указанный банк
i - указанный индекс
Возвращает:
значение двойной точности, представляющее элемент из указанного банка по указанному индексу в массиве данных.
См. также:
  • setElemDouble(int, double)
  • setElemDouble(int, int, double)

setElemDouble

public void setElemDouble(int i, double val)
Устанавливает запрашиваемый элемент массива данных в первом (по умолчанию) банке из данного значения двойной точности. Реализация в этом классе заключается в приведении val к типу int и вызове setElem(int, int). Подклассы могут переопределить этот метод, если требуется другая реализация.
Параметры:
i - указанный индекс
val - значение для установки элемента по указанному индексу в массиве данных
См. также:
  • getElemDouble(int)
  • getElemDouble(int, int)

setElemDouble

public void setElemDouble(int bank, int i, double val)
Устанавливает запрашиваемый элемент массива данных в указанном банке из данного значения двойной точности. Реализация в этом классе заключается в приведении val к типу int и вызове setElem(int, int). Подклассы могут переопределить этот метод, если требуется другая реализация.
Параметры:
bank - указанный банк
i - указанный индекс
val - значение для установки элемента в указанном банке по указанному индексу массива данных
См. также:
  • getElemDouble(int)
  • getElemDouble(int, int)

© 1993, 2021, 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.
https://docs.oracle.com/en/java/javase/17/docs/api/java.desktop/java/awt/image/DataBuffer.html

Spec-Zone.ru

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