Package org.ddogleg.struct
Class CircularArray_I32
java.lang.Object
org.ddogleg.struct.CircularArray_I32
A circular queue which can grow as needed.
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
add
(int value) Adds a new element to the queue.void
addW
(int value) Adds a new element to the queue, but if the queue is full write over the oldest element.int
get
(int index) Returns the element in the queue at index.int
head()
Value of the first element in the queueboolean
isEmpty()
boolean
isFull()
int
popHead()
Returns and removes the first element from the queue.int
popTail()
Returns and removes the last element from the queue.void
Removes the first elementvoid
Removes the last elementvoid
reset()
int
size()
int
tail()
Value of the last element in the queue
-
Field Details
-
data
public int[] data -
start
public int start -
size
public int size
-
-
Constructor Details
-
CircularArray_I32
public CircularArray_I32() -
CircularArray_I32
public CircularArray_I32(int dataSize)
-
-
Method Details
-
reset
public void reset() -
popHead
public int popHead()Returns and removes the first element from the queue.- Returns:
- first element in the queue
-
popTail
public int popTail()Returns and removes the last element from the queue.- Returns:
- last element in the queue
-
head
public int head()Value of the first element in the queue -
tail
public int tail()Value of the last element in the queue -
removeHead
public void removeHead()Removes the first element -
removeTail
public void removeTail()Removes the last element -
get
public int get(int index) Returns the element in the queue at index. No bounds check is performed and a garbage value might be returned.- Parameters:
index
- Which element in the queue you wish to access- Returns:
- the element's value
-
add
public void add(int value) Adds a new element to the queue. If the queue isn't large enough to store this value then its internal data array will grow- Parameters:
value
- Value which is to be added
-
addW
public void addW(int value) Adds a new element to the queue, but if the queue is full write over the oldest element.- Parameters:
value
- Value which is to be added
-
size
public int size() -
isEmpty
public boolean isEmpty() -
isFull
public boolean isFull()
-