it.geosolutions.jaiext.nullop
Class NullOpImage

java.lang.Object
  extended by javax.media.jai.PlanarImage
      extended by javax.media.jai.OpImage
          extended by it.geosolutions.jaiext.nullop.NullOpImage
All Implemented Interfaces:
RenderedImage, javax.media.jai.ImageJAI, javax.media.jai.PropertyChangeEmitter, javax.media.jai.PropertySource, javax.media.jai.WritablePropertySource

public class NullOpImage
extends javax.media.jai.OpImage

AnOpImage subclass that simply transmits its source unchanged. This may be useful when an interface requires an OpImage but another sort of RenderedImage (such as a BufferedImage or TiledImage) is available. Additionally, NullOpImage is able to make use of JAI's tile caching mechanisms.

Methods that get or set properties are implemented to forward the requests to the source image; no independent property information is stored in the NullOpImage itself.

See Also:
PointOpImage

Field Summary
 
Fields inherited from class javax.media.jai.OpImage
cache, cobbleSources, OP_COMPUTE_BOUND, OP_IO_BOUND, OP_NETWORK_BOUND, tileCacheMetric, tileRecycler
 
Fields inherited from class javax.media.jai.PlanarImage
colorModel, eventManager, height, minX, minY, properties, sampleModel, tileFactory, tileGridXOffset, tileGridYOffset, tileHeight, tileWidth, width
 
Constructor Summary
NullOpImage(RenderedImage source, javax.media.jai.ImageLayout layout, Map configuration)
          Constructs a NullOpImage.
 
Method Summary
 boolean computesUniqueTiles()
          Returns false as NullOpImage can return via computeTile() tiles that are internally cached.
 Raster computeTile(int tileX, int tileY)
          Returns a tile for reading.
protected  Hashtable getProperties()
          Returns the properties from the source image.
 Object getProperty(String name)
          Retrieves a property from the source image by name or java.awt.Image.UndefinedProperty if the property with the specified name is not defined.
 Class getPropertyClass(String name)
          Returns the class of the specified property from the source image.
 String[] getPropertyNames()
          Returns the property names from the source image or null if no property names are recognized.
 String[] getPropertyNames(String prefix)
          Returns the property names with the supplied prefix from the source image or null if no property names are recognized.
 Rectangle mapDestRect(Rectangle destRect, int sourceIndex)
           
 Rectangle mapSourceRect(Rectangle sourceRect, int sourceIndex)
           
 void removeProperty(String name)
          Removes a property from the source image by name.
protected  void setProperties(Hashtable properties)
          Set the properties Hashtable of the source image to the supplied Hashtable.
 void setProperty(String name, Object value)
          Sets a property on the source image by name.
 
Methods inherited from class javax.media.jai.OpImage
addTileToCache, cancelTiles, computeRect, computeRect, createTile, dispose, getExpandedNumBands, getFormatTags, getOperationComputeType, getTile, getTileCache, getTileCacheMetric, getTileDependencies, getTileFromCache, getTileRecycler, getTiles, hasExtender, mapDestPoint, mapSourcePoint, prefetchTiles, queueTiles, recycleTile, setTileCache, vectorize, vectorize, vectorize
 
Methods inherited from class javax.media.jai.PlanarImage
addPropertyChangeListener, addPropertyChangeListener, addSink, addSink, addSource, addTileComputationListener, copyData, copyData, copyExtendedData, createColorModel, createSnapshot, createWritableRaster, finalize, getAsBufferedImage, getAsBufferedImage, getBounds, getColorModel, getData, getData, getDefaultColorModel, getExtendedData, getGraphics, getHeight, getImageID, getMaxTileX, getMaxTileY, getMaxX, getMaxY, getMinTileX, getMinTileY, getMinX, getMinY, getNumBands, getNumSources, getNumXTiles, getNumYTiles, getSampleModel, getSinks, getSource, getSourceImage, getSourceObject, getSources, getSplits, getTileComputationListeners, getTileFactory, getTileGridXOffset, getTileGridYOffset, getTileHeight, getTileIndices, getTileRect, getTiles, getTileWidth, getWidth, overlapsMultipleTiles, removePropertyChangeListener, removePropertyChangeListener, removeSink, removeSink, removeSinks, removeSource, removeSources, removeTileComputationListener, setImageLayout, setSource, setSources, tileXToX, tileXToX, tileYToY, tileYToY, toString, wrapRenderedImage, XToTileX, XToTileX, YToTileY, YToTileY
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

