Class IIOByteBuffer
- 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
| Constructor | Description |
|---|---|
IIOByteBuffer(byte[] data,
int offset,
int length) | Constructs an |
Method Summary
| Modifier and Type | Method | Description |
|---|---|---|
byte[] | getData() | Returns a reference to the byte array. |
int | getLength() | Returns the length of the data of interest within the byte array returned by |
int | getOffset() | Returns the offset within the byte array returned by |
void | setData(byte[] data) | Updates the array reference that will be returned by subsequent calls to the |
void | setLength(int length) | Updates the value that will be returned by subsequent calls to the |
void | setOffset(int offset) | Updates the value that will be returned by subsequent calls to the |
Methods declared in class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait Constructor Detail
IIOByteBuffer
public IIOByteBuffer(byte[] data,
int offset,
int length) Constructs an IIOByteBuffer that 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 Detail
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 of getOffset and getLength should 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 the getData method.
- 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 by getData at 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 the getOffset method.
- 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 by getData.
- 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 the getLength method.
- Parameters:
-
length- an int containing the new length value. - See Also:
getLength()