A FIFO implemented on top of csArray, but faster than using just a single array.
More...
#include <csutil/fifo.h>
List of all members.
Public Member Functions |
T & | Bottom () |
| Return the last element.
|
bool | Contains (T const &what) |
| Linearly search for an item.
|
| csFIFO (size_t icapacity=0, const CapacityHandler &ch=CapacityHandler()) |
| Construct the FIFO.
|
bool | Delete (T const &what) |
| Linearly search for an item and delete it.
|
void | DeleteAll () |
| Delete all items.
|
size_t | GetSize () const |
| Return the number of elements in the FIFO.
|
size_t | Length () const |
| Return the number of elements in the FIFO.
|
T | PopBottom () |
| Return and remove the last element.
|
T | PopTop () |
| Return and remove the first element.
|
void | Push (T const &what) |
| Push an element onto the FIFO.
|
T & | Top () |
| Return the first element.
|
Detailed Description
template<class T, class ElementHandler = csArrayElementHandler<T>, class MemoryAllocator = CS::Container::ArrayAllocDefault, class CapacityHandler = csArrayCapacityFixedGrow<16>>
class csFIFO< T, ElementHandler, MemoryAllocator, CapacityHandler >
A FIFO implemented on top of csArray, but faster than using just a single array.
Definition at line 36 of file fifo.h.
Constructor & Destructor Documentation
template<class T, class ElementHandler = csArrayElementHandler<T>, class MemoryAllocator = CS::Container::ArrayAllocDefault, class CapacityHandler = csArrayCapacityFixedGrow<16>>
csFIFO< T, ElementHandler, MemoryAllocator, CapacityHandler >::csFIFO |
( |
size_t |
icapacity = 0 , |
|
|
const CapacityHandler & |
ch = CapacityHandler() |
|
) |
| [inline] |
Construct the FIFO.
See csArray documentation for meaning of parameters.
Definition at line 51 of file fifo.h.
Member Function Documentation
template<class T, class ElementHandler = csArrayElementHandler<T>, class MemoryAllocator = CS::Container::ArrayAllocDefault, class CapacityHandler = csArrayCapacityFixedGrow<16>>
T& csFIFO< T, ElementHandler, MemoryAllocator, CapacityHandler >::Bottom |
( |
| ) |
[inline] |
Return the last element.
Definition at line 114 of file fifo.h.
template<class T, class ElementHandler = csArrayElementHandler<T>, class MemoryAllocator = CS::Container::ArrayAllocDefault, class CapacityHandler = csArrayCapacityFixedGrow<16>>
bool csFIFO< T, ElementHandler, MemoryAllocator, CapacityHandler >::Contains |
( |
T const & |
what | ) |
[inline] |
Linearly search for an item.
- Returns:
- Whether the item was found.
Definition at line 166 of file fifo.h.
template<class T, class ElementHandler = csArrayElementHandler<T>, class MemoryAllocator = CS::Container::ArrayAllocDefault, class CapacityHandler = csArrayCapacityFixedGrow<16>>
bool csFIFO< T, ElementHandler, MemoryAllocator, CapacityHandler >::Delete |
( |
T const & |
what | ) |
[inline] |
Linearly search for an item and delete it.
- Returns:
- Whether the item was found and subsequently deleled.
Definition at line 157 of file fifo.h.
template<class T, class ElementHandler = csArrayElementHandler<T>, class MemoryAllocator = CS::Container::ArrayAllocDefault, class CapacityHandler = csArrayCapacityFixedGrow<16>>
void csFIFO< T, ElementHandler, MemoryAllocator, CapacityHandler >::DeleteAll |
( |
| ) |
[inline] |
Delete all items.
Definition at line 173 of file fifo.h.
template<class T, class ElementHandler = csArrayElementHandler<T>, class MemoryAllocator = CS::Container::ArrayAllocDefault, class CapacityHandler = csArrayCapacityFixedGrow<16>>
size_t csFIFO< T, ElementHandler, MemoryAllocator, CapacityHandler >::GetSize |
( |
| ) |
const [inline] |
Return the number of elements in the FIFO.
Definition at line 138 of file fifo.h.
template<class T, class ElementHandler = csArrayElementHandler<T>, class MemoryAllocator = CS::Container::ArrayAllocDefault, class CapacityHandler = csArrayCapacityFixedGrow<16>>
size_t csFIFO< T, ElementHandler, MemoryAllocator, CapacityHandler >::Length |
( |
| ) |
const [inline] |
template<class T, class ElementHandler = csArrayElementHandler<T>, class MemoryAllocator = CS::Container::ArrayAllocDefault, class CapacityHandler = csArrayCapacityFixedGrow<16>>
T csFIFO< T, ElementHandler, MemoryAllocator, CapacityHandler >::PopBottom |
( |
| ) |
[inline] |
Return and remove the last element.
Definition at line 95 of file fifo.h.
template<class T, class ElementHandler = csArrayElementHandler<T>, class MemoryAllocator = CS::Container::ArrayAllocDefault, class CapacityHandler = csArrayCapacityFixedGrow<16>>
T csFIFO< T, ElementHandler, MemoryAllocator, CapacityHandler >::PopTop |
( |
| ) |
[inline] |
Return and remove the first element.
Definition at line 58 of file fifo.h.
template<class T, class ElementHandler = csArrayElementHandler<T>, class MemoryAllocator = CS::Container::ArrayAllocDefault, class CapacityHandler = csArrayCapacityFixedGrow<16>>
void csFIFO< T, ElementHandler, MemoryAllocator, CapacityHandler >::Push |
( |
T const & |
what | ) |
[inline] |
Push an element onto the FIFO.
Definition at line 132 of file fifo.h.
template<class T, class ElementHandler = csArrayElementHandler<T>, class MemoryAllocator = CS::Container::ArrayAllocDefault, class CapacityHandler = csArrayCapacityFixedGrow<16>>
T& csFIFO< T, ElementHandler, MemoryAllocator, CapacityHandler >::Top |
( |
| ) |
[inline] |
Return the first element.
Definition at line 76 of file fifo.h.
The documentation for this class was generated from the following file: