Homepage | Demos | Overview | Downloads | Tutorials | Reference | Credits |
ListMemBuf< T_t, MAX, idx_t > Class Template Reference#include <ListMemBuf.h>
Inheritance diagram for ListMemBuf< T_t, MAX, idx_t >: ![]() Detailed Descriptiontemplate<class T_t, unsigned int MAX, class idx_t = unsigned short>
Provides some degree of dynamic allocation of a templated type from a buffer of set size.
|
Public Types | |
typedef T_t | T |
Allows outside access to storage type. | |
typedef idx_t | index_t |
Allows outside access to index type. | |
Public Member Functions | |
ListMemBuf () | |
constructor | |
index_t | getMaxCapacity () const |
returns the maximum number of objects which can be used at any given time | |
index_t | size () const |
returns the current number of objects in use | |
index_t | countf () const |
for debugging, should equal size | |
index_t | countb () const |
for debugging, should equal size | |
bool | empty () const |
returns true if no objects are in use | |
T & | operator[] (unsigned int x) |
allows direct access to elements - be careful, can access 'free' elements this way | |
const T & | operator[] (unsigned int x) const |
allows direct access to elements - be careful, can access 'free' elements this way | |
index_t | begin () const |
returns index of first used entry | |
T & | front () |
returns reference to first used entry | |
const T & | front () const |
returns const reference to first used entry | |
index_t | end () const |
returns the one-past-end index | |
T & | back () |
returns reference to last used entry | |
const T & | back () const |
returns const reference to last used entry | |
index_t | new_front () |
pushes a 'blank' entry on the front of the used list | |
index_t | push_front (const T &data) |
pushes an entry on the front of the used chain and assigns data to it | |
void | pop_front () |
pops the front of the used chain | |
void | pop_front (T &ret) |
pops the front of the chain into ret | |
index_t | new_back () |
pushes a 'blank' entry on the back of the used list | |
index_t | push_back (const T &data) |
pushes an entry on the back of the used chain and assigns data to it | |
void | pop_back () |
pops the last of the used chain | |
void | pop_back (T &ret) |
pops the last of the used chain into ret | |
index_t | new_before (index_t x) |
inserts a 'blank' entry before element x in the used chain | |
index_t | push_before (index_t x, const T &data) |
inserts a 'blank' entry before element x in the used chain and assigns data to it | |
index_t | new_after (index_t x) |
inserts a 'blank' entry after element x in the used chain | |
index_t | push_after (index_t x, const T &data) |
inserts a 'blank' entry after element x in the used chain and assigns data to it | |
void | erase (index_t x) |
removes element x from the used chain | |
void | clear () |
frees all used entries | |
void | swap (index_t a, index_t b) |
swaps the two entries' position in the list | |
index_t | next (index_t x) const |
returns the next used element following x | |
index_t | prev (index_t x) const |
returns the preceeding used element following x | |
Static Public Attributes | |
const unsigned int | MAX_ENTRIES = MAX |
Allows outside access to number of entries. | |
Protected Member Functions | |
index_t | pop_free () |
removes an element from the front of the free list, returns its index | |
void | push_free (index_t x) |
pushes x onto the back of the free list | |
Protected Attributes | |
entry_t | entries [MAX_ENTRIES] |
the main block of data | |
index_t | activeBegin |
beginning of used chain | |
index_t | activeBack |
end of used chain | |
index_t | freeBegin |
beginning of free chain | |
index_t | freeBack |
end of free chain | |
index_t | cursize |
current number of used elements |
|
|
Allows outside access to storage type.
Definition at line 26 of file ListMemBuf.h. |
|
constructor
Definition at line 94 of file ListMemBuf.h. |
|
returns const reference to last used entry
Definition at line 47 of file ListMemBuf.h. |
|
returns reference to last used entry
Definition at line 46 of file ListMemBuf.h. Referenced by MotionSequenceMC< MAXMOVE >::clear(), WaypointEngine< MAX_WAY >::fixArc(), WaypointEngine< MAX_WAY >::LoadBuffer(), and SoundManager::selectChannels(). |
|
|
frees all used entries
Definition at line 210 of file ListMemBuf.h. Referenced by MotionSequenceMC< MAXMOVE >::clear(), MotionManager::getOutputs(), and WaypointEngine< MAX_WAY >::LoadBuffer(). |
|
for debugging, should equal size
Definition at line 112 of file ListMemBuf.h. |
|
for debugging, should equal size
Definition at line 103 of file ListMemBuf.h. |
|
returns true if no objects are in use
Definition at line 36 of file ListMemBuf.h. Referenced by SoundManager::StopPlay(), and MotionManager::updatePIDs(). |
|
|
removes element x from the used chain
Definition at line 194 of file ListMemBuf.h. Referenced by SoundManager::endPlay(), MotionSequenceMC< MAXMOVE >::eraseKeyFrame(), SoundManager::PausePlay(), MotionManager::push_free(), SoundManager::Release(), MotionManager::setPID(), and SoundManager::StopPlay(). |
|
returns const reference to first used entry
Definition at line 43 of file ListMemBuf.h. |
|
returns reference to first used entry
Definition at line 42 of file ListMemBuf.h. Referenced by WaypointEngine< MAX_WAY >::go(), WaypointEngine< MAX_WAY >::SaveBuffer(), and MotionManager::updatePIDs(). |
|
returns the maximum number of objects which can be used at any given time
Definition at line 32 of file ListMemBuf.h. Referenced by MotionSequenceMC< MAXMOVE >::getMaxFrames(). |
|
inserts a 'blank' entry after element x in the used chain
Definition at line 62 of file ListMemBuf.h. |
|
pushes a 'blank' entry on the back of the used list
Definition at line 137 of file ListMemBuf.h. Referenced by MotionSequenceMC< MAXMOVE >::clear(), and ListMemBuf< T_t, MAX, idx_t >::new_before(). |
|
inserts a 'blank' entry before element x in the used chain
Definition at line 153 of file ListMemBuf.h. |
|
pushes a 'blank' entry on the front of the used list
Definition at line 121 of file ListMemBuf.h. Referenced by SoundManager::Chain(), SoundManager::ChainBuffer(), SoundManager::ChainFile(), SoundManager::LoadBuffer(), ListMemBuf< T_t, MAX, idx_t >::new_before(), MotionSequenceMC< MAXMOVE >::newKeyFrame(), SoundManager::Play(), and MotionManager::pop_free(). |
|
|
allows direct access to elements - be careful, can access 'free' elements this way
Definition at line 39 of file ListMemBuf.h. |
|
allows direct access to elements - be careful, can access 'free' elements this way
Definition at line 38 of file ListMemBuf.h. Referenced by ListMemBuf< T_t, MAX, idx_t >::push_free(). |
|
pops the last of the used chain into ret
Definition at line 57 of file ListMemBuf.h. |
|
pops the last of the used chain
Definition at line 182 of file ListMemBuf.h. Referenced by ListMemBuf< T_t, MAX, idx_t >::erase(). |
|
removes an element from the front of the free list, returns its index free list is a queue... pop front, push back - hopefully more robust with multi-threads is purposely sloppy with unused links, a little faster Definition at line 306 of file ListMemBuf.h. Referenced by ListMemBuf< T_t, MAX, idx_t >::new_back(), ListMemBuf< T_t, MAX, idx_t >::new_before(), and ListMemBuf< T_t, MAX, idx_t >::new_front(). |
|
pops the front of the chain into ret
Definition at line 52 of file ListMemBuf.h. |
|
pops the front of the used chain
Definition at line 170 of file ListMemBuf.h. Referenced by SoundManager::ChainBuffer(), SoundManager::ChainFile(), ListMemBuf< T_t, MAX, idx_t >::erase(), and MotionManager::updatePIDs(). |
|
returns the preceeding used element following x
Definition at line 71 of file ListMemBuf.h. Referenced by MotionSequenceMC< MAXMOVE >::clear(), ListMemBuf< T_t, MAX, idx_t >::countb(), WaypointEngine< MAX_WAY >::fixArc(), SoundManager::selectChannels(), MotionSequenceMC< MAXMOVE >::setRange(), and SoundManager::StopPlay(). |
|
inserts a 'blank' entry after element x in the used chain and assigns data to it
Definition at line 63 of file ListMemBuf.h. |
|
pushes an entry on the back of the used chain and assigns data to it
Definition at line 55 of file ListMemBuf.h. Referenced by WaypointEngine< MAX_WAY >::addAbsoluteWaypoint(), WaypointEngine< MAX_WAY >::addEgocentricWaypoint(), WaypointEngine< MAX_WAY >::addOffsetWaypoint(), SoundManager::selectChannels(), and MotionManager::setPID(). |
|
inserts a 'blank' entry before element x in the used chain and assigns data to it
Definition at line 60 of file ListMemBuf.h. |
|
pushes x onto the back of the free list
Definition at line 322 of file ListMemBuf.h. Referenced by ListMemBuf< T_t, MAX, idx_t >::erase(), ListMemBuf< T_t, MAX, idx_t >::ListMemBuf(), ListMemBuf< T_t, MAX, idx_t >::pop_back(), and ListMemBuf< T_t, MAX, idx_t >::pop_front(). |
|
pushes an entry on the front of the used chain and assigns data to it
Definition at line 50 of file ListMemBuf.h. Referenced by SoundManager::Play(), SoundManager::ResumePlay(), and MotionManager::setOutput(). |
|
returns the current number of objects in use
Definition at line 33 of file ListMemBuf.h. Referenced by SoundManager::CopyTo(), WaypointEngine< MAX_WAY >::getBinSize(), MotionSequenceMC< MAXMOVE >::getUsedFrames(), MotionManager::InitAccess(), SoundManager::PlayBuffer(), SoundManager::PlayFile(), SoundManager::selectChannels(), and WaypointEngine< MAX_WAY >::setTargetWaypoint(). |
|
swaps the two entries' position in the list
Definition at line 224 of file ListMemBuf.h. Referenced by MotionManager::getOutputs(). |
|
end of used chain
Definition at line 87 of file ListMemBuf.h. Referenced by ListMemBuf< T_t, MAX, idx_t >::clear(), ListMemBuf< T_t, MAX, idx_t >::new_back(), ListMemBuf< T_t, MAX, idx_t >::new_front(), ListMemBuf< T_t, MAX, idx_t >::pop_back(), ListMemBuf< T_t, MAX, idx_t >::pop_front(), and ListMemBuf< T_t, MAX, idx_t >::swap(). |
|
beginning of used chain
Definition at line 86 of file ListMemBuf.h. Referenced by ListMemBuf< T_t, MAX, idx_t >::clear(), ListMemBuf< T_t, MAX, idx_t >::new_back(), ListMemBuf< T_t, MAX, idx_t >::new_front(), ListMemBuf< T_t, MAX, idx_t >::pop_back(), ListMemBuf< T_t, MAX, idx_t >::pop_front(), and ListMemBuf< T_t, MAX, idx_t >::swap(). |
|
current number of used elements
Definition at line 90 of file ListMemBuf.h. Referenced by ListMemBuf< T_t, MAX, idx_t >::clear(), ListMemBuf< T_t, MAX, idx_t >::ListMemBuf(), ListMemBuf< T_t, MAX, idx_t >::pop_free(), and ListMemBuf< T_t, MAX, idx_t >::push_free(). |
|
|
end of free chain
Definition at line 89 of file ListMemBuf.h. Referenced by ListMemBuf< T_t, MAX, idx_t >::clear(), ListMemBuf< T_t, MAX, idx_t >::ListMemBuf(), ListMemBuf< T_t, MAX, idx_t >::pop_free(), and ListMemBuf< T_t, MAX, idx_t >::push_free(). |
|
beginning of free chain
Definition at line 88 of file ListMemBuf.h. Referenced by ListMemBuf< T_t, MAX, idx_t >::clear(), ListMemBuf< T_t, MAX, idx_t >::pop_free(), and ListMemBuf< T_t, MAX, idx_t >::push_free(). |
|
Allows outside access to number of entries.
Definition at line 28 of file ListMemBuf.h. Referenced by ListMemBuf< T_t, MAX, idx_t >::ListMemBuf(). |
Tekkotsu v2.2.1 |
Generated Tue Nov 23 16:37:48 2004 by Doxygen 1.3.9.1 |