osg::fast_back_stack< T > Class Template Reference

List of all members.

Public Member Functions

 fast_back_stack ()
 fast_back_stack (const fast_back_stack &fbs)
 fast_back_stack (const T &value)
fast_back_stackoperator= (const fast_back_stack &fbs)
void clear ()
bool empty () const
unsigned int size () const
T & back ()
const T & back () const
void push_back ()
void push_back (const T &value)
void pop_back ()

Public Attributes

_value
std::vector< T > _stack
unsigned int _size

Detailed Description

template<class T>
class osg::fast_back_stack< T >

Simple stack implementation that keeps the back() cached locally for fast access rather than at the back of the vector which is the traditional stack implementation. A conventional std::vector<> stores the rest of the stack. Although fast_back_stack contains a stl container it only implements the back push_back(),pop_back() and back() methods so is not as general purpose as stl stack implementation. The focus of the fast_back_stack is purely to maximize the speed at which the back can be accessed.


Constructor & Destructor Documentation

template<class T>
osg::fast_back_stack< T >::fast_back_stack (  )  [inline]

template<class T>
osg::fast_back_stack< T >::fast_back_stack ( const fast_back_stack< T > &  fbs  )  [inline]

template<class T>
osg::fast_back_stack< T >::fast_back_stack ( const T &  value  )  [inline]


Member Function Documentation

template<class T>
const T& osg::fast_back_stack< T >::back (  )  const [inline]

template<class T>
T& osg::fast_back_stack< T >::back (  )  [inline]

template<class T>
void osg::fast_back_stack< T >::clear (  )  [inline]

template<class T>
bool osg::fast_back_stack< T >::empty (  )  const [inline]

template<class T>
fast_back_stack& osg::fast_back_stack< T >::operator= ( const fast_back_stack< T > &  fbs  )  [inline]

template<class T>
void osg::fast_back_stack< T >::pop_back (  )  [inline]

template<class T>
void osg::fast_back_stack< T >::push_back ( const T &  value  )  [inline]

template<class T>
void osg::fast_back_stack< T >::push_back (  )  [inline]

template<class T>
unsigned int osg::fast_back_stack< T >::size (  )  const [inline]


Member Data Documentation

template<class T>
unsigned int osg::fast_back_stack< T >::_size

template<class T>
std::vector<T> osg::fast_back_stack< T >::_stack

template<class T>
T osg::fast_back_stack< T >::_value


The documentation for this class was generated from the following file:
Generated on Sun Oct 1 13:17:05 2006 for openscenegraph by  doxygen 1.4.7