Spec-Zone.ru › OpenJDK 21

Класс ParameterBlock

java.lang.Object
java.awt.image.renderable.ParameterBlock
Все реализованные интерфейсы:
Serializable, Cloneable
public class ParameterBlock extends Object implements Cloneable, Serializable
Класс ParameterBlock инкапсулирует всю информацию о источниках и параметрах (объектах), необходимых для RenderableImageOp или других классов, обрабатывающих изображения.

Хотя в вектор источников можно поместить произвольные объекты, пользователи этого класса могут наложить семантические ограничения, например, потребовать, чтобы все источники были RenderedImages или RenderableImage. ParameterBlock сам по себе является лишь контейнером и не выполняет никаких проверок типов источников или параметров.

Все параметры в ParameterBlock являются объектами; доступны удобные методы add и set, которые принимают аргументы базового типа и создают соответствующий подкласс Number (такой как Integer или Float). Соответствующие методы get выполняют приведение типов и возвращают значения базового типа; будет брошено исключение, если сохраненные значения не имеют правильного типа. Нет способа отличить результаты "short s; add(s)" и "add(Short.valueOf(s))".

Обратите внимание, что методы get и set работают с ссылками. Поэтому необходимо быть осторожным, чтобы не передавать ссылки между ParameterBlock когда это неуместно. Например, чтобы создать новый ParameterBlock равный старому, за исключением добавленного источника, можно попробовать написать:

 ParameterBlock addSource(ParameterBlock pb, RenderableImage im) {
     ParameterBlock pb1 = new ParameterBlock(pb.getSources());
     pb1.addSource(im);
     return pb1;
 }
 

Этот код приведет к побочному эффекту изменения исходного ParameterBlock, так как операция getSources вернула ссылку на его вектор источников. pb и pb1 делят свой вектор источников, и изменение в любом из них видно для обоих.

Правильный способ написать функцию addSource — это клонировать вектор источников:

 ParameterBlock addSource (ParameterBlock pb, RenderableImage im) {
     ParameterBlock pb1 = new ParameterBlock(pb.getSources().clone());
     pb1.addSource(im);
     return pb1;
 }
 

Метод clone у ParameterBlock определен для выполнения клонирования векторов источников и параметров по этой причине. Стандартный поверхностный клон доступен как shallowClone.

Методы addSource, setSource, add и set определены так, чтобы возвращать 'this' после добавления своего аргумента. Это позволяет использовать синтаксис, подобный:

 ParameterBlock pb = new ParameterBlock();
 op = new RenderableImageOp("operation", pb.add(arg1).add(arg2));
 
См. также:
  • Сериализованная форма

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

Модификатор и тип Поле Описание
protected Vector<Object> parameters
Вектор параметров, не являющихся источниками, хранящихся как произвольные объекты.
protected Vector<Object> sources
Вектор источников, хранящихся как произвольные объекты.

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

Конструктор Описание
ParameterBlock()
Пустой конструктор.
ParameterBlock(Vector<Object> sources)
Создает ParameterBlock с заданным вектором источников.
ParameterBlock(Vector<Object> sources, Vector<Object> parameters)
Создаёт ParameterBlock с заданным вектором источников и вектором параметров.

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

