|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectcom.virtuosotechnologies.lib.ring.AbstractRing
com.virtuosotechnologies.lib.ring.ByteRing
Circular buffer of bytes. This class is not thread-safe.
| Constructor Summary | |
ByteRing()
Constructs an empty buffer with a capacity of 16. |
|
ByteRing(int initialCapacity)
Constructs an empty buffer with the specified initial capacity. |
|
| Method Summary | |
protected Object |
allocateArray(int capacity)
Override this method to allocate an array of the desired type. |
protected void |
clearArrayValues(Object array,
int start,
int end)
Override this method to clear the specified values in the array. |
protected int |
getArrayLength(Object array)
Override this method to get the length of the array. |
byte |
getByte(int index)
Gets the value of a particular byte |
byte[] |
getRange(int start,
int end)
Gets a range of values as a new array. |
void |
getRange(int start,
int end,
byte[] destination,
int pos)
Gets a range of values and copies it into the given array. |
protected void |
initArrayValues(Object array,
int start,
int end)
Override this method to initialize the specified values in the array. |
byte |
popBack()
Pop a byte from the back. |
byte[] |
popBack(int size)
Pop a byte array from the back. |
void |
popBack(int size,
byte[] buffer,
int pos)
Pop a byte array from the back. |
byte |
popFront()
Pop a byte from the front. |
byte[] |
popFront(int size)
Pop a byte array from the front. |
void |
popFront(int size,
byte[] buffer,
int pos)
Pop a byte array from the front. |
void |
pushBack(byte b)
Push a byte to the back |
void |
pushBack(byte[] array)
Push a byte array to the back |
void |
pushFront(byte b)
Push a byte to the front |
void |
pushFront(byte[] array)
Push a byte array to the front |
void |
setByte(int index,
byte value)
Sets the value of a particular byte |
void |
setRange(int start,
int end,
byte[] source,
int pos)
Sets a range of values from the given array. |
| Methods inherited from class com.virtuosotechnologies.lib.ring.AbstractRing |
addBack, addFront, addMiddle, calculateRawIndex, clear, ensureCapacity, getRangeRaw, getRawArray, getSize, removeBack, removeFront, removeMiddle, setRangeRaw, trimToSize |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
public ByteRing(int initialCapacity)
initialCapacity - the initial capacity of the buffer.
IllegalArgumentException - if the specified initial capacity
is negativepublic ByteRing()
| Method Detail |
protected Object allocateArray(int capacity)
allocateArray in class AbstractRingcapacity - size of the array to allocate
protected int getArrayLength(Object array)
getArrayLength in class AbstractRingarray - an array object
protected void clearArrayValues(Object array,
int start,
int end)
clearArrayValues in class AbstractRingarray - an array objectstart - the index of the first item to clearend - one more than the index of the last item to clear
protected void initArrayValues(Object array,
int start,
int end)
initArrayValues in class AbstractRingarray - an array objectstart - the index of the first item to initializeend - one more than the index of the last item to initializepublic byte getByte(int index)
index - index to query
public void setByte(int index,
byte value)
index - index to setvalue - the byte
public void getRange(int start,
int end,
byte[] destination,
int pos)
start - starting position in the bufferend - one more than the ending position in the bufferdestination - destination arraypos - starting position in the destination array
public byte[] getRange(int start,
int end)
start - starting position in the bufferend - one more than the ending position in the buffer
public void setRange(int start,
int end,
byte[] source,
int pos)
start - starting position in the bufferend - one more than the ending position in the buffersource - source arraypos - starting position in the source arraypublic void pushFront(byte b)
b - the bytepublic void pushFront(byte[] array)
array - the arraypublic void pushBack(byte b)
b - the bytepublic void pushBack(byte[] array)
array - the arraypublic byte popBack()
NoSuchElementException - ring is emptypublic byte[] popBack(int size)
size - number of bytes to pop.
NoSuchElementException - ring isn't large enough
public void popBack(int size,
byte[] buffer,
int pos)
size - number of bytes to pop.buffer - the array to populatepos - position in the buffer
NoSuchElementException - ring isn't large enoughpublic byte popFront()
NoSuchElementException - ring is emptypublic byte[] popFront(int size)
size - number of bytes to pop.
NoSuchElementException - ring isn't large enough
public void popFront(int size,
byte[] buffer,
int pos)
size - number of bytes to pop.buffer - the array to populatepos - position in the buffer
NoSuchElementException - ring isn't large enough
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||