Class FilterBand

  • All Implemented Interfaces:
    Extensible, Scaling, SceneTransformProvider
    Direct Known Subclasses:
    ConvolutionFilterBand, GeneralFilterBand

    public abstract class FilterBand
    extends Band
    Represents a band that generates its data by using another band as input and performs some kind of operation on this input.

    Note that this class is not yet public API and may change in future releases.

    Version:
    $Revision$ $Date$
    • Constructor Detail

      • FilterBand

        protected FilterBand​(String name,
                             int dataType,
                             int width,
                             int height,
                             RasterDataNode source)
    • Method Detail

      • dispose

        public void dispose()
        Description copied from class: Band
        Releases all of the resources used by this object instance and all of its owned children. Its primary use is to allow the garbage collector to perform a vanilla job.

        This method should be called only if it is for sure that this object instance will never be used again. The results of referencing an instance of this class after a call to dispose() are undefined.

        Overrides of this method should always call super.dispose(); after disposing this instance.

        Overrides:
        dispose in class Band
      • createSourceImage

        protected RenderedImage createSourceImage()
        Description copied from class: RasterDataNode
        Creates the source image associated with this RasterDataNode. This shall preferably be a MultiLevelImage instance which recognises this raster data node's {@link ##getImageToModelTransform() imageToModelTransform} property, if set.
        Overrides:
        createSourceImage in class Band
        Returns:
        A new source image instance.
      • createSourceLevelImage

        protected abstract RenderedImage createSourceLevelImage​(RenderedImage sourceImage,
                                                                int level,
                                                                RenderingHints rh)
        Parameters:
        sourceImage - The geophysical source image. No-data is masked as NaN.
        level - The image level.
        rh - Rendering hints. JAI.KEY_BORDER_EXTENDER is set to BorderExtenderCopy.BORDER_COPY.
        Returns:
        The resulting filtered level image.
        Since:
        BEAM 5
      • writeRasterData

        public void writeRasterData​(int offsetX,
                                    int offsetY,
                                    int width,
                                    int height,
                                    ProductData rasterData,
                                    ProgressMonitor pm)
                             throws IOException
        Writes data from this product raster into the specified region of the user-supplied raster.

        It is important to know that this method does not change this product raster's internal state nor does it write into this product raster's internal raster.

        Overrides:
        writeRasterData in class Band
        Parameters:
        offsetX - the X-offset in raster co-ordinates where reading starts
        offsetY - the Y-offset in raster co-ordinates where reading starts
        width - the width of the raster data buffer
        height - the height of the raster data buffer
        rasterData - a raster data buffer receiving the pixels to be read
        pm - a monitor to inform the user about progress
        Throws:
        IOException - if an I/O error occurs
        See Also:
        ProductReader.readBandRasterData(Band, int, int, int, int, ProductData, com.bc.ceres.core.ProgressMonitor)