Модификатор и тип Метод Описание
ParameterBlock add(byte b)
Добавляет значение типа Byte в список параметров.
ParameterBlock add(char c)
Добавляет значение типа Character в список параметров.
ParameterBlock add(double d)
Добавляет значение типа Double в список параметров.
ParameterBlock add(float f)
Добавляет значение типа Float в список параметров.
ParameterBlock add(int i)
Добавляет значение типа Integer в список параметров.
ParameterBlock add(long l)
Добавляет значение типа Long в список параметров.
ParameterBlock add(short s)
Добавляет значение типа Short в список параметров.
ParameterBlock add(Object obj)
Добавляет объект в список параметров.
ParameterBlock addSource(Object source)
Добавляет изображение в конец списка источников.
Object clone()
Создает копию ParameterBlock.
byte getByteParameter(int index)
Удобный метод для возвращения параметра как значения типа byte.
char getCharParameter(int index)
Удобный метод для возвращения параметра как значения типа char.
double getDoubleParameter(int index)
Удобный метод для возвращения параметра как значения типа double.
float getFloatParameter(int index)
Удобный метод для возвращения параметра как значения типа float.
int getIntParameter(int index)
Удобный метод для возвращения параметра как значения типа int.
long getLongParameter(int index)
Удобный метод для возвращения параметра как значения типа long.
int getNumParameters()
Возвращает количество параметров (без учёта изображений-источников).
int getNumSources()
Возвращает количество изображений-источников.
Object getObjectParameter(int index)
Возвращает параметр как объект.
Class<?>[] getParamClasses()
Возвращает массив объектов Class, описывающих типы параметров.
Vector<Object> getParameters()
Возвращает весь вектор параметров.
RenderableImage getRenderableSource(int index)
Возвращает источник как RenderableImage.
RenderedImage getRenderedSource(int index)
Возвращает источник как RenderedImage.
short getShortParameter(int index)
Удобный метод для возвращения параметра как значения типа short.
Object getSource(int index)
Возвращает источник как общий объект.
Vector<Object> getSources()
Возвращает весь вектор источников.
void removeParameters()
Очищает список параметров.
void removeSources()
Очищает список изображений-источников.
ParameterBlock set(byte b, int index)
Заменяет объект в списке параметров значением типа Byte.
ParameterBlock set(char c, int index)
Заменяет объект в списке параметров значением типа Character.
ParameterBlock set(double d, int index)
Заменяет объект в списке параметров значением типа Double.
ParameterBlock set(float f, int index)
Заменяет объект в списке параметров значением типа Float.
ParameterBlock set(int i, int index)
Заменяет объект в списке параметров значением типа Integer.
ParameterBlock set(long l, int index)
Заменяет объект в списке параметров значением типа Long.
ParameterBlock set(short s, int index)
Заменяет объект в списке параметров значением типа Short.
ParameterBlock set(Object obj, int index)
Заменяет объект в списке параметров.
void setParameters(Vector<Object> parameters)
Заменяет весь вектор параметров на заданный вектор.
ParameterBlock setSource(Object source, int index)
Заменяет запись в списке источников новым источником.
void setSources(Vector<Object> sources)
Заменяет весь вектор источников на заданный вектор.
Object shallowClone()
Создает поверхностную копию ParameterBlock.

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

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

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

источники

protected Vector<Object> sources
Вектор источников, хранящихся как произвольные объекты.

параметры

protected Vector<Object> parameters
Вектор параметров, не являющихся источниками, хранящихся как произвольные объекты.

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

ParameterBlock

public ParameterBlock()
Конструктор-заглушка.

ParameterBlock

public ParameterBlock(Vector<Object> sources)
Создаёт ParameterBlock с заданным вектором источников.
Параметры:
sources - вектор изображений-источников

ParameterBlock

public ParameterBlock(Vector<Object> sources, Vector<Object> parameters)
Создаёт ParameterBlock с заданным вектором источников и вектором параметров.
Параметры:
sources - вектор изображений-источников
parameters - вектор параметров, используемых в операции рендеринга

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

shallowClone

public Object shallowClone()
Создаёт неглубокую копию ParameterBlock. Векторы источников и параметров копируются по ссылке — изменения в одной копии будут видны и в другой.
Возвращает:
объектную копию ParameterBlock.

clone

public Object clone()
Создаёт копию ParameterBlock. Векторы источников и параметров клонируются, но сами источники и параметры копируются по ссылке. Это позволяет модифицировать порядок и количество источников и параметров в клоне, не затрагивая оригинальный ParameterBlock. Изменения общих источников или параметров всё ещё будут видны.
Переопределяет:
clone в классе Object
Возвращает:
объектную копию ParameterBlock.
См. также:
  • Cloneable

addSource

