|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Object
|
+--java.awt.image.renderable.ParameterBlock
|
+--javax.media.jai.ParameterBlockJAI
A convenience subclass of ParameterBlock that
allows the use of default parameter values and getting/setting
sources and parameters by name. A ParameterBlockJAI is
constructed using either an OperationDescriptor,
or an operation name (that will be looked up in the appropriate
default OperationRegistry) and a mode which should
be in OperationDescriptor.getSupportedModes() (such
as rendered, renderable, collection or renderableCollection). If
the mode is not specified ParameterBlockJAI will by
default work with the first mode in the array of Strings
returned by OperationDescriptor.getSupportedModes().
Once constructed, a ParameterBlockJAI appears to
have no sources. It contains all the parameters required by its
OperationDescriptor for a specified mode, each having
its default value as given by the OperationDescriptor.
Such a ParameterBlockJAI may not yet be usable, its
sources (if any) are not set, and some or all of its parameters may
have inapproriate values. The addSource methods of
ParameterBlock may be used to initialize the source values,
and the set(value, index) methods may be used to modify
new parameter values. The preferred way of setting parameter values
is the setParameter(name, value) described below. The
add() methods should not be used since the parameter
list is already long enough to hold all of the parameters required by
the OperationDescriptor.
Additionally, ParameterBlockJAI offers
setParameter(name, value) methods that take a
parameter name; the index of the parameter is determined from the
OperationDescriptor and the corresponding parameter
is set. (users are strongly recommended to use this method
instead of the equivalent set(value, index) or
the deprecated set(value, name) methods). As in
ParameterBlock, all parameters are stored internally
as subclasses of Object and all get/set methods that take or return
values of primitive types are simply convenience methods that transform
values between the primitive types and their corresponding wrapper classes
subclasses.
The OperationDescriptor that is used to initialize
a ParameterBlockJAI at construction is not
serializable and thus cannot be serialized using the default
serialization mechanism. The operation name is serialized instead and
included in the serialized ParameterBlockJAI stream.
During de-serialization, the operation name is de-serialized and then
looked up in the default OperationRegistry available at
the time of de-serialization. If no OperationDescriptor
has been registered with this OperationRegistry
under the given operation name, a NotSerializableException will
be thrown. The serialization of ParameterBlockJAI
works correctly only if the OperationDescriptor
registered for the operation name in question is identical to the
OperationDescriptor that was registered with the
OperationRegistry available at serialization time.
All parameter names are treated in a case-insensitive but retentive manner.
Warning: Serialized objects of this class will not be compatible with future releases. The current serialization support is appropriate for short term storage or RMI between applications running the same version of JAI. A future release of JAI will provide support for long term persistence.
| Fields inherited from class java.awt.image.renderable.ParameterBlock |
parameters,
sources |
| Constructor Summary | |
ParameterBlockJAI(OperationDescriptor odesc)
Constructs a ParameterBlockJAI for
use with an operation described by a particular
OperationDescriptor. |
|
ParameterBlockJAI(OperationDescriptor odesc,
String modeName)
Constructs a ParameterBlockJAI for
use with an operation described by a particular
OperationDescriptor and a registry mode. |
|
ParameterBlockJAI(String operationName)
Constructs a ParameterBlockJAI for a particular
operation by name. |
|
ParameterBlockJAI(String operationName,
String modeName)
Constructs a ParameterBlockJAI for a
particular operation by name and a registry mode. |
|
| Method Summary | |
ParameterBlock |
add(Object obj)
Adds an object to the list of parameters. |
Object |
clone()
Creates a copy of a ParameterBlockJAI. |
boolean |
getBooleanParameter(String paramName)
A convenience method to return a parameter as a boolean. |
byte |
getByteParameter(String paramName)
A convenience method to return a parameter as a byte. |
char |
getCharParameter(String paramName)
A convenience method to return a parameter as a char. |
double |
getDoubleParameter(String paramName)
A convenience method to return a parameter as a double. |
float |
getFloatParameter(String paramName)
A convenience method to return a parameter as a float. |
int |
getIntParameter(String paramName)
A convenience method to return a parameter as an int. |
long |
getLongParameter(String paramName)
A convenience method to return a parameter as a long. |
String |
getMode()
Get the operation mode used to determine parameter names, classes and default values. |
Object |
getObjectParameter(String paramName)
Gets a named parameter as an Object. |
OperationDescriptor |
getOperationDescriptor()
Returns the OperationDescriptor associated with this
ParameterBlockJAI. |
Class[] |
getParamClasses()
Returns an array of Class objects describing the types
of the parameters. |
ParameterListDescriptor |
getParameterListDescriptor()
Returns the ParameterListDescriptor that provides
descriptions of the parameters associated with the operator
and mode. |
short |
getShortParameter(String paramName)
A convenience method to return a parameter as an short. |
int |
indexOf(String paramName)
Deprecated. as of JAI 1.1 - use "indexOfParam" instead. |
int |
indexOfParam(String paramName)
Returns the zero-relative index of a named parameter within the list of parameters. |
int |
indexOfSource(String sourceName)
Returns the zero-relative index of a named source within the list of sources. |
ParameterBlock |
set(byte b,
String paramName)
Deprecated. as of JAI 1.1 - use setParameter instead. |
ParameterBlock |
set(char c,
String paramName)
Deprecated. as of JAI 1.1 - use setParameter instead. |
ParameterBlock |
set(double d,
String paramName)
Deprecated. as of JAI 1.1 - use setParameter instead. |
ParameterBlock |
set(float f,
String paramName)
Deprecated. as of JAI 1.1 - use setParameter instead. |
ParameterBlock |
set(int i,
String paramName)
Deprecated. as of JAI 1.1 - use setParameter instead. |
ParameterBlock |
set(long l,
String paramName)
Deprecated. as of JAI 1.1 - use setParameter instead. |
ParameterBlock |
set(Object obj,
int index)
Replaces an Object in the list of parameters. |
ParameterBlock |
set(Object obj,
String paramName)
Deprecated. as of JAI 1.1 - use setParameter instead. |
ParameterBlock |
set(short s,
String paramName)
Deprecated. as of JAI 1.1 - use setParameter instead. |
ParameterList |
setParameter(String paramName,
boolean b)
Sets a named parameter to a boolean value. |
ParameterList |
setParameter(String paramName,
byte b)
Sets a named parameter to a byte value. |
ParameterList |
setParameter(String paramName,
char c)
Sets a named parameter to a char value. |
ParameterList |
setParameter(String paramName,
double d)
Sets a named parameter to a double value. |
ParameterList |
setParameter(String paramName,
float f)
Sets a named parameter to a float value. |
ParameterList |
setParameter(String paramName,
int i)
Sets a named parameter to an int value. |
ParameterList |
setParameter(String paramName,
long l)
Sets a named parameter to a long value. |
ParameterList |
setParameter(String paramName,
Object obj)
Sets a named parameter to an Object value. |
ParameterList |
setParameter(String paramName,
short s)
Sets a named parameter to a short value. |
void |
setParameters(Vector parameters)
Sets the entire Vector of parameters to a given
Vector. |
ParameterBlockJAI |
setSource(String sourceName,
Object source)
Sets a named source to a given Object value. |
| Methods inherited from class java.awt.image.renderable.ParameterBlock |
add,
add,
add,
add,
add,
add,
add,
addSource,
getByteParameter,
getCharParameter,
getDoubleParameter,
getFloatParameter,
getIntParameter,
getLongParameter,
getNumParameters,
getNumSources,
getObjectParameter,
getParameters,
getRenderableSource,
getRenderedSource,
getShortParameter,
getSource,
getSources,
removeParameters,
removeSources,
set,
set,
set,
set,
set,
set,
set,
setSource,
setSources,
shallowClone |
| Methods inherited from class java.lang.Object |
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
| Constructor Detail |
public ParameterBlockJAI(OperationDescriptor odesc)
ParameterBlockJAI for
use with an operation described by a particular
OperationDescriptor. It uses the first
mode in the array of Strings returned by
OperationDescriptor.getSupportedModes()
to get the ParameterListDescriptor from
OperationDescriptor. The default values of the
parameters are filled in.odesc - the OperationDescriptor describing the parameters
to be managed.public ParameterBlockJAI(String operationName)
ParameterBlockJAI for a particular
operation by name. The OperationRegistry associated
with the default instance of the JAI class is used
to locate the OperationDescriptor associated with
the operation name.
It uses the first mode in the array of Strings
returned by OperationDescriptor.getSupportedModes()
to get the ParameterListDescriptor from
OperationDescriptor. The default values of the
parameters are filled in.operationName - a String giving the name of the operation.
public ParameterBlockJAI(OperationDescriptor odesc,
String modeName)
ParameterBlockJAI for
use with an operation described by a particular
OperationDescriptor and a registry mode. The default
values of the parameters are filled in.odesc - the OperationDescriptor describing the parameters
to be managed.modeName - the operation mode whose paramters are to be managed.
public ParameterBlockJAI(String operationName,
String modeName)
ParameterBlockJAI for a
particular operation by name and a registry mode. The
OperationRegistry associated with the default
instance of the JAI class is used to locate the
OperationDescriptor associated with the operation
name. The default values of the parameters are filled in.operationName - a String giving the name of the
operation.modeName - the operation mode whose paramters are to be managed.| Method Detail |
public int indexOfSource(String sourceName)
sourceName - a String containing the parameter name.public int indexOfParam(String paramName)
paramName - a String containing the parameter name.public OperationDescriptor getOperationDescriptor()
OperationDescriptor associated with this
ParameterBlockJAI.public ParameterListDescriptor getParameterListDescriptor()
ParameterListDescriptor that provides
descriptions of the parameters associated with the operator
and mode.public String getMode()
public ParameterBlockJAI setSource(String sourceName,
Object source)
Object value.sourceName - a String naming a source.source - an Object value for the source.source is null.sourceName is null.source is not
an instance of (any of) the
expected class(es).public Class[] getParamClasses()
Class objects describing the types
of the parameters. This is a more efficient implementation than that
of the superclass as the parameter classes are known a priori.public Object getObjectParameter(String paramName)
int, will be returned as a
member of the corresponding Number subclass, such as
Integer.paramName - the name of the parameter to be returned.public byte getByteParameter(String paramName)
byte. An
exception will be thrown if the parameter is of a different
type.paramName - the name of the parameter to be returned.public boolean getBooleanParameter(String paramName)
boolean. An
exception will be thrown if the parameter is of a different
type.paramName - the name of the parameter to be returned.public char getCharParameter(String paramName)
char. An
exception will be thrown if the parameter is of a different
type.paramName - the name of the parameter to be returned.public short getShortParameter(String paramName)
short. An
exception will be thrown if the parameter is of a different
type.paramName - the name of the parameter to be returned.public int getIntParameter(String paramName)
int. An
exception will be thrown if the parameter is of a different
type.paramName - the name of the parameter to be returned.public long getLongParameter(String paramName)
long. An
exception will be thrown if the parameter is of a different
type.paramName - the name of the parameter to be returned.public float getFloatParameter(String paramName)
float. An
exception will be thrown if the parameter is of a different
type.paramName - the name of the parameter to be returned.public double getDoubleParameter(String paramName)
double. An
exception will be thrown if the parameter is of a different
type.paramName - the name of the parameter to be returned.
public ParameterList setParameter(String paramName,
byte b)
byte value.
Checks are made to verify that the parameter is of the right
Class type and that the value is valid.paramName - a String naming a parameter.b - a byte value for the parameter.Byte
public ParameterList setParameter(String paramName,
boolean b)
boolean value.
Checks are made to verify that the parameter is of the right
Class type and that the value is valid.paramName - a String naming a parameter.b - a boolean value for the parameter.Boolean
public ParameterList setParameter(String paramName,
char c)
char value.
Checks are made to verify that the parameter is of the right
Class type and that the value is valid.paramName - a String naming a parameter.c - a char value for the parameter.Character
public ParameterList setParameter(String paramName,
short s)
short value.
Checks are made to verify that the parameter is of the right
Class type and that the value is valid.paramName - a String naming a parameter.s - a short value for the parameter.Short
public ParameterList setParameter(String paramName,
int i)
int value.
Checks are made to verify that the parameter is of the right
Class type and that the value is valid.paramName - a String naming a parameter.i - an int value for the parameter.Integer
public ParameterList setParameter(String paramName,
long l)
long value.
Checks are made to verify that the parameter is of the right
Class type and that the value is valid.paramName - a String naming a parameter.l - a long value for the parameter.Long
public ParameterList setParameter(String paramName,
float f)
float value.
Checks are made to verify that the parameter is of the right
Class type and that the value is valid.paramName - a String naming a parameter.f - a float value for the parameter.Float
public ParameterList setParameter(String paramName,
double d)
double value.
Checks are made to verify that the parameter is of the right
Class type and that the value is valid.paramName - a String naming a parameter.d - a double value for the parameter.Double
public ParameterList setParameter(String paramName,
Object obj)
Object value. The value
may be null, an instance of the class expected for this
parameter, or a DeferredData instance the
getDataClass() method of which returns the
expected class. If the object is a DeferredData instance,
then its wrapped data value is checked for validity if and only if
its isValid() method returns true. If the
object is not a DeferredData instance, then it is
always checked for validity.paramName - a String naming a parameter.obj - an Object value for the parameter.public ParameterBlock add(Object obj)
IllegalStateException
because the ParameterBlockJAI constructor initializes
all parameters with their default values.
public ParameterBlock set(Object obj,
int index)
obj - The new value of the parameter.index - The zero-relative index of the parameter.index
is negative or not less than the number of parameters
expected for the associated operation.obj is
non-null and not an instance of the class
expected for the indicated parameter or if obj
is an invalid value for the indicated parameter.public void setParameters(Vector parameters)
Vector of parameters to a given
Vector. The Vector is saved by reference.Vector does not equal the number of parameters
of the associated operation.null,
non-DeferredData value is not an instance of
the class expected for the indicated parameter or if
obj is an invalid value for the indicated
parameter.null,
DeferredData value does not wrap an instance of
the class expected for the indicated parameter or if it is
valid but its wrapped value is invalid for the indicated
parameter.public int indexOf(String paramName)
paramName - a String containing the parameter name.indexOfParam(java.lang.String)
public ParameterBlock set(byte b,
String paramName)
setParameter instead.
byte value.paramName - a String naming a parameter.b - a byte value for the parameter.setParameter(String, byte)
public ParameterBlock set(char c,
String paramName)
setParameter instead.
char value.paramName - a String naming a parameter.c - a char value for the parameter.setParameter(String, char)
public ParameterBlock set(short s,
String paramName)
setParameter instead.
paramName - a String naming a parameter.s - a short value for the parameter.setParameter(String, short)
public ParameterBlock set(int i,
String paramName)
setParameter instead.
int value.paramName - a String naming a parameter.i - an int value for the parameter.setParameter(String, int)
public ParameterBlock set(long l,
String paramName)
setParameter instead.
long value.paramName - a String naming a parameter.l - a long value for the parameter.setParameter(String, long)
public ParameterBlock set(float f,
String paramName)
setParameter instead.
float value.paramName - a String naming a parameter.f - a float value for the parameter.setParameter(String, float)
public ParameterBlock set(double d,
String paramName)
setParameter instead.
double value.paramName - a String naming a parameter.d - a double value for the parameter.setParameter(String, double)
public ParameterBlock set(Object obj,
String paramName)
setParameter instead.
paramName - a String naming a parameter.obj - an Object value for the parameter.setParameter(String, Object)public Object clone()
ParameterBlockJAI. The source
and parameter Vectors are cloned, but the actual sources and
parameters are copied by reference. This allows modifications to
the order and number of sources and parameters in the clone to be
invisible to the original ParameterBlockJAI. Changes
to the shared sources or parameters themselves will still be
visible.ParameterBlockJAI.
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||