ImageOutputStreamSpipublic abstract class ImageOutputStreamSpi extends IIOServiceProvider The service provider interface (SPI) for
ImageOutputStream s. For more information on service
provider interfaces, see the class comment for the
IIORegistry class.
This interface allows arbitrary objects to be "wrapped" by
instances of ImageOutputStream . For example, a
particular ImageOutputStreamSpi might allow a generic
OutputStream to be used as a destination; another
might output to a File or to a device such as a serial
port.
By treating the creation of ImageOutputStream s as
a pluggable service, it becomes possible to handle future output
destinations without changing the API. Also, high-performance
implementations of ImageOutputStream (for example,
native implementations for a particular platform) can be installed
and used transparently by applications. |
Fields Summary |
---|
protected Class | outputClassA Class object indicating the legal object type
for use by the createInputStreamInstance method. |
Constructors Summary |
---|
protected ImageOutputStreamSpi()Constructs a blank ImageOutputStreamSpi . It is up
to the subclass to initialize instance variables and/or
override method implementations in order to provide working
versions of all methods.
| public ImageOutputStreamSpi(String vendorName, String version, Class outputClass)Constructs an ImageOutputStreamSpi with a given
set of values.
super(vendorName, version);
this.outputClass = outputClass;
|
Methods Summary |
---|
public boolean | canUseCacheFile()Returns true if the ImageOutputStream
implementation associated with this service provider can
optionally make use of a cache File for improved
performance and/or memory footrprint. If false ,
the value of the cacheFile argument to
createOutputStreamInstance will be ignored.
The default implementation returns false .
return false;
| public abstract javax.imageio.stream.ImageOutputStream | createOutputStreamInstance(java.lang.Object output, boolean useCache, java.io.File cacheDir)Returns an instance of the ImageOutputStream
implementation associated with this service provider. If the
use of a cache file is optional, the useCache
parameter will be consulted. Where a cache is required, or
not applicable, the value of useCache will be ignored.
| public javax.imageio.stream.ImageOutputStream | createOutputStreamInstance(java.lang.Object output)Returns an instance of the ImageOutputStream
implementation associated with this service provider. A cache
file will be created in the system-dependent default
temporary-file directory, if needed.
return createOutputStreamInstance(output, true, null);
| public java.lang.Class | getOutputClass()Returns a Class object representing the class or
interface type that must be implemented by an output
destination in order to be "wrapped" in an
ImageOutputStream via the
createOutputStreamInstance method.
Typical return values might include
OutputStream.class or File.class , but
any class may be used.
return outputClass;
| public boolean | needsCacheFile()Returns true if the ImageOutputStream
implementation associated with this service provider requires
the use of a cache File .
The default implementation returns false .
return false;
|
|