NullOpImage

public NullOpImage(RenderedImage source,
                   javax.media.jai.ImageLayout layout,
                   Map configuration)
Constructs a NullOpImage. The superclass constructor will be passed a new ImageLayout object with all of its fields filled in.

Parameters:
layout - An ImageLayout optionally specifying the image ColorModel; all other fields are ignored. This parameter may be null.
source - A RenderedImage; must not be null or a IllegalArgumentException will be thrown.
configuration - Configurable attributes of the image including configuration variables indexed by RenderingHints.Keys and image properties indexed by Strings or CaselessStringKeys. This is simply forwarded to the superclass constructor.
Throws:
IllegalArgumentException - if source is null.
IllegalArgumentException - if computeType is not one of the known OP_*_BOUND values.
Method Detail

computeTile

public Raster computeTile(int tileX,
                          int tileY)
Returns a tile for reading.

Overrides:
computeTile in class javax.media.jai.OpImage
Parameters:
tileX - The X index of the tile.
tileY - The Y index of the tile.
Returns:
The tile as a Raster.

computesUniqueTiles

public boolean computesUniqueTiles()
Returns false as NullOpImage can return via computeTile() tiles that are internally cached.

Overrides:
computesUniqueTiles in class javax.media.jai.OpImage

getProperties

protected Hashtable getProperties()
Returns the properties from the source image.

Overrides:
getProperties in class javax.media.jai.PlanarImage

setProperties

protected void setProperties(Hashtable properties)
Set the properties Hashtable of the source image to the supplied Hashtable.

Overrides:
setProperties in class javax.media.jai.PlanarImage

getPropertyNames

public String[] getPropertyNames()
Returns the property names from the source image or null if no property names are recognized.

Specified by:
getPropertyNames in interface RenderedImage
Specified by:
getPropertyNames in interface javax.media.jai.PropertySource
Overrides:
getPropertyNames in class javax.media.jai.PlanarImage

getPropertyNames

public String[] getPropertyNames(String prefix)
Returns the property names with the supplied prefix from the source image or null if no property names are recognized.

Specified by:
getPropertyNames in interface javax.media.jai.PropertySource
Overrides:
getPropertyNames in class javax.media.jai.PlanarImage

getPropertyClass

public Class getPropertyClass(String name)
Returns the class of the specified property from the source image.

Specified by:
getPropertyClass in interface javax.media.jai.PropertySource
Overrides:
getPropertyClass in class javax.media.jai.PlanarImage

getProperty

public Object getProperty(String name)
Retrieves a property from the source image by name or java.awt.Image.UndefinedProperty if the property with the specified name is not defined.

Specified by:
getProperty in interface RenderedImage
Specified by:
getProperty in interface javax.media.jai.PropertySource
Overrides:
getProperty in class javax.media.jai.PlanarImage

setProperty

public void setProperty(String name,
                        Object value)
Sets a property on the source image by name.

Specified by:
setProperty in interface javax.media.jai.WritablePropertySource
Overrides:
setProperty in class javax.media.jai.PlanarImage

removeProperty

public void removeProperty(String name)
Removes a property from the source image by name.

Specified by:
removeProperty in interface javax.media.jai.WritablePropertySource
Overrides:
removeProperty in class javax.media.jai.PlanarImage

mapDestRect

public Rectangle mapDestRect(Rectangle destRect,
                             int sourceIndex)
Specified by:
mapDestRect in class javax.media.jai.OpImage

mapSourceRect

public Rectangle mapSourceRect(Rectangle sourceRect,
                               int sourceIndex)
Specified by:
mapSourceRect in class javax.media.jai.OpImage


Copyright © 2006–2015 GeoSolutions. All rights reserved.