| java.lang.Object com.sun.media.imageio.stream.RawImageInputStream
RawImageInputStream | public class RawImageInputStream implements ImageInputStream(Code) | | This class defines the content of the ImageInputStream
containing several raw images with the same image type: the number of
the images, the image type, the offset for the first sample of each image,
and the image size information.
ImageInputStream methods are not commented individually.
These methods merely forward the call to the ImageInputStream
specified when the RawImageInputStream is constructed.
|
Constructor Summary | |
public | RawImageInputStream(ImageInputStream source, ImageTypeSpecifier type, long[] imageOffsets, Dimension[] imageDimensions) Constructor. | public | RawImageInputStream(ImageInputStream source, SampleModel sampleModel, long[] imageOffsets, Dimension[] imageDimensions) Constructor.
This constructor is the same as
RawImageInputStream.RawImageInputStream(ImageInputStream,ImageTypeSpecifier,long[],Dimension[]) except that a SampleModel is
supplied instead of an ImageTypeSpecifier . | public | RawImageInputStream(ImageInputStream source, org.xml.sax.InputSource xmlSource) Constructor.
The xmlSource must adhere to the following DTD:
<!DOCTYPE "com_sun_media_imageio_stream_raw_1.0" [
<!ELEMENT com_sun_media_imageio_stream_raw_1.0
(byteOrder?, offset?, width?, height?,
(ComponentSampleModel |
MultiPixelPackedSampleModel |
SinglePixelPackedSampleModel),
(ComponentColorModel |
DirectColorModel |
IndexColorModel)?)>
<!ATTLIST com_sun_media_imageio_stream_raw_1.0
xmlns CDATA #FIXED "http://com/sun/media/imageio">
<!ELEMENT byteOrder (#PCDATA)>
<!-- Byte order of data stream -->
<!-- Either "NETWORK" or "REVERSE" -->
<!-- Data type: String -->
<!ELEMENT offset (#PCDATA)>
<!-- Byte offset to the image data in the stream -->
<!-- Data type: long -->
<!ELEMENT width (#PCDATA)>
<!-- Image width; default value is SampleModel width -->
<!-- Data type: int -->
<!ELEMENT height (#PCDATA)>
<!-- Image height; default value is SampleModel height -->
<!-- Data type: int -->
<!ELEMENT ComponentSampleModel EMPTY>
<!-- ComponentSampleModel -->
<!ATTLIST ComponentSampleModel
dataType (BYTE | USHORT | SHORT | INT | FLOAT | DOUBLE) #REQUIRED
<!-- Data type: String -->
w CDATA #REQUIRED
<!-- SampleModel width -->
<!-- Data type: int -->
h CDATA #REQUIRED
<!-- SampleModel height -->
<!-- Data type: int -->
pixelStride CDATA "1"
<!-- SampleModel pixel stride -->
<!-- Data type: int -->
scanlineStride CDATA #REQUIRED
<!-- SampleModel line stride -->
<!-- Data type: int -->
bankIndices CDATA #IMPLIED
<!-- SampleModel bank indices -->
<!-- Data type: int array -->
bandOffsets CDATA #REQUIRED>
<!-- SampleModel band offsets -->
<!-- Data type: int array -->
<!ELEMENT MultiPixelPackedSampleModel EMPTY>
<!-- MultiPixelPackedSampleModel -->
<!ATTLIST MultiPixelPackedSampleModel
dataType (BYTE | USHORT | INT) #REQUIRED
<!-- Data type: String -->
w CDATA #REQUIRED
<!-- SampleModel width -->
<!-- Data type: int -->
h CDATA #REQUIRED
<!-- SampleModel height -->
<!-- Data type: int -->
numberOfBits CDATA #REQUIRED
<!-- Number of bits per pixel -->
<!-- Data type: int -->
scanlineStride CDATA #REQUIRED
<!-- SampleModel line stride -->
<!-- Data type: int -->
dataBitOffset CDATA "0">
<!-- Offset to first valid bit in a line -->
<!-- Data type: int -->
<!ELEMENT SinglePixelPackedSampleModel EMPTY>
<!-- SinglePixelPackedSampleModel -->
<!ATTLIST SinglePixelPackedSampleModel
dataType (BYTE | USHORT | INT) #REQUIRED
<!-- Data type: String -->
w CDATA #REQUIRED
<!-- SampleModel width -->
<!-- Data type: int -->
h CDATA #REQUIRED
<!-- SampleModel height -->
<!-- Data type: int -->
scanlineStride CDATA #REQUIRED
<!-- SampleModel line stride -->
<!-- Data type: int -->
bitMasks CDATA #REQUIRED>
<!-- Masks indicating RGBA positions -->
<!-- Data type: int -->
<!ELEMENT ComponentColorModel EMPTY>
<!-- ComponentColorModel -->
<!ATTLIST ComponentColorModel
colorSpace (CIEXYZ | GRAY | LINEAR_RGB | PYCC | sRGB | URL)
#REQUIRED
<!-- A string representing a predefined ColorSpace or a URI
representing the location of any ICC profile from which
a ColorSpace may be created. |
Method Summary | |
public void | close() | public void | flush() | public void | flushBefore(long pos) | public int | getBitOffset() | public ByteOrder | getByteOrder() | public long | getFlushedPosition() | public Dimension | getImageDimension(int imageIndex) Retrieves the dimnsion of the imageIndex th image.
Parameters: imageIndex - the index of the image of interest. throws: IllegalArgumentException - If the provided parameter is out ofrangle. | public long | getImageOffset(int imageIndex) Retrieves the image offset of the imageIndex th image.
Parameters: imageIndex - the index of the image of interest. throws: IllegalArgumentException - If the provided parameter is out ofrange. | public ImageTypeSpecifier | getImageType() Retrieves the image type. | public int | getNumImages() Retrieves the number of images in the ImageInputStream . | public long | getStreamPosition() | public boolean | isCached() | public boolean | isCachedFile() | public boolean | isCachedMemory() | public long | length() | public void | mark() | public int | read() | public int | read(byte[] b) | public int | read(byte[] b, int off, int len) | public int | readBit() | public long | readBits(int numBits) | public boolean | readBoolean() | public byte | readByte() | public void | readBytes(IIOByteBuffer buf, int len) | public char | readChar() | public double | readDouble() | public float | readFloat() | public void | readFully(byte[] b, int off, int len) | public void | readFully(byte[] b) | public void | readFully(short[] s, int off, int len) | public void | readFully(char[] c, int off, int len) | public void | readFully(int[] i, int off, int len) | public void | readFully(long[] l, int off, int len) | public void | readFully(float[] f, int off, int len) | public void | readFully(double[] d, int off, int len) | public int | readInt() | public String | readLine() | public long | readLong() | public short | readShort() | public String | readUTF() | public int | readUnsignedByte() | public long | readUnsignedInt() | public int | readUnsignedShort() | public void | reset() | public void | seek(long pos) | public void | setBitOffset(int bitOffset) | public void | setByteOrder(ByteOrder byteOrder) | public int | skipBytes(int n) | public long | skipBytes(long n) |
RawImageInputStream | public RawImageInputStream(ImageInputStream source, ImageTypeSpecifier type, long[] imageOffsets, Dimension[] imageDimensions)(Code) | | Constructor.
Parameters: source - The ImageInputStream containing all the rawimages. Parameters: type - The ImageTypeSpecifier for all the imagesin the stream. Parameters: imageOffsets - The position of the first sample for each imagein the stream. Parameters: imageDimensions - The image size for each image in the stream. throws: IllegalArgumentException - If the sizes ofimageOffsets and imageDimensions are different or ifeither array is null. |
RawImageInputStream | public RawImageInputStream(ImageInputStream source, SampleModel sampleModel, long[] imageOffsets, Dimension[] imageDimensions)(Code) | | Constructor.
This constructor is the same as
RawImageInputStream.RawImageInputStream(ImageInputStream,ImageTypeSpecifier,long[],Dimension[]) except that a SampleModel is
supplied instead of an ImageTypeSpecifier . This
constructor creates a ColorModel for the supplied
SampleModel and then creates an
ImageTypeSpecifier .
Suitable ColorModel s are guaranteed to exist
for all instances of ComponentSampleModel .
For 1- and 3- banded SampleModel s, the
ColorModel will be opaque. For 2- and 4-banded
SampleModel s, the output will use alpha transparency
which is not premultiplied. 1- and 2-banded data will use a
grayscale ColorSpace , and 3- and 4-banded data a sRGB
ColorSpace . Data with 5 or more bands will use a
ColorSpace which satisfies compatibility constraints
but is merely a placeholder and does not perform correct color
conversion to and from the C.I.E. XYZ and sRGB color spaces.
An instance of DirectColorModel will be created for
instances of SinglePixelPackedSampleModel with no more
than 4 bands.
An instance of IndexColorModel will be created for
instances of MultiPixelPackedSampleModel . The colormap
will be a grayscale ramp with 1 << numberOfBits
entries ranging from zero to at most 255.
Parameters: source - The ImageInputStream containing all the rawimages. Parameters: sampleModel - The SampleModel for all the imagesin the stream. Parameters: imageOffsets - The position of the first sample for each imagein the stream. Parameters: imageDimensions - The image size for each image in the stream. throws: IllegalArgumentException - If sampleModel is null. throws: IllegalArgumentException - If the sizes ofimageOffsets and imageDimensions are different or ifeither array is null. throws: IllegalArgumentException - If it is not possible to create aColorModel from the suppliedSampleModel . |
RawImageInputStream | public RawImageInputStream(ImageInputStream source, org.xml.sax.InputSource xmlSource) throws SAXException, IOException(Code) | | Constructor.
The xmlSource must adhere to the following DTD:
<!DOCTYPE "com_sun_media_imageio_stream_raw_1.0" [
<!ELEMENT com_sun_media_imageio_stream_raw_1.0
(byteOrder?, offset?, width?, height?,
(ComponentSampleModel |
MultiPixelPackedSampleModel |
SinglePixelPackedSampleModel),
(ComponentColorModel |
DirectColorModel |
IndexColorModel)?)>
<!ATTLIST com_sun_media_imageio_stream_raw_1.0
xmlns CDATA #FIXED "http://com/sun/media/imageio">
<!ELEMENT byteOrder (#PCDATA)>
<!-- Byte order of data stream -->
<!-- Either "NETWORK" or "REVERSE" -->
<!-- Data type: String -->
<!ELEMENT offset (#PCDATA)>
<!-- Byte offset to the image data in the stream -->
<!-- Data type: long -->
<!ELEMENT width (#PCDATA)>
<!-- Image width; default value is SampleModel width -->
<!-- Data type: int -->
<!ELEMENT height (#PCDATA)>
<!-- Image height; default value is SampleModel height -->
<!-- Data type: int -->
<!ELEMENT ComponentSampleModel EMPTY>
<!-- ComponentSampleModel -->
<!ATTLIST ComponentSampleModel
dataType (BYTE | USHORT | SHORT | INT | FLOAT | DOUBLE) #REQUIRED
<!-- Data type: String -->
w CDATA #REQUIRED
<!-- SampleModel width -->
<!-- Data type: int -->
h CDATA #REQUIRED
<!-- SampleModel height -->
<!-- Data type: int -->
pixelStride CDATA "1"
<!-- SampleModel pixel stride -->
<!-- Data type: int -->
scanlineStride CDATA #REQUIRED
<!-- SampleModel line stride -->
<!-- Data type: int -->
bankIndices CDATA #IMPLIED
<!-- SampleModel bank indices -->
<!-- Data type: int array -->
bandOffsets CDATA #REQUIRED>
<!-- SampleModel band offsets -->
<!-- Data type: int array -->
<!ELEMENT MultiPixelPackedSampleModel EMPTY>
<!-- MultiPixelPackedSampleModel -->
<!ATTLIST MultiPixelPackedSampleModel
dataType (BYTE | USHORT | INT) #REQUIRED
<!-- Data type: String -->
w CDATA #REQUIRED
<!-- SampleModel width -->
<!-- Data type: int -->
h CDATA #REQUIRED
<!-- SampleModel height -->
<!-- Data type: int -->
numberOfBits CDATA #REQUIRED
<!-- Number of bits per pixel -->
<!-- Data type: int -->
scanlineStride CDATA #REQUIRED
<!-- SampleModel line stride -->
<!-- Data type: int -->
dataBitOffset CDATA "0">
<!-- Offset to first valid bit in a line -->
<!-- Data type: int -->
<!ELEMENT SinglePixelPackedSampleModel EMPTY>
<!-- SinglePixelPackedSampleModel -->
<!ATTLIST SinglePixelPackedSampleModel
dataType (BYTE | USHORT | INT) #REQUIRED
<!-- Data type: String -->
w CDATA #REQUIRED
<!-- SampleModel width -->
<!-- Data type: int -->
h CDATA #REQUIRED
<!-- SampleModel height -->
<!-- Data type: int -->
scanlineStride CDATA #REQUIRED
<!-- SampleModel line stride -->
<!-- Data type: int -->
bitMasks CDATA #REQUIRED>
<!-- Masks indicating RGBA positions -->
<!-- Data type: int -->
<!ELEMENT ComponentColorModel EMPTY>
<!-- ComponentColorModel -->
<!ATTLIST ComponentColorModel
colorSpace (CIEXYZ | GRAY | LINEAR_RGB | PYCC | sRGB | URL)
#REQUIRED
<!-- A string representing a predefined ColorSpace or a URI
representing the location of any ICC profile from which
a ColorSpace may be created. -->
<!-- Data type: String -->
bits CDATA #IMPLIED
<!-- Number of bits per color component -->
<!-- Data type: int -->
hasAlpha (true | false) #REQUIRED
<!-- Whether an alpha channel is present -->
<!-- Data type: boolean -->
isAlphaPremultiplied (true | false) #REQUIRED
<!-- Whether any alpha channel is premultiplied -->
<!-- Data type: boolean -->
transparency (BITMASK | OPAQUE | TRANSLUCENT) #REQUIRED
<!-- The type of transparency -->
transferType (BYTE | USHORT | SHORT | INT | FLOAT | DOUBLE)
#REQUIRED>
<!-- The data transfer type -->
<!ELEMENT DirectColorModel EMPTY>
<!-- DirectColorModel -->
<!ATTLIST DirectColorModel
colorSpace (LINEAR_RGB | sRGB | URL) #IMPLIED
<!-- A string representing a predefined RGB ColorSpace or a
URL representing the location of any ICC profile from
which an RGB ColorSpace may be created. -->
<!-- Data type: String -->
bits CDATA #REQUIRED
<!-- Number of bits per color component -->
<!-- Data type: int -->
rmask CDATA #REQUIRED
<!-- Bitmask of the red component -->
<!-- Data type: int -->
gmask CDATA #REQUIRED
<!-- Bitmask of the grenn component -->
<!-- Data type: int -->
bmask CDATA #REQUIRED
<!-- Bitmask of the blue component -->
<!-- Data type: int -->
amask CDATA "0">
<!-- Bitmask of the alpha component -->
<!-- Data type: int -->
<!ELEMENT IndexColorModel EMPTY>
<!-- IndexColorModel -->
<!ATTLIST IndexColorModel
bits CDATA #REQUIRED
<!-- Number of bits per color component -->
<!-- Data type: int -->
size CDATA #REQUIRED
<!-- Number of elements in the colormap -->
<!-- Data type: int -->
r CDATA #REQUIRED
<!-- Red elements of the colormap -->
<!-- Data type: byte array -->
g CDATA #REQUIRED
<!-- Green elements of the colormap -->
<!-- Data type: byte array -->
b CDATA #REQUIRED
<!-- Blue elements of the colormap -->
<!-- Data type: byte array -->
a CDATA #IMPLIED>
<!-- Alpha elements of the colormap -->
<!-- Data type: byte array -->
]>
Parameters: source - The ImageInputStream containing all the rawimages. Parameters: xmlSource - The org.xml.sax.InputSource to providethe xml document in which the stream structure is defined. throws: RuntimeException - If the parse configuration isn't correct. throws: IllegalArgumentException - If the number of "width" elements isn'tthe same as the number of "height" elements. throws: SAXException - If one is thrown in parsing. throws: IOException - If one is thrown in parsing, or creating color spacefrom a URL. |
getFlushedPosition | public long getFlushedPosition()(Code) | | |
getImageDimension | public Dimension getImageDimension(int imageIndex)(Code) | | Retrieves the dimnsion of the imageIndex th image.
Parameters: imageIndex - the index of the image of interest. throws: IllegalArgumentException - If the provided parameter is out ofrangle. the size of the specified image. |
getImageOffset | public long getImageOffset(int imageIndex)(Code) | | Retrieves the image offset of the imageIndex th image.
Parameters: imageIndex - the index of the image of interest. throws: IllegalArgumentException - If the provided parameter is out ofrange. the offset in the stream to the specified image. |
getNumImages | public int getNumImages()(Code) | | Retrieves the number of images in the ImageInputStream .
the number of image in the stream. |
isCached | public boolean isCached()(Code) | | |
isCachedFile | public boolean isCachedFile()(Code) | | |
isCachedMemory | public boolean isCachedMemory()(Code) | | |
readFully | public void readFully(double[] d, int off, int len) throws IOException(Code) | | |
|
|