STXXL  1.4.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
stack.h File Reference

Go to the source code of this file.

Classes

class  stxxl::grow_shrink_stack< StackConfig >
 Efficient implementation that uses prefetching and overlapping using internal buffers. More...
 
class  stxxl::grow_shrink_stack2< StackConfig >
 Efficient implementation that uses prefetching and overlapping using (shared) buffers pools. More...
 
class  stxxl::migrating_stack< CritSize, ExternalStack, InternalStack >
 A stack that migrates from internal memory to external when its size exceeds a certain threshold. More...
 
class  stxxl::normal_stack< StackConfig >
 External stack container. Introduction to stack container: see STXXL Stack tutorial.
Design and Internals of stack container: see Stack Conservative implementation. Fits best if your access pattern consists of irregularly mixed push'es and pop's. For semantics of the methods see documentation of the STL std::stack.
To gain full bandwidth of disks StackConfig::BlocksPerPage must >= number of disks
More...
 
struct  stxxl::stack_config_generator< ValueType, BlocksPerPage, BlockSize, AllocStr, SizeType >
 
class  stxxl::STACK_GENERATOR< ValueType, Externality, Behaviour, BlocksPerPage, BlockSize, IntStackType, MigrCritSize, AllocStr, SizeType >
 Stack type generator
Introduction to stack container: see STXXL Stack tutorial.
Design and Internals of stack container: see Stack. More...
 

Namespaces

 stxxl
 STXXL library namespace
 

Enumerations

enum  stxxl::stack_behaviour { stxxl::normal, stxxl::grow_shrink, stxxl::grow_shrink2 }
 
enum  stxxl::stack_externality { stxxl::external, stxxl::migrating, stxxl::internal }
 

Functions

template<class StackConfig >
void std::swap (stxxl::normal_stack< StackConfig > &a, stxxl::normal_stack< StackConfig > &b)
 
template<class StackConfig >
void std::swap (stxxl::grow_shrink_stack< StackConfig > &a, stxxl::grow_shrink_stack< StackConfig > &b)
 
template<class StackConfig >
void std::swap (stxxl::grow_shrink_stack2< StackConfig > &a, stxxl::grow_shrink_stack2< StackConfig > &b)
 
template<stxxl::unsigned_type CritSize, class ExternalStack , class InternalStack >
void std::swap (stxxl::migrating_stack< CritSize, ExternalStack, InternalStack > &a, stxxl::migrating_stack< CritSize, ExternalStack, InternalStack > &b)