grow_shrink_stack< Config_ > Class Template Reference
[Internals]

Efficient implementation that uses prefetching and overlapping using internal buffers. More...

#include <stack.h>

Inherits noncopyable.

List of all members.

Public Types

enum  { blocks_per_page = cfg::blocks_per_page }
typedef Config_ cfg
typedef cfg::value_type value_type
typedef cfg::alloc_strategy alloc_strategy_type
typedef cfg::size_type size_type
typedef typed_block
< (8 *1024), value_type 
block_type )
typedef BID< (8 *1024) bid_type )

Public Member Functions

void swap (grow_shrink_stack &obj)
template<class stack_type >
 grow_shrink_stack (const stack_type &stack_)
 Construction from a stack.
size_type size () const
bool empty () const
value_type & top ()
const value_type & top () const
void push (const value_type &val)
void pop ()

Detailed Description

template<class Config_>
class grow_shrink_stack< Config_ >

Efficient implementation that uses prefetching and overlapping using internal buffers.

Use it if your access pattern consists of many repeated push'es and pop's For semantics of the methods see documentation of the STL std::stack.

Warning:
The amortized complexity of operation is not O(1/DB), rather O(DB)

Constructor & Destructor Documentation

template<class Config_ >
template<class stack_type >
grow_shrink_stack< Config_ >::grow_shrink_stack ( const stack_type &  stack_  )  [inline]

Construction from a stack.

Parameters:
stack_ stack object (could be external or internal, important is that it must have a copy constructor, top() and pop() methods )

The documentation for this class was generated from the following file:

Generated on 10 Jun 2014 for Stxxl by  doxygen 1.6.1