public ParameterBlock addSource(Object source)
Добавляет изображение в конец списка источников. Изображение хранится как объект, чтобы позволить новые типы узлов в будущем.
Параметры:
source - объект изображения, который будет добавлен в список источников.
Возвращает:
новый ParameterBlock, содержащий указанное source.

getSource

public Object getSource(int index)
Возвращает источник как общий объект. Вызывающий метод должен привести его к соответствующему типу.
Параметры:
index - индекс возвращаемого источника.
Возвращает:
объект Object, представляющий источник, расположенный по указанному индексу в векторе sources Vector.
См. также:
  • setSource(Object, int)

setSource

public ParameterBlock setSource(Object source, int index)
Заменяет элемент в списке источников новым источником. Если индекс выходит за пределы текущего списка источников, список расширяется нулями по мере необходимости.
Параметры:
source - указанное изображение-источник
index - индекс в векторе sources Vector, куда вставляется указанное source
Возвращает:
новый ParameterBlock, содержащий указанный source по указанному index.
См. также:
  • getSource(int)

getRenderedSource

public RenderedImage getRenderedSource(int index)
Возвращает источник как RenderedImage. Этот метод является методом-оберткой. Будет выброшено исключение, если источник не является RenderedImage.
Параметры:
index - индекс возвращаемого источника
Возвращает:
RenderedImage, представляющий изображение-источник по указанному индексу в векторе sources Vector.

getRenderableSource

public RenderableImage getRenderableSource(int index)
Возвращает источник как RenderableImage. Этот метод является методом-оберткой. Будет выброшено исключение, если источник не является RenderableImage.
Параметры:
index - индекс возвращаемого источника
Возвращает:
RenderableImage, представляющий изображение-источник по указанному индексу в векторе sources Vector.

getNumSources

public int getNumSources()
Возвращает количество изображений-источников.
Возвращает:
количество изображений-источников в векторе sources Vector.

getSources

public Vector<Object> getSources()
Возвращает весь вектор источников.
Возвращает:
вектор sources Vector.
См. также:
  • setSources(Vector)

setSources

public void setSources(Vector<Object> sources)
Устанавливает весь вектор источников заданному вектору.
Параметры:
sources - вектор изображений-источников
См. также:
  • getSources()

removeSources

public void removeSources()
Очищает список изображений-источников.

getNumParameters

public int getNumParameters()
Возвращает количество параметров (исключая изображения-источники).
Возвращает:
количество параметров в векторе parameters Vector.

getParameters

public Vector<Object> getParameters()
Возвращает весь вектор параметров.
Возвращает:
вектор parameters Vector.
См. также:
  • setParameters(Vector)

setParameters

public void setParameters(Vector<Object> parameters)
Устанавливает весь вектор параметров заданному вектору.
Параметры:
parameters - указанный вектор параметров
См. также:
  • getParameters()

removeParameters

public void removeParameters()
Очищает список параметров.

add

public ParameterBlock add(Object obj)
Добавляет объект в список параметров.
Параметры:
obj - параметр, который нужно добавить в вектор parameters Vector
Возвращает:
новый ParameterBlock, содержащий указанный параметр.

add

public ParameterBlock add(byte b)
Добавляет Byte в список параметров.
Параметры:
b - байт, который нужно добавить в вектор parameters Vector
Возвращает:
новый ParameterBlock, содержащий указанный параметр.

add

public ParameterBlock add(char c)
Добавляет Character в список параметров.
Параметры:
c - символ, который нужно добавить в вектор parameters Vector
Возвращает:
новый ParameterBlock, содержащий указанный параметр.

add

public ParameterBlock add(short s)
Добавляет Short в список параметров.
Параметры:
s - short, который нужно добавить в вектор parameters Vector
Возвращает:
новый ParameterBlock, содержащий указанный параметр.

add

public ParameterBlock add(int i)
Добавляет Integer в список параметров.
Параметры:
i - целое число, которое нужно добавить в вектор parameters Vector
Возвращает:
новый ParameterBlock, содержащий указанный параметр.

add

public ParameterBlock add(long l)
Добавляет Long в список параметров.
Параметры:
l - длинное целое число, которое нужно добавить в вектор parameters Vector
Возвращает:
новый ParameterBlock, содержащий указанный параметр.

