|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Object![]()
![]()
![]()
java.awt.image.renderable.ParameterBlock
, Cloneable

public class ParameterBlock

, Serializable

A ParameterBlock encapsulates all the information about sources and
parameters (Objects) required by a RenderableImageOp, or other
classes that process images.
Although it is possible to place arbitrary objects in the
source Vector, users of this class may impose semantic constraints
such as requiring all sources to be RenderedImages or
RenderableImage. ParameterBlock itself is merely a container and
performs no checking on source or parameter types.
All parameters in a ParameterBlock are objects; convenience
add and set methods are available that take arguments of base type and
construct the appropriate subclass of Number (such as
Integer or Float). Corresponding get methods perform a
downward cast and have return values of base type; an exception
will be thrown if the stored values do not have the correct type.
There is no way to distinguish between the results of
"short s; add(s)" and "add(new Short(s))".
Note that the get and set methods operate on references.
Therefore, one must be careful not to share references between
ParameterBlocks when this is inappropriate. For example, to create
a new ParameterBlock that is equal to an old one except for an
added source, one might be tempted to write:
ParameterBlock addSource(ParameterBlock pb, RenderableImage im) {
ParameterBlock pb1 = new ParameterBlock(pb.getSources());
pb1.addSource(im);
return pb1;
}
This code will have the side effect of altering the original
ParameterBlock, since the getSources operation returned a reference
to its source Vector. Both pb and pb1 share their source Vector,
and a change in either is visible to both.
A correct way to write the addSource function is to clone the source Vector:
ParameterBlock addSource (ParameterBlock pb, RenderableImage im) {
ParameterBlock pb1 = new ParameterBlock(pb.getSources().clone());
pb1.addSource(im);
return pb1;
}
The clone method of ParameterBlock has been defined to
perform a clone of both the source and parameter Vectors for
this reason. A standard, shallow clone is available as
shallowClone.
The addSource, setSource, add, and set methods are defined to return 'this' after adding their argument. This allows use of syntax like:
ParameterBlock pb = new ParameterBlock();
op = new RenderableImageOp("operation", pb.add(arg1).add(arg2));
| Field Summary | |
|---|---|
protected Vector |
parameters
A Vector of non-source parameters, stored as arbitrary Objects. |
protected Vector |
sources
A Vector of sources, stored as arbitrary Objects. |
| Constructor Summary | |
|---|---|
ParameterBlock
A dummy constructor. |
|
ParameterBlock
Constructs a ParameterBlock with a given Vector
of sources. |
|
ParameterBlock
Constructs a ParameterBlock with a given Vector of sources and
Vector of parameters. |
|
| Method Summary | |
|---|---|
ParameterBlock |
add
Adds a Byte to the list of parameters. |
ParameterBlock |
add
Adds a Character to the list of parameters. |
ParameterBlock |
add
Adds a Double to the list of parameters. |
ParameterBlock |
add
Adds a Float to the list of parameters. |
ParameterBlock |
add
Adds a Integer to the list of parameters. |
ParameterBlock |
add
Adds a Long to the list of parameters. |
ParameterBlock |
add
Adds an object to the list of parameters. |
ParameterBlock |
add
Adds a Short to the list of parameters. |
ParameterBlock |
addSource
Adds an image to end of the list of sources. |
Object |
clone
Creates a copy of a ParameterBlock. |
byte |
getByteParameter
A convenience method to return a parameter as a byte. |
char |
getCharParameter
A convenience method to return a parameter as a char. |
double |
getDoubleParameter
A convenience method to return a parameter as a double. |
float |
getFloatParameter
A convenience method to return a parameter as a float. |
int |
getIntParameter
A convenience method to return a parameter as an int. |
long |
getLongParameter
A convenience method to return a parameter as a long. |
int |
getNumParameters
Returns the number of parameters (not including source images). |
int |
getNumSources
Returns the number of source images. |
Object |
getObjectParameter
Gets a parameter as an object. |
Class |
getParamClasses
Returns an array of Class objects describing the types of the parameters. |
Vector |
getParameters
Returns the entire Vector of parameters. |
RenderableImage |
getRenderableSource
Returns a source as a RenderableImage. |
RenderedImage |
getRenderedSource
Returns a source as a RenderedImage. |
short |
getShortParameter
A convenience method to return a parameter as a short. |
Object |
getSource
Returns a source as a general Object. |
Vector |
getSources
Returns the entire Vector of sources. |
void |
removeParameters
Clears the list of parameters. |
void |
removeSources
Clears the list of source images. |
ParameterBlock |
set
Replaces an Object in the list of parameters with a Byte. |
ParameterBlock |
set
Replaces an Object in the list of parameters with a Character. |
ParameterBlock |
set
Replaces an Object in the list of parameters with a Double. |
ParameterBlock |
set
Replaces an Object in the list of parameters with a Float. |
ParameterBlock |
set
Replaces an Object in the list of parameters with an Integer. |
ParameterBlock |
set
Replaces an Object in the list of parameters with a Long. |
ParameterBlock |
set
Replaces an Object in the list of parameters. |
ParameterBlock |
set
Replaces an Object in the list of parameters with a Short. |
void |
setParameters
Sets the entire Vector of parameters to a given Vector. |
ParameterBlock |
setSource
Replaces an entry in the list of source with a new source. |
void |
setSources
Sets the entire Vector of sources to a given Vector. |
Object |
shallowClone
Creates a shallow copy of a ParameterBlock. |
Methods inherited from class java.lang.Object ![]() |
|---|
equals |
| Field Detail |
|---|

