Spec-Zone.ru › OpenJDK 24

Класс 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 являются объектами; доступны удобные методы добавления и установки, принимающие аргументы базового типа и создающие соответствующий подкласс Number (например, Integer или Float). Соответствующие методы получения выполняют приведение типа вниз и возвращают значения базового типа; если сохраненные значения не имеют правильного типа, будет выброшено исключение. Нет способа различить результаты "short s; add(s)" и "add(Short.valueOf(s))".

Обратите внимание, что методы получения и установки работают с ссылками. Поэтому следует быть осторожным, чтобы не делиться ссылками между 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)
Удобный метод для возвращения параметра как байт.
char getCharParameter(int index)
Удобный метод для возвращения параметра как символ.
double getDoubleParameter(int index)
Удобный метод для возвращения параметра как двойное число.
float getFloatParameter(int index)
Удобный метод для возвращения параметра как число с плавающей точкой.
int getIntParameter(int index)
Удобный метод для возвращения параметра как целое число.
long getLongParameter(int index)
Удобный метод для возвращения параметра как длинное целое число.
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)
Удобный метод для возвращения параметра как короткое целое число.
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

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

sources

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

parameters

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

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

ParameterBlock

public ParameterBlock()
Фиктивный конструктор.

ParameterBlock

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

ParameterBlock

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

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

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 - Vector исходных изображений
См. также:
  • 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 - указанный Vector параметров
См. также:
  • getParameters()

removeParameters

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

add

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

add

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

add

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

add

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

add

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

добавить

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

добавить

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

добавить

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

установить

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

установить

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

установить

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

установить

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

установить

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

установить

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

установить

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

установить

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

получитьОбъектныйПараметр

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

получитьБайтовыйПараметр

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

получитьСимвольныйПараметр

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

получитьКороткоеЦелоеПараметр

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

получитьЦелоеПараметр

public int getIntParameter(int index)
Удобный метод для возвращения параметра в виде целого числа. Исключение выбрасывается, если параметр 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

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, 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.
https://download.java.net/java/early_access/jdk24/docs/api/java.desktop/java/awt/image/renderable/ParameterBlock.html

Spec-Zone.ru

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