Spec-Zone.ru › OpenJDK 8

Класс 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(new Short(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(Object obj)

Добавляет объект в список параметров.

ParameterBlock add(short s)

Добавляет значение типа Short в список параметров.

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(Object obj, int index)

Заменяет объект в списке параметров.

ParameterBlock set(short s, int index)

Заменяет объект в списке параметров значением типа Short.

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, содержащий указанный параметр.

add

public ParameterBlock add(long l)

Добавляет длинное целое число в список параметров.

Параметры:
l — длинное целое число, которое нужно добавить в parameters Vector
Возвращает:
новый ParameterBlock, содержащий указанный параметр.

add

public ParameterBlock add(float f)

Добавляет число с плавающей точкой в список параметров.

Параметры:
f — число с плавающей точкой, которое нужно добавить в parameters Vector
Возвращает:
новый ParameterBlock, содержащий указанный параметр.

add

public ParameterBlock add(double d)

Добавляет число с двойной точностью в список параметров.

Параметры:
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)

Заменяет объект в списке параметров байтом. Если индекс выходит за пределы текущего списка источников, список расширяется нулями по мере необходимости.

Параметры:
b — параметр, который заменяет параметр по указанному индексу в parameters Vector
index — индекс параметра, который нужно заменить указанным параметром
Возвращает:
новый ParameterBlock, содержащий указанный параметр.

set

public ParameterBlock set(char c,
                          int index)

Заменяет объект в списке параметров символом. Если индекс выходит за пределы текущего списка источников, список расширяется нулями по мере необходимости.

Параметры:
c — параметр, который заменяет параметр по указанному индексу в parameters Vector
index — индекс параметра, который нужно заменить указанным параметром
Возвращает:
новый ParameterBlock, содержащий указанный параметр.

set

public ParameterBlock set(short s,
                          int index)

Заменяет Объект в списке параметров на Short. Если индекс выходит за пределы текущего списка источников, список расширяется нулями по мере необходимости.

Parameters:
s - параметр, который заменяет параметр в указанном индексе в parameters Vector
index - индекс параметра, который нужно заменить указанным параметром
Returns:
новый ParameterBlock, содержащий указанный параметр.

set

public ParameterBlock set(int i,
                          int index)

Заменяет Объект в списке параметров на Integer. Если индекс выходит за пределы текущего списка источников, список расширяется нулями по мере необходимости.

Parameters:
i - параметр, который заменяет параметр в указанном индексе в parameters Vector
index - индекс параметра, который нужно заменить указанным параметром
Returns:
новый ParameterBlock, содержащий указанный параметр.

set

public ParameterBlock set(long l,
                          int index)

Заменяет Объект в списке параметров на Long. Если индекс выходит за пределы текущего списка источников, список расширяется нулями по мере необходимости.

Parameters:
l - параметр, который заменяет параметр в указанном индексе в parameters Vector
index - индекс параметра, который нужно заменить указанным параметром
Returns:
новый ParameterBlock, содержащий указанный параметр.

set

public ParameterBlock set(float f,
                          int index)

Заменяет Объект в списке параметров на Float. Если индекс выходит за пределы текущего списка источников, список расширяется нулями по мере необходимости.

Parameters:
f - параметр, который заменяет параметр в указанном индексе в parameters Vector
index - индекс параметра, который нужно заменить указанным параметром
Returns:
новый ParameterBlock, содержащий указанный параметр.

set

public ParameterBlock set(double d,
                          int index)

Заменяет Объект в списке параметров на Double. Если индекс выходит за пределы текущего списка источников, список расширяется нулями по мере необходимости.

Parameters:
d - параметр, который заменяет параметр в указанном индексе в parameters Vector
index - индекс параметра, который нужно заменить указанным параметром
Returns:
новый ParameterBlock, содержащий указанный параметр.

getObjectParameter

public Object getObjectParameter(int index)

Получает параметр как объект.

Parameters:
index - индекс параметра для получения
Returns:
Объект, представляющий параметр по указанному индексу в parameters Vector.

getByteParameter

public byte getByteParameter(int index)

Удобный метод для возвращения параметра как байта. Исключение генерируется, если параметр null или не является Byte.

Parameters:
index - индекс параметра, который нужно вернуть.
Returns:
параметр по указанному индексу как значение byte.
Throws:
ClassCastException - если параметр по указанному индексу не является Byte
NullPointerException - если параметр по указанному индексу null
ArrayIndexOutOfBoundsException - если index отрицательно или не меньше текущего размера этого объекта ParameterBlock

getCharParameter

public char getCharParameter(int index)

Удобный метод для возвращения параметра как символа. Исключение генерируется, если параметр null или не является Character.

Parameters:
index - индекс параметра, который нужно вернуть.
Returns:
параметр по указанному индексу как значение char.
Throws:
ClassCastException - если параметр по указанному индексу не является Character
NullPointerException - если параметр по указанному индексу null
ArrayIndexOutOfBoundsException - если index отрицательно или не меньше текущего размера этого объекта ParameterBlock

getShortParameter

public short getShortParameter(int index)

Удобный метод для возвращения параметра как короткого целого. Исключение генерируется, если параметр null или не является Short.

Parameters:
index - индекс параметра, который нужно вернуть.
Returns:
параметр по указанному индексу как значение short.
Throws:
ClassCastException - если параметр по указанному индексу не является Short
NullPointerException - если параметр по указанному индексу null
ArrayIndexOutOfBoundsException - если index отрицательно или не меньше текущего размера этого объекта ParameterBlock

getIntParameter

public int getIntParameter(int index)

Удобный метод для возвращения параметра как целого числа. Исключение генерируется, если параметр null или не является Integer.

Parameters:
index - индекс параметра, который нужно вернуть.
Returns:
параметр по указанному индексу как значение int.
Throws:
ClassCastException - если параметр по указанному индексу не является Integer
NullPointerException - если параметр по указанному индексу null
ArrayIndexOutOfBoundsException - если index отрицательно или не меньше текущего размера этого объекта ParameterBlock

getLongParameter

public long getLongParameter(int index)

Удобный метод для возвращения параметра как длинного целого. Исключение генерируется, если параметр null или не является Long.

Parameters:
index - индекс параметра, который нужно вернуть.
Returns:
параметр по указанному индексу как значение long.
Throws:
ClassCastException - если параметр по указанному индексу не является Long
NullPointerException - если параметр по указанному индексу null
ArrayIndexOutOfBoundsException - если index отрицательно или не меньше текущего размера этого объекта ParameterBlock

getFloatParameter

public float getFloatParameter(int index)

Удобный метод для возвращения параметра как числа с плавающей точкой. Исключение генерируется, если параметр null или не является Float.

Parameters:
index - индекс параметра, который нужно вернуть.
Returns:
параметр по указанному индексу как значение float.
Throws:
ClassCastException - если параметр по указанному индексу не является Float
NullPointerException - если параметр по указанному индексу null
ArrayIndexOutOfBoundsException - если index отрицательно или не меньше текущего размера этого объекта ParameterBlock

getDoubleParameter

public double getDoubleParameter(int index)

Удобный метод для возвращения параметра как двойного числа с плавающей точкой. Исключение генерируется, если параметр null или не является Double.

Parameters:
index - индекс параметра, который нужно вернуть.
Returns:
параметр по указанному индексу как значение double.
Throws:
ClassCastException - если параметр по указанному индексу не является Double
NullPointerException - если параметр по указанному индексу null
ArrayIndexOutOfBoundsException - если index отрицательно или не меньше текущего размера этого объекта ParameterBlock

getParamClasses

public Class[] getParamClasses()

Возвращает массив объектов Class, описывающих типы параметров.

Returns:
массив объектов Class.

© 1993, 2020, 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