STXXL  1.4-dev
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
stream.h File Reference

Go to the source code of this file.

Classes

class  stxxl::stream::generator2stream< Generator, T >
 A model of stream that outputs data from an adaptable generator functor. For convenience use streamify function instead of direct instantiation of generator2stream . More...
 
class  stxxl::stream::iterator2stream< InputIterator >
 A model of stream that retrieves the data from an input iterator. For convenience use streamify function instead of direct instantiation of iterator2stream . More...
 
class  stxxl::stream::make_tuple< Input1, Input2, Input3, Input4, Input5, Input6 >
 Creates stream of 6-tuples from 6 input streams. More...
 
class  stxxl::stream::make_tuple< Input1, Input2, Input3, Input4, Input5, Stopper >
 Creates stream of 5-tuples from 5 input streams. More...
 
class  stxxl::stream::make_tuple< Input1, Input2, Input3, Input4, Stopper, Stopper >
 Creates stream of 4-tuples from 4 input streams. More...
 
class  stxxl::stream::make_tuple< Input1, Input2, Input3, Stopper, Stopper, Stopper >
 Creates stream of 3-tuples from 3 input streams. More...
 
class  stxxl::stream::make_tuple< Input1, Input2, Stopper, Stopper, Stopper, Stopper >
 Creates stream of 2-tuples (pairs) from 2 input streams. More...
 
struct  stxxl::stream::Stopper
 
struct  stxxl::stream::streamify_traits< InputIterator >
 Traits class of streamify function. More...
 
struct  stxxl::stream::streamify_traits< stxxl::const_vector_iterator< ValueType, AllocStr, SizeType, DiffType, BlockSize, PagerType, PageSize > >
 
struct  stxxl::stream::streamify_traits< stxxl::vector_iterator< ValueType, AllocStr, SizeType, DiffType, BlockSize, PagerType, PageSize > >
 
class  stxxl::stream::transform< Operation, Input1, Input2, Input3, Input4, Input5, Input6 >
 Processes (up to) 6 input streams using given operation functor. More...
 
class  stxxl::stream::transform< Operation, Input1, Input2, Input3, Input4, Input5, Stopper >
 Processes 5 input streams using given operation functor. More...
 
class  stxxl::stream::transform< Operation, Input1, Input2, Input3, Input4, Stopper, Stopper >
 Processes 4 input streams using given operation functor. More...
 
class  stxxl::stream::transform< Operation, Input1, Input2, Input3, Stopper, Stopper, Stopper >
 Processes 3 input streams using given operation functor. More...
 
class  stxxl::stream::transform< Operation, Input1, Input2, Stopper, Stopper, Stopper, Stopper >
 Processes 2 input streams using given operation functor. More...
 
class  stxxl::stream::transform< Operation, Input1, Stopper, Stopper, Stopper, Stopper, Stopper >
 Processes an input stream using given operation functor. More...
 
class  stxxl::stream::vector_iterator2stream< InputIterator >
 A model of stream that retrieves data from an external stxxl::vector iterator. It is more efficient than generic iterator2stream thanks to use of overlapping For convenience use streamify function instead of direct instantiation of vector_iterator2stream . More...
 
class  stxxl::stream::vector_iterator2stream_sr< InputIterator >
 Version of iterator2stream. Switches between vector_iterator2stream and iterator2stream . More...
 

Namespaces

 stxxl
 STXXL library namespace
 
 stxxl::stream
 Stream package subnamespace.
 

Macros

#define STXXL_VERBOSE_MATERIALIZE   STXXL_VERBOSE3
 

Functions

template<class StreamAlgorithm >
void stxxl::stream::discard (StreamAlgorithm &in)
 Reads stream content and discards it. Useful where you do not need the processed stream anymore, but are just interested in side effects, or just for debugging. More...
 
template<class OutputIterator , class StreamAlgorithm >
OutputIterator stxxl::stream::materialize (StreamAlgorithm &in, OutputIterator out)
 Stores consecutively stream content to an output iterator. More...
 
template<class OutputIterator , class StreamAlgorithm >
OutputIterator stxxl::stream::materialize (StreamAlgorithm &in, OutputIterator outbegin, OutputIterator outend)
 Stores consecutively stream content to an output iterator range until end of the stream or end of the iterator range is reached. More...
 
