org.geotools.gce.imagemosaic
Class GranuleDescriptor

Object
  extended by GranuleDescriptor

public class GranuleDescriptor
extends Object

A granuleDescriptor is a single piece of the mosaic, with its own overviews and everything.

This class is responsible for caching the various size of the different levels of each single granuleDescriptor since computing them each time is expensive (opening a file, looking for a reader, parsing metadata,etc...).

Right now we are making the assumption that a single granuleDescriptor is made a by a single file with embedded overviews, either explicit or intrinsic through wavelets like MrSID, ECW or JPEG2000.

Since:
2.5.5
Author:
Simone Giannecchini, GeoSolutions S.A.S., Stefan Alfons Krueger (alfonx), Wikisquare.de : Support for jar:file:foo.jar/bar.properties URLs

Constructor Summary
GranuleDescriptor(SimpleFeature feature, ImageReaderSpi suggestedSPI, PathType pathType, String locationAttribute, String parentLocation)
           
GranuleDescriptor(SimpleFeature feature, ImageReaderSpi suggestedSPI, PathType pathType, String locationAttribute, String parentLocation, boolean heterogeneousGranules)
           
GranuleDescriptor(SimpleFeature feature, ImageReaderSpi suggestedSPI, PathType pathType, String locationAttribute, String parentLocation, boolean heterogeneousGranules, Hints hints)
           
GranuleDescriptor(SimpleFeature feature, ImageReaderSpi suggestedSPI, PathType pathType, String locationAttribute, String parentLocation, MultiLevelROI roiProvider)
          Constructor for the GranuleDescriptor assuming it doesn't belong to an heterogeneous granules set.
GranuleDescriptor(SimpleFeature feature, ImageReaderSpi suggestedSPI, PathType pathType, String locationAttribute, String parentLocation, MultiLevelROI roiProvider, boolean heterogeneousGranules, Hints hints)
          Constructor for the GranuleDescriptor
GranuleDescriptor(String granuleLocation, BoundingBox granuleBBox, ImageReaderSpi suggestedSPI, MultiLevelROI roiProvider)
           
GranuleDescriptor(String granuleLocation, BoundingBox granuleBBox, ImageReaderSpi suggestedSPI, MultiLevelROI roiProvider, boolean heterogeneousGranules)
           
GranuleDescriptor(String granuleLocation, BoundingBox granuleBBox, ImageReaderSpi suggestedSPI, MultiLevelROI roiProvider, int maxDecimationFactor)
           
GranuleDescriptor(String granuleLocation, BoundingBox granuleBBox, ImageReaderSpi suggestedSPI, MultiLevelROI roiProvider, int maxDecimationFactor, boolean heterogeneousGranules)
           
GranuleDescriptor(String granuleLocation, BoundingBox granuleBBox, ImageReaderSpi suggestedSPI, MultiLevelROI roiProvider, int maxDecimationFactor, boolean heterogeneousGranules, boolean handleArtifactsFiltering)
           
 
Method Summary
 Geometry getFootprint()
           
 BoundingBox getGranuleBBOX()
           
 URL getGranuleUrl()
           
 SimpleFeature getOriginator()
           
 GranuleDescriptor.GranuleLoadingResult loadRaster(ImageReadParam imageReadParameters, int index, ReferencedEnvelope cropBBox, MathTransform2D mosaicWorldToGrid, RasterLayerRequest request, Hints hints)
          Load a specified a raster as a portion of the granule describe by this GranuleDescriptor.
 String toString()
           
 
Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

GranuleDescriptor

public GranuleDescriptor(String granuleLocation,
                         BoundingBox granuleBBox,
                         ImageReaderSpi suggestedSPI,
                         MultiLevelROI roiProvider)

GranuleDescriptor

public GranuleDescriptor(String granuleLocation,
                         BoundingBox granuleBBox,
                         ImageReaderSpi suggestedSPI,
                         MultiLevelROI roiProvider,
                         boolean heterogeneousGranules)

GranuleDescriptor

public GranuleDescriptor(String granuleLocation,
                         BoundingBox granuleBBox,
                         ImageReaderSpi suggestedSPI,
                         MultiLevelROI roiProvider,
                         int maxDecimationFactor)

GranuleDescriptor

