Stxxl  1.4.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Types | Public Member Functions | Private Types | Private Member Functions | Private Attributes
stxxl::stream::vector_iterator2stream< InputIterator_ > Class Template Reference

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...

#include <stream.h>

List of all members.

Public Types

typedef vector_iterator2stream
< InputIterator_ > 
Self_
typedef std::iterator_traits
< InputIterator_ >::value_type 
value_type
 Standard stream typedef.

Public Member Functions

 vector_iterator2stream (InputIterator_ begin, InputIterator_ end, unsigned_type nbuffers=0)
 vector_iterator2stream (const Self_ &a)
const value_typeoperator* () const
 Standard stream method.
const value_typeoperator-> () const
Self_operator++ ()
 Standard stream method.
bool empty () const
 Standard stream method.
virtual ~vector_iterator2stream ()

Private Types

typedef buf_istream< typename
InputIterator_::block_type,
typename
InputIterator_::bids_container_iterator > 
buf_istream_type
typedef
stxxl::compat_unique_ptr
< buf_istream_type >::result 
buf_istream_unique_ptr_type

Private Member Functions

void delete_stream ()

Private Attributes

InputIterator_ current_
InputIterator_ end_
buf_istream_unique_ptr_type in

Detailed Description

template<class InputIterator_>
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 .

Definition at line 133 of file stream.h.


Member Typedef Documentation

template<class InputIterator_>
typedef buf_istream<typename InputIterator_::block_type, typename InputIterator_::bids_container_iterator> stxxl::stream::vector_iterator2stream< InputIterator_ >::buf_istream_type [private]

Definition at line 137 of file stream.h.

template<class InputIterator_>
typedef stxxl::compat_unique_ptr<buf_istream_type>::result stxxl::stream::vector_iterator2stream< InputIterator_ >::buf_istream_unique_ptr_type [private]

Definition at line 139 of file stream.h.

template<class InputIterator_>
typedef vector_iterator2stream<InputIterator_> stxxl::stream::vector_iterator2stream< InputIterator_ >::Self_

Definition at line 148 of file stream.h.

template<class InputIterator_>
typedef std::iterator_traits<InputIterator_>::value_type stxxl::stream::vector_iterator2stream< InputIterator_ >::value_type

Standard stream typedef.

Definition at line 151 of file stream.h.


Constructor & Destructor Documentation

template<class InputIterator_>
stxxl::stream::vector_iterator2stream< InputIterator_ >::vector_iterator2stream ( InputIterator_  begin,
InputIterator_  end,
unsigned_type  nbuffers = 0 
) [inline]

Definition at line 153 of file stream.h.

template<class InputIterator_>
stxxl::stream::vector_iterator2stream< InputIterator_ >::vector_iterator2stream ( const Self_ a) [inline]

Definition at line 175 of file stream.h.

template<class InputIterator_>
virtual stxxl::stream::vector_iterator2stream< InputIterator_ >::~vector_iterator2stream ( ) [inline, virtual]

Definition at line 206 of file stream.h.


Member Function Documentation

template<class InputIterator_>
void stxxl::stream::vector_iterator2stream< InputIterator_ >::delete_stream ( ) [inline, private]

Definition at line 142 of file stream.h.

template<class InputIterator_>
bool stxxl::stream::vector_iterator2stream< InputIterator_ >::empty ( ) const [inline]

Standard stream method.

Definition at line 202 of file stream.h.

template<class InputIterator_>
const value_type& stxxl::stream::vector_iterator2stream< InputIterator_ >::operator* ( ) const [inline]

Standard stream method.

Definition at line 179 of file stream.h.

template<class InputIterator_>
Self_& stxxl::stream::vector_iterator2stream< InputIterator_ >::operator++ ( ) [inline]

Standard stream method.

Definition at line 190 of file stream.h.

References UNLIKELY.

template<class InputIterator_>
const value_type* stxxl::stream::vector_iterator2stream< InputIterator_ >::operator-> ( ) const [inline]

Definition at line 184 of file stream.h.


Member Data Documentation

template<class InputIterator_>
InputIterator_ stxxl::stream::vector_iterator2stream< InputIterator_ >::current_ [private]

Definition at line 135 of file stream.h.

template<class InputIterator_>
InputIterator_ stxxl::stream::vector_iterator2stream< InputIterator_ >::end_ [private]

Definition at line 135 of file stream.h.

template<class InputIterator_>
buf_istream_unique_ptr_type stxxl::stream::vector_iterator2stream< InputIterator_ >::in [mutable, private]

Definition at line 140 of file stream.h.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines