Package org.esa.snap.core.util.jai
Class SingleBandedSampleModel
java.lang.Object
java.awt.image.SampleModel
java.awt.image.ComponentSampleModel
javax.media.jai.ComponentSampleModelJAI
org.esa.snap.core.util.jai.SingleBandedSampleModel
public class SingleBandedSampleModel
extends javax.media.jai.ComponentSampleModelJAI
This class represents image data which is composed of a single band so that
(a pixel comprises a single sample and occupies one data element of the DataBuffer).
It subclasses ComponentSampleModelJAI but provides a more efficent
implementation for accessing pixel interleaved image data than is provided
by ComponentSampleModelJAI. This class
stores sample data in a single bank of the
DataBuffer. Accessor methods are provided so that image data can be
manipulated directly.
This class supports
TYPE_BYTE,
TYPE_USHORT,
TYPE_SHORT,
TYPE_INT,
TYPE_FLOAT and
TYPE_DOUBLE datatypes.-
Field Summary
Fields inherited from class java.awt.image.ComponentSampleModel
bandOffsets, bankIndices, numBands, numBanks, pixelStride, scanlineStrideFields inherited from class java.awt.image.SampleModel
dataType, height, width -
Constructor Summary
ConstructorsConstructorDescriptionSingleBandedSampleModel(int dataType, int w, int h) Constructs a SingleBandSampleModel with the specified parameters. -
Method Summary
Modifier and TypeMethodDescriptioncreateCompatibleSampleModel(int w, int h) Creates a new SingleBandSampleModel with the specified width and height.createSubsetSampleModel(int[] bands) Simply callscreateCompatibleSampleModel(width, height).getDataElements(int x, int y, int w, int h, Object obj, DataBuffer data) final intgetOffset(int x, int y) final intgetOffset(int x, int y, int b) double[]getPixel(int x, int y, double[] array, DataBuffer data) float[]getPixel(int x, int y, float[] array, DataBuffer data) int[]getPixel(int x, int y, int[] array, DataBuffer data) double[]getPixels(int x, int y, int w, int h, double[] array, DataBuffer data) float[]getPixels(int x, int y, int w, int h, float[] array, DataBuffer data) int[]getPixels(int x, int y, int w, int h, int[] array, DataBuffer data) intgetSample(int x, int y, int b, DataBuffer data) doublegetSampleDouble(int x, int y, int b, DataBuffer data) floatgetSampleFloat(int x, int y, int b, DataBuffer data) double[]getSamples(int x, int y, int w, int h, int b, double[] array, DataBuffer data) float[]getSamples(int x, int y, int w, int h, int b, float[] array, DataBuffer data) int[]getSamples(int x, int y, int w, int h, int b, int[] array, DataBuffer data) voidsetDataElements(int x, int y, int w, int h, Object obj, DataBuffer data) voidsetPixel(int x, int y, double[] array, DataBuffer data) voidsetPixel(int x, int y, float[] array, DataBuffer data) voidsetPixel(int x, int y, int[] array, DataBuffer data) voidsetPixels(int x, int y, int w, int h, double[] array, DataBuffer data) voidsetPixels(int x, int y, int w, int h, float[] array, DataBuffer data) voidsetPixels(int x, int y, int w, int h, int[] array, DataBuffer data) voidsetSample(int x, int y, int b, double s, DataBuffer data) voidsetSample(int x, int y, int b, float s, DataBuffer data) voidsetSample(int x, int y, int b, int s, DataBuffer data) voidsetSamples(int x, int y, int w, int h, int b, double[] array, DataBuffer data) voidsetSamples(int x, int y, int w, int h, int b, float[] array, DataBuffer data) voidsetSamples(int x, int y, int w, int h, int b, int[] array, DataBuffer data) Methods inherited from class javax.media.jai.ComponentSampleModelJAI
createDataBuffer, getDataElements, setDataElements, toStringMethods inherited from class java.awt.image.ComponentSampleModel
equals, getBandOffsets, getBankIndices, getNumDataElements, getPixelStride, getSampleSize, getSampleSize, getScanlineStride, hashCodeMethods inherited from class java.awt.image.SampleModel
getDataType, getHeight, getNumBands, getTransferType, getWidth
-
Constructor Details
-
SingleBandedSampleModel
public SingleBandedSampleModel(int dataType, int w, int h) Constructs a SingleBandSampleModel with the specified parameters. The number of bands will be given by the length of the bandOffsets array.- Parameters:
dataType- The data type for storing samples.w- The width (in pixels) of the region of image data described.h- The height (in pixels) of the region of image data described.- Throws:
IllegalArgumentException- ifworhis not greater than 0 or ifdataTypeis not one of the supported data types
-
-
Method Details
-
createCompatibleSampleModel
Creates a new SingleBandSampleModel with the specified width and height. The new SingleBandSampleModel will have the same storage data type as this SingleBandSampleModel.- Overrides:
createCompatibleSampleModelin classjavax.media.jai.ComponentSampleModelJAI- Parameters:
w- the width of the resultingSampleModelh- the height of the resultingSampleModel- Returns:
- a new
SampleModelwith the specified width and height. - Throws:
IllegalArgumentException- ifworhis not greater than 0
-
createSubsetSampleModel
Simply callscreateCompatibleSampleModel(width, height).- Overrides:
createSubsetSampleModelin classjavax.media.jai.ComponentSampleModelJAI- Parameters:
bands- Ignored.- Returns:
- a new
org.esa.snap.jai.SingleBandSampleModel.
-
getOffset
public final int getOffset(int x, int y) - Overrides:
getOffsetin classComponentSampleModel
-
getOffset
public final int getOffset(int x, int y, int b) - Overrides:
getOffsetin classComponentSampleModel
-
getDataElements
- Overrides:
getDataElementsin classjavax.media.jai.ComponentSampleModelJAI
-
setDataElements
- Overrides:
setDataElementsin classjavax.media.jai.ComponentSampleModelJAI
-
getPixels
- Overrides:
getPixelsin classComponentSampleModel
-
getPixels
- Overrides:
getPixelsin classSampleModel
-
getPixels
- Overrides:
getPixelsin classjavax.media.jai.ComponentSampleModelJAI
-
setPixels
- Overrides:
setPixelsin classComponentSampleModel
-
setPixels
- Overrides:
setPixelsin classSampleModel
-
setPixels
- Overrides:
setPixelsin classSampleModel
-
getPixel
- Overrides:
getPixelin classComponentSampleModel
-
getPixel
- Overrides:
getPixelin classSampleModel
-
getPixel
- Overrides:
getPixelin classSampleModel
-
setPixel
- Overrides:
setPixelin classComponentSampleModel
-
setPixel
- Overrides:
setPixelin classSampleModel
-
setPixel
- Overrides:
setPixelin classSampleModel
-
getSamples
- Overrides:
getSamplesin classComponentSampleModel
-
getSamples
- Overrides:
getSamplesin classSampleModel
-
getSamples
- Overrides:
getSamplesin classSampleModel
-
setSamples
- Overrides:
setSamplesin classComponentSampleModel
-
setSamples
- Overrides:
setSamplesin classSampleModel
-
setSamples
- Overrides:
setSamplesin classSampleModel
-
getSample
- Overrides:
getSamplein classComponentSampleModel
-
getSampleFloat
- Overrides:
getSampleFloatin classjavax.media.jai.ComponentSampleModelJAI
-
getSampleDouble
- Overrides:
getSampleDoublein classjavax.media.jai.ComponentSampleModelJAI
-
setSample
- Overrides:
setSamplein classComponentSampleModel
-
setSample
- Overrides:
setSamplein classjavax.media.jai.ComponentSampleModelJAI
-
setSample
- Overrides:
setSamplein classjavax.media.jai.ComponentSampleModelJAI
-