protected Vector![]()
![]()
<Object
![]()
![]()
> sources

protected Vector![]()
![]()
<Object
![]()
![]()
> parameters
| Constructor Detail |
|---|

public ParameterBlock()

public ParameterBlock(Vector![]()
![]()
<Object
![]()
![]()
> sources)
ParameterBlock with a given Vector
of sources.
sources - a Vector of source images

public ParameterBlock(Vector![]()
![]()
<Object
![]()
![]()
> sources, Vector
![]()
![]()
<Object
![]()
![]()
> parameters)
ParameterBlock with a given Vector of sources and
Vector of parameters.
sources - a Vector of source imagesparameters - a Vector of parameters to be used in the
rendering operation| Method Detail |
|---|

public Object![]()
![]()
shallowClone()
ParameterBlock. The source and
parameter Vectors are copied by reference -- additions or
changes will be visible to both versions.
ParameterBlock.

public Object![]()
![]()
clone()
ParameterBlock. 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 ParameterBlock. Changes to the shared sources or
parameters themselves will still be visible.
clone

in class Object

ParameterBlock.Cloneable


public ParameterBlock![]()
![]()
addSource(Object
![]()
![]()
source)
source - an image object to be stored in the source list.
ParameterBlock containing the specified
source.

public Object![]()
![]()
getSource(int index)
index - the index of the source to be returned.
Object that represents the source located
at the specified index in the sources
Vector.setSource(Object, int)


public ParameterBlock![]()
![]()
setSource(Object
![]()
![]()
source, int index)
source - the specified source imageindex - the index into the sources
Vector at which to
insert the specified source
ParameterBlock that contains the
specified source at the specified
index.getSource(int)


public RenderedImage![]()
![]()
getRenderedSource(int index)
RenderedImage. This method is
a convenience method.
An exception will be thrown if the source is not a RenderedImage.
index - the index of the source to be returned
RenderedImage that represents the source
image that is at the specified index in the
sources Vector.

public RenderableImage![]()
![]()
getRenderableSource(int index)
index - the index of the source to be returned
RenderableImage that represents the source
image that is at the specified index in the
sources Vector.

public int getNumSources()
sources
Vector.

public Vector![]()
![]()
<Object
![]()
![]()
> getSources()
sources Vector.setSources(Vector)