public GranuleDescriptor(String granuleLocation,
                         BoundingBox granuleBBox,
                         ImageReaderSpi suggestedSPI,
                         MultiLevelROI roiProvider,
                         int maxDecimationFactor,
                         boolean heterogeneousGranules)

GranuleDescriptor

public GranuleDescriptor(String granuleLocation,
                         BoundingBox granuleBBox,
                         ImageReaderSpi suggestedSPI,
                         MultiLevelROI roiProvider,
                         int maxDecimationFactor,
                         boolean heterogeneousGranules,
                         boolean handleArtifactsFiltering)

GranuleDescriptor

public GranuleDescriptor(SimpleFeature feature,
                         ImageReaderSpi suggestedSPI,
                         PathType pathType,
                         String locationAttribute,
                         String parentLocation)
Parameters:
feature -
suggestedSPI -
pathType -
locationAttribute -
parentLocation -

GranuleDescriptor

public GranuleDescriptor(SimpleFeature feature,
                         ImageReaderSpi suggestedSPI,
                         PathType pathType,
                         String locationAttribute,
                         String parentLocation,
                         boolean heterogeneousGranules,
                         Hints hints)

GranuleDescriptor

public GranuleDescriptor(SimpleFeature feature,
                         ImageReaderSpi suggestedSPI,
                         PathType pathType,
                         String locationAttribute,
                         String parentLocation,
                         boolean heterogeneousGranules)

GranuleDescriptor

public GranuleDescriptor(SimpleFeature feature,
                         ImageReaderSpi suggestedSPI,
                         PathType pathType,
                         String locationAttribute,
                         String parentLocation,
                         MultiLevelROI roiProvider)
Constructor for the GranuleDescriptor assuming it doesn't belong to an heterogeneous granules set.

Parameters:
feature - a SimpleFeature referring to that granule
suggestedSPI - the suggested ImageReaderSpi to be used to get a reader to handle this granule.
pathType - A PathType identifying if the granule location should be resolved as a relative or an absolute path.
locationAttribute - the attribute containing the granule location.
parentLocation - the location of the parent of that granule.
inclusionGeometry - the footprint of that granule (if any). It may be null.

GranuleDescriptor

public GranuleDescriptor(SimpleFeature feature,
                         ImageReaderSpi suggestedSPI,
                         PathType pathType,
                         String locationAttribute,
                         String parentLocation,
                         MultiLevelROI roiProvider,
                         boolean heterogeneousGranules,
                         Hints hints)
Constructor for the GranuleDescriptor

Parameters:
feature - a SimpleFeature referring to that granule
suggestedSPI - the suggested ImageReaderSpi to be used to get a reader to handle this granule.
pathType - A PathType identifying if the granule location should be resolved as a relative or an absolute path.
locationAttribute - the attribute containing the granule location.
parentLocation - the location of the parent of that granule.
inclusionGeometry - the footprint of that granule (if any). It may be null.
heterogeneousGranules - if true, this granule belongs to a set of heterogeneous granules
Method Detail

loadRaster

public GranuleDescriptor.GranuleLoadingResult loadRaster(ImageReadParam imageReadParameters,
                                                         int index,
                                                         ReferencedEnvelope cropBBox,
                                                         MathTransform2D mosaicWorldToGrid,
                                                         RasterLayerRequest request,
                                                         Hints hints)
                                                  throws IOException
Load a specified a raster as a portion of the granule describe by this GranuleDescriptor.

Parameters:
imageReadParameters - the ImageReadParam to use for reading.
index - the index to use for the ImageReader.
cropBBox - the bbox to use for cropping.
mosaicWorldToGrid - the cropping grid to world transform.
request - the incoming request to satisfy.
hints - Hints to be used for creating this raster.
Returns:
a specified a raster as a portion of the granule describe by this GranuleDescriptor.
Throws:
IOException - in case an error occurs.

toString

public String toString()
Overrides:
toString in class Object

getGranuleBBOX

public BoundingBox getGranuleBBOX()

getGranuleUrl

public URL getGranuleUrl()

getOriginator

public SimpleFeature getOriginator()

getFootprint

public Geometry getFootprint()


Copyright © 1996-2014 Geotools. All Rights Reserved.