add

public ParameterBlock add(float f)
Добавляет Float в список параметров.
Параметры:
f - число с плавающей точкой, которое нужно добавить в вектор parameters Vector
Возвращает:
новый ParameterBlock, содержащий указанный параметр.

add

public ParameterBlock add(double d)
Добавляет Double в список параметров.
Параметры:
d - число с двойной точностью, которое нужно добавить в вектор parameters Vector
Возвращает:
новый ParameterBlock, содержащий указанный параметр.

set

public ParameterBlock set(Object obj, int index)
Заменяет объект в списке параметров. Если индекс выходит за пределы текущего списка, список расширяется нулями по мере необходимости.
Параметры:
obj - параметр, который заменяет параметр в указанном индексе в parameters Vector
index - индекс параметра, который будет заменён указанным параметром
Возвращает:
новый ParameterBlock содержащий указанный параметр.

set

public ParameterBlock set(byte b, int index)
Заменяет объект в списке параметров на значение типа Byte. Если индекс выходит за пределы текущего списка, список расширяется нулями по мере необходимости.
Параметры:
b - параметр, который заменяет параметр в указанном индексе в parameters Vector
index - индекс параметра, который будет заменён указанным параметром
Возвращает:
новый ParameterBlock содержащий указанный параметр.

set

public ParameterBlock set(char c, int index)
Заменяет объект в списке параметров на значение типа Character. Если индекс выходит за пределы текущего списка, список расширяется нулями по мере необходимости.
Параметры:
c - параметр, который заменяет параметр в указанном индексе в parameters Vector
index - индекс параметра, который будет заменён указанным параметром
Возвращает:
новый ParameterBlock содержащий указанный параметр.

set

public ParameterBlock set(short s, int index)
Заменяет объект в списке параметров на значение типа Short. Если индекс выходит за пределы текущего списка, список расширяется нулями по мере необходимости.
Параметры:
s - параметр, который заменяет параметр в указанном индексе в parameters Vector
index - индекс параметра, который будет заменён указанным параметром
Возвращает:
новый ParameterBlock содержащий указанный параметр.

set

public ParameterBlock set(int i, int index)
Заменяет объект в списке параметров на значение типа Integer. Если индекс выходит за пределы текущего списка, список расширяется нулями по мере необходимости.
Параметры:
i - параметр, который заменяет параметр в указанном индексе в parameters Vector
index - индекс параметра, который будет заменён указанным параметром
Возвращает:
новый ParameterBlock содержащий указанный параметр.

set

public ParameterBlock set(long l, int index)
Заменяет объект в списке параметров на значение типа Long. Если индекс выходит за пределы текущего списка, список расширяется нулями по мере необходимости.
Параметры:
l - параметр, который заменяет параметр в указанном индексе в parameters Vector
index - индекс параметра, который будет заменён указанным параметром
Возвращает:
новый ParameterBlock содержащий указанный параметр.

set

public ParameterBlock set(float f, int index)
Заменяет объект в списке параметров на значение типа Float. Если индекс выходит за пределы текущего списка, список расширяется нулями по мере необходимости.
Параметры:
f - параметр, который заменяет параметр в указанном индексе в parameters Vector
index - индекс параметра, который будет заменён указанным параметром
Возвращает:
новый ParameterBlock содержащий указанный параметр.

set

public ParameterBlock set(double d, int index)
Заменяет объект в списке параметров на значение типа Double. Если индекс выходит за пределы текущего списка, список расширяется нулями по мере необходимости.
Параметры:
d - параметр, который заменяет параметр в указанном индексе в parameters Vector
index - индекс параметра, который будет заменён указанным параметром
Возвращает:
новый ParameterBlock содержащий указанный параметр.

getObjectParameter

public Object getObjectParameter(int index)
Получает параметр как объект.
Параметры:
index - индекс параметра для получения
Возвращает:
объект Object представляющий параметр в указанном индексе в parameters Vector.

getByteParameter