template<typename ValueType , typename AllocStr , typename SizeType , typename DiffType , unsigned BlockSize, typename PagerType , unsigned PageSize, class StreamAlgorithm >
stxxl::vector_iterator
< ValueType, AllocStr,
SizeType, DiffType, BlockSize,
PagerType, PageSize > 
stxxl::stream::materialize (StreamAlgorithm &in, stxxl::vector_iterator< ValueType, AllocStr, SizeType, DiffType, BlockSize, PagerType, PageSize > outbegin, stxxl::vector_iterator< ValueType, AllocStr, SizeType, DiffType, BlockSize, PagerType, PageSize > outend, unsigned_type nbuffers=0)
 Stores consecutively stream content to an output stxxl::vector iterator until end of the stream or end of the iterator range is reached. More...
 
template<typename ValueType , typename AllocStr , typename SizeType , typename DiffType , unsigned BlockSize, typename PagerType , unsigned PageSize, class StreamAlgorithm >
stxxl::vector_iterator
< ValueType, AllocStr,
SizeType, DiffType, BlockSize,
PagerType, PageSize > 
stxxl::stream::materialize (StreamAlgorithm &in, stxxl::vector_iterator< ValueType, AllocStr, SizeType, DiffType, BlockSize, PagerType, PageSize > out, unsigned_type nbuffers=0)
 Stores consecutively stream content to an output stxxl::vector iterator. More...
 
template<class InputIterator >
iterator2stream< InputIterator > stxxl::stream::streamify (InputIterator begin, InputIterator end)
 Input iterator range to stream converter. More...
 
template<typename ValueType , typename AllocStr , typename SizeType , typename DiffType , unsigned BlockSize, typename PagerType , unsigned PageSize>
vector_iterator2stream
< stxxl::vector_iterator
< ValueType, AllocStr,
SizeType, DiffType, BlockSize,
PagerType, PageSize > > 
stxxl::stream::streamify (stxxl::vector_iterator< ValueType, AllocStr, SizeType, DiffType, BlockSize, PagerType, PageSize > begin, stxxl::vector_iterator< ValueType, AllocStr, SizeType, DiffType, BlockSize, PagerType, PageSize > end, unsigned_type nbuffers=0)
 Input external stxxl::vector iterator range to stream converter. It is more efficient than generic input iterator streamify thanks to use of overlapping. More...
 
template<typename ValueType , typename AllocStr , typename SizeType , typename DiffType , unsigned BlockSize, typename PagerType , unsigned PageSize>
vector_iterator2stream
< stxxl::const_vector_iterator
< ValueType, AllocStr,
SizeType, DiffType, BlockSize,
PagerType, PageSize > > 
stxxl::stream::streamify (stxxl::const_vector_iterator< ValueType, AllocStr, SizeType, DiffType, BlockSize, PagerType, PageSize > begin, stxxl::const_vector_iterator< ValueType, AllocStr, SizeType, DiffType, BlockSize, PagerType, PageSize > end, unsigned_type nbuffers=0)
 Input external stxxl::vector const iterator range to stream converter. It is more efficient than generic input iterator streamify thanks to use of overlapping. More...
 
template<class Generator >
generator2stream< Generator > stxxl::stream::streamify (Generator gen_)
 Adaptable generator to stream converter. More...
 
template<typename ValueType , typename AllocStr , typename SizeType , typename DiffType , unsigned BlockSize, typename PagerType , unsigned PageSize>
vector_iterator2stream_sr
< stxxl::vector_iterator
< ValueType, AllocStr,
SizeType, DiffType, BlockSize,
PagerType, PageSize > > 
stxxl::stream::streamify_sr (stxxl::vector_iterator< ValueType, AllocStr, SizeType, DiffType, BlockSize, PagerType, PageSize > begin, stxxl::vector_iterator< ValueType, AllocStr, SizeType, DiffType, BlockSize, PagerType, PageSize > end, unsigned_type nbuffers=0)
 Version of streamify. Switches from vector_iterator2stream to iterator2stream for small ranges. More...
 
template<typename ValueType , typename AllocStr , typename SizeType , typename DiffType , unsigned BlockSize, typename PagerType , unsigned PageSize>
vector_iterator2stream_sr
< stxxl::const_vector_iterator
< ValueType, AllocStr,
SizeType, DiffType, BlockSize,
PagerType, PageSize > > 
stxxl::stream::streamify_sr (stxxl::const_vector_iterator< ValueType, AllocStr, SizeType, DiffType, BlockSize, PagerType, PageSize > begin, stxxl::const_vector_iterator< ValueType, AllocStr, SizeType, DiffType, BlockSize, PagerType, PageSize > end, unsigned_type nbuffers=0)
 Version of streamify. Switches from vector_iterator2stream to iterator2stream for small ranges. More...
 

Macro Definition Documentation

#define STXXL_VERBOSE_MATERIALIZE   STXXL_VERBOSE3

Definition at line 27 of file stream.h.

Referenced by stxxl::stream::materialize().