org.geotools.image.io
Class GeographicImageWriter

java.lang.Object
  extended by javax.imageio.ImageWriter
      extended by org.geotools.image.io.GeographicImageWriter
All Implemented Interfaces:
javax.imageio.ImageTranscoder
Direct Known Subclasses:
StreamImageWriter

public abstract class GeographicImageWriter
extends javax.imageio.ImageWriter

Base class for writers of geographic images.

Since:
2.4
Version:
$Id: GeographicImageWriter.java 31445 2008-09-07 18:14:23Z desruisseaux $
Author:
Martin Desruisseaux (IRD)

Field Summary
 
Fields inherited from class javax.imageio.ImageWriter
availableLocales, locale, originatingProvider, output, progressListeners, warningListeners, warningLocales
 
Constructor Summary
protected GeographicImageWriter(javax.imageio.spi.ImageWriterSpi provider)
          Constructs a GeographicImageWriter.
 
Method Summary
 boolean canWriteRasters()
          Returns true if the methods that take an IIOImage parameter are capable of dealing with a Raster.
protected static ImageDimension computeSize(javax.imageio.IIOImage image, javax.imageio.ImageWriteParam parameters)
          Computes the size of the region to be read, taking subsampling in account.
 javax.imageio.metadata.IIOMetadata convertImageMetadata(javax.imageio.metadata.IIOMetadata inData, javax.imageio.ImageTypeSpecifier imageType, javax.imageio.ImageWriteParam param)
          Returns a metadata object initialized to the specified data for encoding an image of the given type.
 javax.imageio.metadata.IIOMetadata convertStreamMetadata(javax.imageio.metadata.IIOMetadata inData, javax.imageio.ImageWriteParam param)
          Returns a metadata object initialized to the specified data for encoding a stream of images.
protected static javax.media.jai.iterator.RectIter createRectIter(javax.imageio.IIOImage image, javax.imageio.ImageWriteParam parameters)
          Returns an iterator over the pixels of the specified image, taking subsampling in account.
 javax.imageio.metadata.IIOMetadata getDefaultImageMetadata(javax.imageio.ImageTypeSpecifier imageType, javax.imageio.ImageWriteParam param)
          Returns a metadata object containing default values for encoding an image of the given type.
 javax.imageio.metadata.IIOMetadata getDefaultStreamMetadata(javax.imageio.ImageWriteParam param)
          Returns a metadata object containing default values for encoding a stream of images.
protected  void processImageComplete()
          Broadcasts the completion of an image write to all registered listeners.
protected  void processImageStarted()
          Broadcasts the start of an image write to all registered listeners.
protected  void processThumbnailComplete()
          Broadcasts the completion of a thumbnail write to all registered listeners.
protected  void processThumbnailStarted()
          Broadcasts the start of a thumbnail write to all registered listeners.
protected  void processWarningOccurred(java.lang.String warning)
          Broadcasts a warning message to all registered listeners.
protected  void processWarningOccurred(java.lang.String baseName, java.lang.String keyword)
          Broadcasts a warning message to all registered listeners.
 void setOutput(java.lang.Object output)
          Sets the output.
 void warningOccurred(java.util.logging.LogRecord record)
          Invoked when a warning occured.
 
Methods inherited from class javax.imageio.ImageWriter
abort, abortRequested, addIIOWriteProgressListener, addIIOWriteWarningListener, canInsertEmpty, canInsertImage, canRemoveImage, canReplaceImageMetadata, canReplacePixels, canReplaceStreamMetadata, canWriteEmpty, canWriteSequence, clearAbortRequest, dispose, endInsertEmpty, endReplacePixels, endWriteEmpty, endWriteSequence, getAvailableLocales, getDefaultWriteParam, getLocale, getNumThumbnailsSupported, getOriginatingProvider, getOutput, getPreferredThumbnailSizes, prepareInsertEmpty, prepareReplacePixels, prepareWriteEmpty, prepareWriteSequence, processImageProgress, processImageStarted, processThumbnailProgress, processThumbnailStarted, processWarningOccurred, processWarningOccurred, processWriteAborted, removeAllIIOWriteProgressListeners, removeAllIIOWriteWarningListeners, removeIIOWriteProgressListener, removeIIOWriteWarningListener, removeImage, replaceImageMetadata, replacePixels, replacePixels, replaceStreamMetadata, reset, setLocale, write, write, write, writeInsert, writeToSequence
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

GeographicImageWriter

protected GeographicImageWriter(javax.imageio.spi.ImageWriterSpi provider)
Constructs a GeographicImageWriter.

Parameters:
originatingProvider - The ImageWriterSpi that is constructing this object, or null.
Method Detail

setOutput

public void setOutput(java.lang.Object output)
Sets the output.

Overrides:
setOutput in class javax.imageio.ImageWriter

getDefaultStreamMetadata

public javax.imageio.metadata.IIOMetadata getDefaultStreamMetadata(javax.imageio.ImageWriteParam param)
Returns a metadata object containing default values for encoding a stream of images. The default implementation returns null, which is appropriate for writer that do not make use of stream meta-data.