public byte getByteParameter(int index)
Удобный метод для возвращения параметра как значения типа byte. Исключение выбрасывается, если параметр null или не является Byte.
Параметры:
index - индекс параметра, который нужно вернуть.
Возвращает:
параметр в указанном индексе как значение типа byte.
Исключения:
ClassCastException - если параметр в указанном индексе не является Byte
NullPointerException - если параметр в указанном индексе null
ArrayIndexOutOfBoundsException - если index отрицательное или не меньше текущего размера этого объекта ParameterBlock

getCharParameter

public char getCharParameter(int index)
Удобный метод для возвращения параметра как значения типа char. Исключение выбрасывается, если параметр null или не является Character.
Параметры:
index - индекс параметра, который нужно вернуть.
Возвращает:
параметр в указанном индексе как значение типа char.
Исключения:
ClassCastException - если параметр в указанном индексе не является Character
NullPointerException - если параметр в указанном индексе null
ArrayIndexOutOfBoundsException - если index отрицательное или не меньше текущего размера этого объекта ParameterBlock

getShortParameter

public short getShortParameter(int index)
Удобный метод для возвращения параметра как значения типа short. Исключение выбрасывается, если параметр null или не является Short.
Параметры:
index - индекс параметра, который нужно вернуть.
Возвращает:
параметр в указанном индексе как значение типа short.
Исключения:
ClassCastException - если параметр в указанном индексе не является Short
NullPointerException - если параметр в указанном индексе null
ArrayIndexOutOfBoundsException - если index отрицательное или не меньше текущего размера этого объекта ParameterBlock

getIntParameter

public int getIntParameter(int index)
Удобный метод для возвращения параметра как значения типа int. Исключение выбрасывается, если параметр null или не является Integer.
Параметры:
index - индекс параметра, который нужно вернуть.
Возвращает:
параметр в указанном индексе как значение типа int.
Исключения:
ClassCastException - если параметр в указанном индексе не является Integer
NullPointerException - если параметр в указанном индексе null
ArrayIndexOutOfBoundsException - если index отрицательное или не меньше текущего размера этого объекта ParameterBlock

getLongParameter

public long getLongParameter(int index)
Удобный метод для возвращения параметра как значения типа long. Исключение выбрасывается, если параметр null или не является Long.
Параметры:
index - индекс параметра, который нужно вернуть.
Возвращает:
параметр в указанном индексе как значение типа long.
Исключения:
ClassCastException - если параметр в указанном индексе не является Long
NullPointerException - если параметр в указанном индексе null
ArrayIndexOutOfBoundsException - если index отрицательное или не меньше текущего размера этого объекта ParameterBlock

getFloatParameter

public float getFloatParameter(int index)
Удобный метод для возвращения параметра как значения типа float. Исключение выбрасывается, если параметр null или не является Float.
Параметры:
index - индекс параметра, который нужно вернуть.
Возвращает:
параметр в указанном индексе как значение типа float.
Исключения:
ClassCastException - если параметр в указанном индексе не является Float
NullPointerException - если параметр в указанном индексе null
ArrayIndexOutOfBoundsException - если index отрицательное или не меньше текущего размера этого объекта ParameterBlock
END_OF_DOCUMENT_MARKER

getDoubleParameter

public double getDoubleParameter(int index)
Удобный метод для возвращения параметра в виде double. Исключение выбрасывается, если параметр null или не является Double.
Параметры:
index - индекс параметра, который нужно вернуть.
Возвращает:
параметр по указанному индексу в виде double значения.
Исключения:
ClassCastException - если параметр по указанному индексу не является Double
NullPointerException - если параметр по указанному индексу null
ArrayIndexOutOfBoundsException - если index отрицательное или не меньше текущего размера этого ParameterBlock объекта

getParamClasses

public Class<?>[] getParamClasses()
Возвращает массив объектов Class, описывающих типы параметров.
Возвращает:
массив Class объектов.

© 1993, 2023, 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/21/docs/api/java.desktop/java/awt/image/renderable/ParameterBlock.html

Spec-Zone.ru

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