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 Fri Oct 13 17:03:06 2006 for openscenegraph by  doxygen 1.4.6