Package org.applecommander.util
Class DataBuffer
java.lang.Object
org.applecommander.util.DataBuffer
A DataBuffer is a bunch of bytes with Apple II knowledge.
This shares the technical details as well as the actual image data
across all components in the application. There are two sets of
accessors get/put the index the buffer and read/write that
navigate via position. Note that read and write can overrun
the buffer and generate an error.
-
Method Summary
Modifier and TypeMethodDescriptionstatic DataBuffer
create
(int size) void
get
(int position, byte[] data) getFixedLengthString
(int index, int length) int
getInt
(int index) int
getIntBE
(int index) int
getUnsignedByte
(int index) int
getUnsignedShort
(int index) int
getUnsignedShort3
(int index) Retrieve a 3 byte number (as in ProDOS EOF values).int
getUnsignedShortBE
(int index) boolean
boolean
isBitSet
(int index, int bit) Determine if a specific bit is set.int
limit()
void
limit
(int newLimit) boolean
matches
(int offset, byte... data) int
position()
void
position
(int n) void
put
(int offset, DataBuffer data) void
putByte
(int offset, int value) void
putBytes
(int offset, int... values) void
read
(byte[] data) readBuffer
(int length) readFixedLengthString
(int length) int
readInt()
int
Read an int but in big endian format.readPascalString
(int maxLength) int
int
int
Read an short but in big endian format.slice
(int offset, int length) static DataBuffer
wrap
(byte[] data) static DataBuffer
wrap
(int... bytes) void
writeByte
(int value)
-
Method Details
-
wrap
-
wrap
-
create
-
slice
-
limit
public int limit() -
limit
public void limit(int newLimit) -
matches
public boolean matches(int offset, byte... data) -
getUnsignedByte
public int getUnsignedByte(int index) -
getUnsignedShort
public int getUnsignedShort(int index) -
getUnsignedShort3
public int getUnsignedShort3(int index) Retrieve a 3 byte number (as in ProDOS EOF values). -
getUnsignedShortBE
public int getUnsignedShortBE(int index) -
getInt
public int getInt(int index) -
getIntBE
public int getIntBE(int index) -
get
public void get(int position, byte[] data) -
getFixedLengthString
-
put
-
putByte
public void putByte(int offset, int value) -
putBytes
public void putBytes(int offset, int... values) -
isBitSet
public boolean isBitSet(int index, int bit) Determine if a specific bit is set. -
hasRemaining
public boolean hasRemaining() -
position
public int position() -
position
public void position(int n) -
readUnsignedByte
public int readUnsignedByte() -
readUnsignedShort
public int readUnsignedShort() -
readUnsignedShortBE
public int readUnsignedShortBE()Read an short but in big endian format. Used for marker bytes so they "look" as expected in program code. -
read
public void read(byte[] data) -
readInt
public int readInt() -
readIntBE
public int readIntBE()Read an int but in big endian format. Used for marker bytes so they "look" as expected in program code. -
readBuffer
-
readFixedLengthString
-
readPascalString
-
writeByte
public void writeByte(int value)
-