Stxxl  1.4.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Types | Public Member Functions | Protected Attributes | Private Types | Private Member Functions
stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ > Class Template Reference

External vector iterator, model of ext_random_access_iterator concept. More...

#include <vector.h>

Collaboration diagram for stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >:
Collaboration graph
[legend]

List of all members.

Public Types

typedef _CIterator const_iterator
typedef _Self iterator
typedef unsigned block_offset_type
typedef vector< Tp_, PgSz_,
PgTp_, BlkSize_, AllocStr_,
SzTp_ > 
vector_type
typedef
vector_type::bids_container_type 
bids_container_type
typedef
bids_container_type::iterator 
bids_container_iterator
typedef
bids_container_type::bid_type 
bid_type
typedef vector_type::block_type block_type
typedef
vector_type::blocked_index_type 
blocked_index_type
typedef
std::random_access_iterator_tag 
iterator_category
typedef vector_type::size_type size_type
typedef
vector_type::difference_type 
difference_type
typedef vector_type::value_type value_type
typedef vector_type::reference reference
typedef
vector_type::const_reference 
const_reference
typedef vector_type::pointer pointer
typedef vector_type::const_pointer const_pointer

Public Member Functions

 vector_iterator ()
 vector_iterator (const _Self &a)
block_offset_type block_offset () const
bids_container_iterator bid () const
difference_type operator- (const _Self &a) const
difference_type operator- (const const_iterator &a) const
_Self operator- (size_type op) const
_Self operator+ (size_type op) const
_Selfoperator-= (size_type op)
_Selfoperator+= (size_type op)
reference operator* ()
pointer operator-> ()
const_reference operator* () const
const_pointer operator-> () const
reference operator[] (size_type op)
const_reference operator[] (size_type op) const
void block_externally_updated ()

Protected Attributes

blocked_index_type offset
vector_typep_vector

Private Types

typedef vector_iterator< Tp_,
AllocStr_, SzTp_, DiffTp_,
BlkSize_, PgTp_, PgSz_ > 
_Self
typedef const_vector_iterator
< Tp_, AllocStr_, SzTp_,
DiffTp_, BlkSize_, PgTp_,
PgSz_ > 
_CIterator

Private Member Functions

 vector_iterator (vector_type *v, size_type o)

Detailed Description

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
class stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >

External vector iterator, model of ext_random_access_iterator concept.

Examples:
algo/copy_and_sort_file.cpp, and stream/test_stream.cpp.

Definition at line 272 of file vector.h.


Member Typedef Documentation

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
typedef const_vector_iterator<Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_> stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::_CIterator [private]

Definition at line 275 of file vector.h.

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
typedef vector_iterator<Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_> stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::_Self [private]

Definition at line 274 of file vector.h.

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
typedef bids_container_type::bid_type stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::bid_type

Definition at line 288 of file vector.h.

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
typedef bids_container_type::iterator stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::bids_container_iterator

Definition at line 287 of file vector.h.

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
typedef vector_type::bids_container_type stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::bids_container_type

Definition at line 286 of file vector.h.

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
typedef unsigned stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::block_offset_type

Definition at line 283 of file vector.h.

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
typedef vector_type::block_type stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::block_type

Definition at line 289 of file vector.h.

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
typedef vector_type::blocked_index_type stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::blocked_index_type

Definition at line 290 of file vector.h.

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
typedef _CIterator stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::const_iterator

Definition at line 280 of file vector.h.

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
typedef vector_type::const_pointer stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::const_pointer

Definition at line 299 of file vector.h.

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
typedef vector_type::const_reference stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::const_reference

Definition at line 297 of file vector.h.

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
typedef vector_type::difference_type stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::difference_type

Definition at line 294 of file vector.h.

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
typedef _Self stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::iterator

Definition at line 281 of file vector.h.

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
typedef std::random_access_iterator_tag stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::iterator_category

Definition at line 292 of file vector.h.

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
typedef vector_type::pointer stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::pointer

Definition at line 298 of file vector.h.

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
typedef vector_type::reference stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::reference

Definition at line 296 of file vector.h.

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
typedef vector_type::size_type stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::size_type

Definition at line 293 of file vector.h.

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
typedef vector_type::value_type stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::value_type

Definition at line 295 of file vector.h.

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
typedef vector<Tp_, PgSz_, PgTp_, BlkSize_, AllocStr_, SzTp_> stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::vector_type

Definition at line 284 of file vector.h.


Constructor & Destructor Documentation

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::vector_iterator ( vector_type v,
size_type  o 
) [inline, private]

Definition at line 306 of file vector.h.

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::vector_iterator ( ) [inline]

Definition at line 311 of file vector.h.

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::vector_iterator ( const _Self a) [inline]

Definition at line 312 of file vector.h.


Member Function Documentation

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
bids_container_iterator stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::bid ( ) const [inline]

Definition at line 320 of file vector.h.

Referenced by stxxl::stream::materialize(), and stxxl::random_shuffle().

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
void stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::block_externally_updated ( ) [inline]

Definition at line 387 of file vector.h.

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

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
block_offset_type stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::block_offset ( ) const [inline]

Definition at line 316 of file vector.h.

Referenced by stxxl::stream::materialize(), and stxxl::random_shuffle().

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
reference stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::operator* ( ) [inline]

Definition at line 357 of file vector.h.

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
const_reference stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::operator* ( ) const [inline]

Definition at line 367 of file vector.h.

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
_Self stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::operator+ ( size_type  op) const [inline]

Definition at line 340 of file vector.h.

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
_Self& stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::operator+= ( size_type  op) [inline]

Definition at line 351 of file vector.h.

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
difference_type stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::operator- ( const _Self a) const [inline]
template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
difference_type stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::operator- ( const const_iterator a) const [inline]
template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
_Self stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::operator- ( size_type  op) const [inline]

Definition at line 335 of file vector.h.

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
_Self& stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::operator-= ( size_type  op) [inline]

Definition at line 345 of file vector.h.

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
pointer stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::operator-> ( ) [inline]

Definition at line 362 of file vector.h.

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
const_pointer stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::operator-> ( ) const [inline]

Definition at line 372 of file vector.h.

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
reference stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::operator[] ( size_type  op) [inline]

Definition at line 377 of file vector.h.

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
const_reference stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::operator[] ( size_type  op) const [inline]

Definition at line 382 of file vector.h.


Member Data Documentation

template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
blocked_index_type stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::offset [protected]
template<typename Tp_, typename AllocStr_, typename SzTp_, typename DiffTp_, unsigned BlkSize_, typename PgTp_, unsigned PgSz_>
vector_type* stxxl::vector_iterator< Tp_, AllocStr_, SzTp_, DiffTp_, BlkSize_, PgTp_, PgSz_ >::p_vector [protected]

Definition at line 303 of file vector.h.


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