java.lang.Object
javax.imageio.stream.IIOByteBuffer
public class IIOByteBuffer extends Object
A class representing a mutable reference to an array of bytes and
an offset and length within that array.
IIOByteBuffer
is used by ImageInputStream to supply a sequence of bytes
to the caller, possibly with fewer copies than using the conventional
read methods that take a user-supplied byte array.
The byte array referenced by an IIOByteBuffer will
generally be part of an internal data structure belonging to an
ImageReader implementation; its contents should be
considered read-only and must not be modified.
-
Constructor Summary
Constructors Constructor Description IIOByteBuffer(byte[] data, int offset, int length)Constructs anIIOByteBufferthat references a given byte array, offset, and length. -
Method Summary
Modifier and Type Method Description byte[]getData()Returns a reference to the byte array.intgetLength()Returns the length of the data of interest within the byte array returned bygetData.intgetOffset()Returns the offset within the byte array returned bygetDataat which the data of interest start.voidsetData(byte[] data)Updates the array reference that will be returned by subsequent calls to thegetDatamethod.voidsetLength(int length)Updates the value that will be returned by subsequent calls to thegetLengthmethod.voidsetOffset(int offset)Updates the value that will be returned by subsequent calls to thegetOffsetmethod.
-
Constructor Details
-
IIOByteBuffer
public IIOByteBuffer(byte[] data, int offset, int length)Constructs anIIOByteBufferthat references a given byte array, offset, and length.- Parameters:
data- a byte array.offset- an int offset within the array.length- an int specifying the length of the data of interest within byte array, in bytes.
-
-
Method Details
-
getData
public byte[] getData()Returns a reference to the byte array. The returned value should be treated as read-only, and only the portion specified by the values ofgetOffsetandgetLengthshould be used.- Returns:
- a byte array reference.
- See Also:
getOffset(),getLength(),setData(byte[])
-
setData
public void setData(byte[] data)Updates the array reference that will be returned by subsequent calls to thegetDatamethod.- Parameters:
data- a byte array reference containing the new data value.- See Also:
getData()
-
getOffset
public int getOffset()Returns the offset within the byte array returned bygetDataat which the data of interest start.- Returns:
- an int offset.
- See Also:
getData(),getLength(),setOffset(int)
-
setOffset
public void setOffset(int offset)Updates the value that will be returned by subsequent calls to thegetOffsetmethod.- Parameters:
offset- an int containing the new offset value.- See Also:
getOffset()
-
getLength
public int getLength()Returns the length of the data of interest within the byte array returned bygetData.- Returns:
- an int length.
- See Also:
getData(),getOffset(),setLength(int)
-
setLength
public void setLength(int length)Updates the value that will be returned by subsequent calls to thegetLengthmethod.- Parameters:
length- an int containing the new length value.- See Also:
getLength()
-