Specified by:
getDefaultStreamMetadata in class javax.imageio.ImageWriter
Parameters:
param - Parameters that will be used to encode the image (in cases where it may affect the structure of the metadata), or null.
Returns:
The metadata, or null.

getDefaultImageMetadata

public javax.imageio.metadata.IIOMetadata getDefaultImageMetadata(javax.imageio.ImageTypeSpecifier imageType,
                                                                  javax.imageio.ImageWriteParam param)
Returns a metadata object containing default values for encoding an image of the given type. The default implementation returns null, which is appropriate for writer that do not make use of image meta-data.

Specified by:
getDefaultImageMetadata in class javax.imageio.ImageWriter
Parameters:
imageType - The format of the image to be written later.
param - Parameters that will be used to encode the image (in cases where it may affect the structure of the metadata), or null.
Returns:
The metadata, or null.

convertStreamMetadata

public javax.imageio.metadata.IIOMetadata convertStreamMetadata(javax.imageio.metadata.IIOMetadata inData,
                                                                javax.imageio.ImageWriteParam param)
Returns a metadata object initialized to the specified data for encoding a stream of images. The default implementation copies the specified data into a default stream metadata.

Specified by:
convertStreamMetadata in interface javax.imageio.ImageTranscoder
Specified by:
convertStreamMetadata in class javax.imageio.ImageWriter
Parameters:
inData - Stream metadata used to initialize the state of the returned object.
param - Parameters that will be used to encode the image (in cases where it may affect the structure of the metadata), or null.
Returns:
The metadata, or null.

convertImageMetadata

public javax.imageio.metadata.IIOMetadata convertImageMetadata(javax.imageio.metadata.IIOMetadata inData,
                                                               javax.imageio.ImageTypeSpecifier imageType,
                                                               javax.imageio.ImageWriteParam param)
Returns a metadata object initialized to the specified data for encoding an image of the given type. The default implementation copies the specified data into a default image metadata.

Specified by:
convertImageMetadata in interface javax.imageio.ImageTranscoder
Specified by:
convertImageMetadata in class javax.imageio.ImageWriter
Parameters:
inData - Image metadata used to initialize the state of the returned object.
imageType - The format of the image to be written later.
param - Parameters that will be used to encode the image (in cases where it may affect the structure of the metadata), or null.
Returns:
The metadata, or null.

canWriteRasters

public boolean canWriteRasters()
Returns true if the methods that take an IIOImage parameter are capable of dealing with a Raster. The default implementation returns true since it is assumed that subclasses will fetch pixels using the iterator returned by createRectIter.

Overrides:
canWriteRasters in class javax.imageio.ImageWriter

createRectIter

protected static javax.media.jai.iterator.RectIter createRectIter(javax.imageio.IIOImage image,
                                                                  javax.imageio.ImageWriteParam parameters)
Returns an iterator over the pixels of the specified image, taking subsampling in account.

Parameters:
image - The image or raster to be written.
parameters - The write parameters, or null if the whole image will be written.
Returns:
An iterator over the pixel values of the image to be written.

computeSize

protected static ImageDimension computeSize(javax.imageio.IIOImage image,
                                            javax.imageio.ImageWriteParam parameters)
Computes the size of the region to be read, taking subsampling in account.

Parameters:
image - The image or raster to be written.
parameters - The write parameters, or null if the whole image will be written.
Returns:
dimension The dimension of the image to be written.

processImageStarted

protected void processImageStarted()
Broadcasts the start of an image write to all registered listeners. The default implementation invokes the super-class method with an image index maintained by this writer.


processImageComplete

protected void processImageComplete()
Broadcasts the completion of an image write to all registered listeners.

Overrides:
processImageComplete in class javax.imageio.ImageWriter

processThumbnailStarted

protected void processThumbnailStarted()
Broadcasts the start of a thumbnail write to all registered listeners. The default implementation invokes the super-class method with an image and thumbnail index maintained by this writer.


processThumbnailComplete

protected void processThumbnailComplete()
Broadcasts the completion of a thumbnail write to all registered listeners.

Overrides:
processThumbnailComplete in class javax.imageio.ImageWriter

processWarningOccurred

protected void processWarningOccurred(java.lang.String warning)
Broadcasts a warning message to all registered listeners. The default implementation invokes the super-class method with an image index maintained by this writer.


processWarningOccurred

protected void processWarningOccurred(java.lang.String baseName,
                                      java.lang.String keyword)
Broadcasts a warning message to all registered listeners. The default implementation invokes the super-class method with an image index maintained by this writer.


warningOccurred

public void warningOccurred(java.util.logging.LogRecord record)
Invoked when a warning occured. The default implementation make the following choice:

Subclasses may override this method if more processing is wanted, or for throwing exception if some warnings should be considered as fatal errors.



Copyright © 1996-2010 Geotools. All Rights Reserved.