#include <iso_data_ringbuffer.h>
Collaboration diagram for iso::data::RingBuffer< Type >:
Public Member Functions | |
RingBuffer (unsigned int pSize) | |
parameter based constructor | |
RingBuffer (const Type &pSampleElement, int pSize) | |
parameter based constructor | |
virtual | ~RingBuffer () |
destructor | |
Type & | operator[] (unsigned int pIndex) |
access nth element | |
const Type & | operator[] (unsigned int pIndex) const |
access nth element | |
void | update (const Type &pElement) |
update ringbuffer with new element | |
unsigned int | size () const |
get the number of elements available in this ringbuffer | |
Protected Member Functions | |
RingBuffer () | |
do not allow default constructor! | |
virtual void | allocate () |
creates ring buffer elements | |
virtual void | allocate (const Type &pSampleElement) |
creates ring buffer elements | |
virtual void | free () |
needs to be called, when contained elements | |
Protected Attributes | |
Type ** | mElements |
array elements | |
int | mSize |
number of elements | |
int | mIndex |
index to the newest element |
Ring Buffer Class.
Elements must possess public default constructor, copy constructor and assigment operator.
Created by John Flury on 22/03/07. Copyright 2007 John Flury All rights reserved.
iso::data::RingBuffer< Type >::RingBuffer | ( | unsigned int | pSize | ) |
parameter based constructor
pSize | number of ring buffer elements |
iso::data::RingBuffer< Type >::RingBuffer | ( | const Type & | pSampleElement, | |
int | pSize | |||
) |
parameter based constructor
pSampleElement | sample element | |
pSize | number of ring buffer elements |
iso::data::RingBuffer< Type >::~RingBuffer | ( | ) | [virtual] |
destructor
iso::data::RingBuffer< Type >::RingBuffer | ( | ) | [protected] |
do not allow default constructor!
Type & iso::data::RingBuffer< Type >::operator[] | ( | unsigned int | pIndex | ) | [inline] |
access nth element
pIndex | nth element's index |
const Type & iso::data::RingBuffer< Type >::operator[] | ( | unsigned int | pIndex | ) | const [inline] |
access nth element
pIndex | nth element's index |
void iso::data::RingBuffer< Type >::update | ( | const Type & | pElement | ) |
update ringbuffer with new element
pElement | new element |
unsigned int iso::data::RingBuffer< Type >::size | ( | ) | const |
get the number of elements available in this ringbuffer
void iso::data::RingBuffer< Type >::allocate | ( | ) | [protected, virtual] |
creates ring buffer elements
void iso::data::RingBuffer< Type >::allocate | ( | const Type & | pSampleElement | ) | [protected, virtual] |
creates ring buffer elements
pSampleElement | sample element |
void iso::data::RingBuffer< Type >::free | ( | ) | [protected, virtual] |
needs to be called, when contained elements
Type** iso::data::RingBuffer< Type >::mElements [protected] |
array elements
int iso::data::RingBuffer< Type >::mSize [protected] |
number of elements
int iso::data::RingBuffer< Type >::mIndex [protected] |
index to the newest element