Package org.geotools.gce.grassraster
Class GrassBinaryImageReader
- Object
-
- ImageReader
-
- GrassBinaryImageReader
-
public class GrassBinaryImageReader extends ImageReader
ImageIO reader for the grass binary raster format.The reader extends imageio's
ImageReader
to support the reading of GRASS raster data.- Since:
- 3.0
- Author:
- Andrea Antonello (www.hydrologis.com)
- See Also:
ImageReader
,GrassBinaryRasterReadHandler
,GrassBinaryImageMetadata
-
-
Field Summary
Fields Modifier and Type Field Description ColorModel
ccmdl
theColorModel
to be used for the read raster.-
Fields inherited from class ImageReader
availableLocales, ignoreMetadata, input, locale, minIndex, originatingProvider, progressListeners, seekForwardOnly, updateListeners, warningListeners, warningLocales
-
-
Constructor Summary
Constructors Constructor Description GrassBinaryImageReader(GrassBinaryImageReaderSpi originatingProvider)
constructs anImageReader
able to read grass raster maps.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
abort()
Request to abort any current read operation.protected boolean
abortRequested()
Checks if a request to abort the current read operation has been made.void
dispose()
Cleans thisGrassBinaryImageReader
up.int
getHeight(int imageIndex)
IIOMetadata
getImageMetadata(int imageIndex)
Iterator<ImageTypeSpecifier>
getImageTypes(int imageIndex)
int
getNumImages(boolean allowSearch)
GrassBinaryRasterReadHandler
getRasterReader()
A simple method which returns the properGrassBinaryRasterReadHandler
used to perform reading operationsIIOMetadata
getStreamMetadata()
int
getWidth(int imageIndex)
BufferedImage
read(int imageIndex)
BufferedImage
read(int imageIndex, ImageReadParam param)
BufferedImage
read(int imageIndex, ImageReadParam param, boolean useSubSamplingAsRequestedRowcols, boolean castDoubleToFloating, ProgressListener monitor)
Performs the read method adding the possibility to override subsampling.Raster
readRaster(int imageIndex, ImageReadParam param)
void
reset()
Resets thisGrassBinaryImageReader
.void
setCastDoubleToFloating(boolean castDoubleToFloating)
void
setInput(Object input, boolean seekForwardOnly, boolean ignoreMetadata)
This method set the input only if the input object is a File.void
setMonitor(ProgressListener monitor)
void
setUseSubSamplingAsRequestedRowcols(boolean useSubSamplingAsRequestedRowcols)
-
Methods inherited from class ImageReader
addIIOReadProgressListener, addIIOReadUpdateListener, addIIOReadWarningListener, canReadRaster, checkReadParamBandSettings, clearAbortRequest, computeRegions, getAspectRatio, getAvailableLocales, getDefaultReadParam, getDestination, getFormatName, getImageMetadata, getInput, getLocale, getMinIndex, getNumThumbnails, getOriginatingProvider, getRawImageType, getSourceRegion, getStreamMetadata, getThumbnailHeight, getThumbnailWidth, getTileGridXOffset, getTileGridYOffset, getTileHeight, getTileWidth, hasThumbnails, isIgnoringMetadata, isImageTiled, isRandomAccessEasy, isSeekForwardOnly, processImageComplete, processImageProgress, processImageStarted, processImageUpdate, processPassComplete, processPassStarted, processReadAborted, processSequenceComplete, processSequenceStarted, processThumbnailComplete, processThumbnailPassComplete, processThumbnailPassStarted, processThumbnailProgress, processThumbnailStarted, processThumbnailUpdate, processWarningOccurred, processWarningOccurred, readAll, readAll, readAsRenderedImage, readerSupportsThumbnails, readThumbnail, readTile, readTileRaster, removeAllIIOReadProgressListeners, removeAllIIOReadUpdateListeners, removeAllIIOReadWarningListeners, removeIIOReadProgressListener, removeIIOReadUpdateListener, removeIIOReadWarningListener, setInput, setInput, setLocale
-
-
-
-
Field Detail
-
ccmdl
public ColorModel ccmdl
theColorModel
to be used for the read raster.
-
-
Constructor Detail
-
GrassBinaryImageReader
public GrassBinaryImageReader(GrassBinaryImageReaderSpi originatingProvider)
constructs anImageReader
able to read grass raster maps.- Parameters:
originatingProvider
- the service provider interface for the reader.
-
-
Method Detail
-
setInput
public void setInput(Object input, boolean seekForwardOnly, boolean ignoreMetadata)
This method set the input only if the input object is a File.- Overrides:
setInput
in classImageReader
-
setUseSubSamplingAsRequestedRowcols
public void setUseSubSamplingAsRequestedRowcols(boolean useSubSamplingAsRequestedRowcols)
-
setCastDoubleToFloating
public void setCastDoubleToFloating(boolean castDoubleToFloating)
-
getHeight
public int getHeight(int imageIndex) throws IOException
- Specified by:
getHeight
in classImageReader
- Throws:
IOException
-
getWidth
public int getWidth(int imageIndex) throws IOException
- Specified by:
getWidth
in classImageReader
- Throws:
IOException
-
getNumImages
public int getNumImages(boolean allowSearch) throws IOException
- Specified by:
getNumImages
in classImageReader
- Throws:
IOException
-
getImageTypes
public Iterator<ImageTypeSpecifier> getImageTypes(int imageIndex) throws IOException
- Specified by:
getImageTypes
in classImageReader
- Throws:
IOException
-
getStreamMetadata
public IIOMetadata getStreamMetadata() throws IOException
- Specified by:
getStreamMetadata
in classImageReader
- Throws:
IOException
-
getImageMetadata
public IIOMetadata getImageMetadata(int imageIndex) throws IOException
- Specified by:
getImageMetadata
in classImageReader
- Throws:
IOException
-
setMonitor
public void setMonitor(ProgressListener monitor)
-
read
public BufferedImage read(int imageIndex, ImageReadParam param, boolean useSubSamplingAsRequestedRowcols, boolean castDoubleToFloating, ProgressListener monitor) throws IOException
Performs the read method adding the possibility to override subsampling.- Parameters:
imageIndex
- same asread(int, ImageReadParam)
param
- same asread(int, ImageReadParam)
useSubSamplingAsRequestedRowcols
- a flag that gives the possibility to bypass the imageio subsampling mechanism. With GRASS maps this is often more performant in some boundary situations. In the case this flag is set to true, the subsampling values will be handled as the requested columns and rows.castDoubleToFloating
- a flag that gives the possibility to force the reading of a map as a floating point map. This is necessary right now because of a imageio bug: https://jai-imageio-core.dev.java.net/issues/show_bug.cgi?id=180- Returns:
- same as
read(int, ImageReadParam)
- Throws:
IOException
- same asread(int, ImageReadParam)
-
read
public BufferedImage read(int imageIndex, ImageReadParam param) throws IOException
- Specified by:
read
in classImageReader
- Throws:
IOException
-
read
public BufferedImage read(int imageIndex) throws IOException
- Overrides:
read
in classImageReader
- Throws:
IOException
-
readRaster
public Raster readRaster(int imageIndex, ImageReadParam param) throws IOException
- Overrides:
readRaster
in classImageReader
- Throws:
IOException
-
getRasterReader
public GrassBinaryRasterReadHandler getRasterReader()
A simple method which returns the properGrassBinaryRasterReadHandler
used to perform reading operations- Returns:
- Returns the rasterReader.
-
dispose
public void dispose()
Cleans thisGrassBinaryImageReader
up.- Overrides:
dispose
in classImageReader
-
reset
public void reset()
Resets thisGrassBinaryImageReader
.- Overrides:
reset
in classImageReader
-
abort
public void abort()
Request to abort any current read operation.- Overrides:
abort
in classImageReader
-
abortRequested
protected boolean abortRequested()
Checks if a request to abort the current read operation has been made.- Overrides:
abortRequested
in classImageReader
-
-