org.esa.beam.framework.datamodel
Class Mask

java.lang.Object
  extended by com.bc.ceres.core.ExtensibleObject
      extended by org.esa.beam.framework.datamodel.ProductNode
          extended by org.esa.beam.framework.datamodel.DataNode
              extended by org.esa.beam.framework.datamodel.RasterDataNode
                  extended by org.esa.beam.framework.datamodel.AbstractBand
                      extended by org.esa.beam.framework.datamodel.Band
                          extended by org.esa.beam.framework.datamodel.Mask
All Implemented Interfaces:
com.bc.ceres.core.Extensible, Scaling

public class Mask
extends Band

A Mask is used to mask image pixels of other raster data nodes.

This is a preliminary API under construction for BEAM 4.7. Not intended for public use.

Since:
BEAM 4.7
Version:
$Revision$ $Date$
Author:
Norman Fomferra

Nested Class Summary
static class Mask.BandMathsType
          A mask image type which is based on band math.
static class Mask.ImageType
          Specifies a factory for the source image used by a Mask.
static class Mask.RangeType
           
static class Mask.VectorDataType
          A mask image type which is based on vector data.
 
Nested classes/interfaces inherited from class org.esa.beam.framework.datamodel.RasterDataNode
RasterDataNode.RasterDataDoubleList, RasterDataNode.RasterDataProcessor
 
Field Summary
 
Fields inherited from class org.esa.beam.framework.datamodel.Band
PROPERTY_NAME_SAMPLE_CODING, PROPERTY_NAME_SOLAR_FLUX, PROPERTY_NAME_SPECTRAL_BAND_INDEX, PROPERTY_NAME_SPECTRAL_BANDWIDTH, PROPERTY_NAME_SPECTRAL_WAVELENGTH
 
Fields inherited from class org.esa.beam.framework.datamodel.AbstractBand
VIEW_MODE_FORWARD, VIEW_MODE_NADIR, VIEW_MODE_ORTHO
 
Fields inherited from class org.esa.beam.framework.datamodel.RasterDataNode
INVALID_POS_TEXT, IO_ERROR_TEXT, NO_DATA_TEXT, NOT_LOADED_TEXT, PROPERTY_NAME_GEOCODING, PROPERTY_NAME_IMAGE_INFO, PROPERTY_NAME_LOG_10_SCALED, PROPERTY_NAME_NO_DATA_VALUE, PROPERTY_NAME_NO_DATA_VALUE_USED, PROPERTY_NAME_ROI_DEFINITION, PROPERTY_NAME_SCALING_FACTOR, PROPERTY_NAME_SCALING_OFFSET, PROPERTY_NAME_STX, PROPERTY_NAME_VALID_PIXEL_EXPRESSION
 
Fields inherited from class org.esa.beam.framework.datamodel.DataNode
PROPERTY_NAME_DATA, PROPERTY_NAME_READ_ONLY, PROPERTY_NAME_SYNTHETIC, PROPERTY_NAME_UNIT
 
Fields inherited from class org.esa.beam.framework.datamodel.ProductNode
PROPERTY_NAME_DESCRIPTION, PROPERTY_NAME_NAME
 
Fields inherited from interface org.esa.beam.framework.datamodel.Scaling
IDENTITY
 
Constructor Summary
Mask(String name, int width, int height, Mask.ImageType imageType)
          Constructs a new mask.
 
Method Summary
 void acceptVisitor(ProductVisitor visitor)
          Accepts the given visitor.
protected  RenderedImage createSourceImage()
          Calls createImage(this) in this mask's image type.
 void dispose()
          Releases all of the resources used by this object instance and all of its owned children.
 Color getImageColor()
           
 com.bc.ceres.binding.PropertyContainer getImageConfig()
           
 double getImageTransparency()
           
 Mask.ImageType getImageType()
           
 Shape getValidShape()
          Gets the shape of the area where this raster data contains valid samples.
 void setImageColor(Color color)
           
 void setImageTransparency(double transparency)
           
 void updateExpression(String oldExternalName, String newExternalName)
          Asks a product node to replace all occurences of and references to the node name given by oldExternalName with oldExternalName.
 
Methods inherited from class org.esa.beam.framework.datamodel.Band
computeStxImpl, createDefaultImageInfo, getFlagCoding, getIndexCoding, getRawStorageSize, getSampleCoding, getSolarFlux, getSpectralBandIndex, getSpectralBandwidth, getSpectralWavelength, isFlagBand, isIndexBand, readRasterData, readRasterDataFully, removeFromFile, setSampleCoding, setSolarFlux, setSpectralBandIndex, setSpectralBandwidth, setSpectralWavelength, toString, writeRasterData, writeRasterDataFully
 
Methods inherited from class org.esa.beam.framework.datamodel.AbstractBand
computeBand, ensureMinLengthArray, ensureMinLengthArray, ensureMinLengthArray, ensureRasterData, getPixelDouble, getPixelFloat, getPixelInt, getPixels, getPixels, getPixels, getSceneRasterData, getViewModeId, loadRasterData, readPixels, readPixels, readPixels, setPixelDouble, setPixelFloat, setPixelInt, setPixels, setPixels, setPixels, unloadRasterData, writePixels, writePixels, writePixels
 
Methods inherited from class org.esa.beam.framework.datamodel.RasterDataNode
canBeOrthorectified, checkCompatibleRasterData, clearNoDataValue, createColorIndexedImage, createCompatibleRasterData, createCompatibleRasterData, createCompatibleSceneRasterData, createDefaultImageInfo, createPixelValidator, createPointing, createRgbImage, createTransectProfileData, fireImageInfoChanged, getBitmaskDefs, getGeoCoding, getGeophysicalDataType, getGeophysicalImage, getGeophysicalNoDataValue, getImageInfo, getImageInfo, getImageInfo, getNoDataValue, getOverlayMaskGroup, getPixels, getPixels, getPixels, getPixelString, getPointing, getRasterData, getRasterHeight, getRasterWidth, getRoiMaskGroup, getSampleFloat, getSampleInt, getScalingFactor, getScalingOffset, getSceneRasterHeight, getSceneRasterWidth, getSourceImage, getStx, getStx, getValidMaskExpression, getValidMaskImage, getValidPixelExpression, hasIntPixels, hasRasterData, isCompatibleRasterData, isFloatingPointType, isGeophysicalImageSet, isLog10Scaled, isNoDataValueSet, isNoDataValueUsed, isPixelValid, isPixelValid, isPixelValid, isScalingApplied, isSourceImageSet, isStxSet, isValidMaskImageSet, isValidMaskProperty, isValidMaskUsed, loadRasterData, processRasterData, quantizeRasterData, quantizeRasterData, readPixels, readPixels, readPixels, readRasterData, readRasterDataFully, readValidMask, resetValidMask, scale, scaleInverse, setGeoCoding, setGeophysicalNoDataValue, setImageInfo, setImageInfo, setLog10Scaled, setModified, setNoDataValue, setNoDataValueUsed, setRasterData, setScalingFactor, setScalingOffset, setSourceImage, setSourceImage, setStx, setValidPixelExpression, writePixels, writePixels, writePixels, writeRasterData, writeRasterDataFully
 
Methods inherited from class org.esa.beam.framework.datamodel.DataNode
checkDataCompatibility, createCompatibleProductData, fireProductNodeDataChanged, getData, getDataElems, getDataElemSize, getDataType, getNumDataElems, getUnit, isReadOnly, isSynthetic, setData, setDataElems, setReadOnly, setSynthetic, setUnit
 
Methods inherited from class org.esa.beam.framework.datamodel.ProductNode
fireProductNodeChanged, fireProductNodeChanged, getDescription, getDisplayName, getName, getOwner, getProduct, getProductReader, getProductReaderSafe, getProductRefString, getProductSafe, getProductWriter, getProductWriterSafe, getRawStorageSize, isModified, isPartOfSubset, isValidNodeName, setDescription, setName, setOwner
 
Methods inherited from class com.bc.ceres.core.ExtensibleObject
getExtension
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Mask

public Mask(String name,
            int width,
            int height,
            Mask.ImageType imageType)
Constructs a new mask.

Parameters:
name - The new mask's name.
width - The new mask's raster width.
height - The new mask's raster height.
imageType - The new mask's image type.
Method Detail

getImageType

public Mask.ImageType getImageType()
Returns:
The image type of this mask.

getImageConfig

public com.bc.ceres.binding.PropertyContainer getImageConfig()
Returns:
The image configuration of this mask.

getImageColor

public Color getImageColor()

setImageColor

public void setImageColor(Color color)

getImageTransparency

public double getImageTransparency()

setImageTransparency

public void setImageTransparency(double transparency)

createSourceImage

protected RenderedImage createSourceImage()
Calls createImage(this) in this mask's image type.

Overrides:
createSourceImage in class Band
Returns:
The mask's source image.
See Also:
getImageType()

acceptVisitor

public void acceptVisitor(ProductVisitor visitor)
Description copied from class: Band
Accepts the given visitor. This method implements the well known 'Visitor' design pattern of the gang-of-four. The visitor pattern allows to define new operations on the product data model without the need to add more code to it. The new operation is implemented by the visitor.

The method simply calls visitor.visit(this).

Overrides:
acceptVisitor in class Band
Parameters:
visitor - the visitor, must not be null

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

updateExpression

public void updateExpression(String oldExternalName,
                             String newExternalName)
Asks a product node to replace all occurences of and references to the node name given by oldExternalName with oldExternalName. Such references most often occur in band arithmetic expressions.

Overrides:
updateExpression in class RasterDataNode
Parameters:
oldExternalName - The old node name.
newExternalName - The new node name.

getValidShape

public Shape getValidShape()
Description copied from class: RasterDataNode
Gets the shape of the area where this raster data contains valid samples. The method returns null, if the entire raster contains valid samples.

Overrides:
getValidShape in class RasterDataNode
Returns:
The shape of the area where the raster data has samples, can be null.


Copyright © 2002-2012 Brockmann Consult GmbH. All Rights Reserved.