STXXL  1.4-dev
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
stxxl::deque< ValueType, VectorType > Class Template Reference

Detailed Description

template<class ValueType, class VectorType>
class stxxl::deque< ValueType, VectorType >

A deque container.
Introduction to deque container: see STXXL Deque tutorial.
Design and Internals of deque container: see Deque.

It is an adaptor of the VectorType. The implementation wraps the elements around the end of the VectorType circularly.

Template Parameters
ValueTypetype of the contained objects (POD with no references to internal memory)
VectorTypethe type of the underlying vector container, the default is stxxl::vector<ValueType>
Examples:
examples/containers/deque1.cpp, and examples/containers/deque2.cpp.

Definition at line 24 of file deque.h.

+ Inheritance diagram for stxxl::deque< ValueType, VectorType >:
+ Collaboration diagram for stxxl::deque< ValueType, VectorType >:

Public Types

typedef const_deque_iterator
< self_type
const_iterator
 
typedef const value_typeconst_pointer
 
typedef const ValueType & const_reference
 
typedef std::reverse_iterator
< const_iterator
const_reverse_iterator
 
typedef VectorType::difference_type difference_type
 
typedef deque_iterator< self_typeiterator
 
typedef ValueType * pointer
 
typedef ValueType & reference
 
typedef std::reverse_iterator
< iterator
reverse_iterator
 
typedef VectorType::size_type size_type
 
typedef ValueType value_type
 
typedef VectorType vector_type
 

Public Member Functions

Constructors/Destructors
 deque ()
 
 deque (size_type n)
 
 ~deque ()
 
Iterators
iterator begin ()
 
iterator end ()
 
const_iterator begin () const
 
const_iterator cbegin () const
 
const_iterator end () const
 
const_iterator cend () const
 
reverse_iterator rbegin ()
 
const_reverse_iterator rbegin () const
 
const_reverse_iterator crbegin () const
 
reverse_iterator rend ()
 
const_reverse_iterator rend () const
 
const_reverse_iterator crend () const
 
Capacity
size_type size () const
 
size_type max_size () const
 
bool empty () const
 
void resize (size_type n)
 
Operators
reference operator[] (size_type n)
 
const_reference operator[] (size_type n) const
 
reference front ()
 
const_reference front () const
 
reference back ()
 
const_reference back () const
 
Modifiers
void push_front (const value_type &el)
 
void push_back (const value_type &el)
 
void pop_front ()
 
void pop_back ()
 
void swap (deque &obj)
 
void clear ()
 

Private Types

typedef deque< ValueType,
VectorType > 
self_type
 

Private Member Functions

void double_array ()
 
- Private Member Functions inherited from stxxl::noncopyable
 noncopyable ()
 

Private Attributes

size_type m_begin
 
size_type m_end
 
size_type m_size
 
vector_type m_vector
 

Member Typedef Documentation

template<class ValueType, class VectorType>
typedef const_deque_iterator<self_type> stxxl::deque< ValueType, VectorType >::const_iterator

Definition at line 435 of file deque.h.

template<class ValueType, class VectorType>
typedef const value_type* stxxl::deque< ValueType, VectorType >::const_pointer

Definition at line 431 of file deque.h.

template<class ValueType, class VectorType>
typedef const ValueType& stxxl::deque< ValueType, VectorType >::const_reference

Definition at line 433 of file deque.h.

template<class ValueType, class VectorType>
typedef std::reverse_iterator<const_iterator> stxxl::deque< ValueType, VectorType >::const_reverse_iterator

Definition at line 437 of file deque.h.

template<class ValueType, class VectorType>
typedef VectorType::difference_type stxxl::deque< ValueType, VectorType >::difference_type

Definition at line 427 of file deque.h.

template<class ValueType, class VectorType>
typedef deque_iterator<self_type> stxxl::deque< ValueType, VectorType >::iterator

Definition at line 434 of file deque.h.

template<class ValueType, class VectorType>
typedef ValueType* stxxl::deque< ValueType, VectorType >::pointer

Definition at line 430 of file deque.h.

template<class ValueType, class VectorType>
typedef ValueType& stxxl::deque< ValueType, VectorType >::reference

Definition at line 432 of file deque.h.

template<class ValueType, class VectorType>
typedef std::reverse_iterator<iterator> stxxl::deque< ValueType, VectorType >::reverse_iterator

Definition at line 436 of file deque.h.

template<class ValueType, class VectorType>
typedef deque<ValueType, VectorType> stxxl::deque< ValueType, VectorType >::self_type
private

Definition at line 423 of file deque.h.

template<class ValueType, class VectorType>
typedef VectorType::size_type stxxl::deque< ValueType, VectorType >::size_type

Definition at line 426 of file deque.h.

template<class ValueType, class VectorType>
typedef ValueType stxxl::deque< ValueType, VectorType >::value_type

Definition at line 429 of file deque.h.

template<class ValueType, class VectorType>
typedef VectorType stxxl::deque< ValueType, VectorType >::vector_type

Definition at line 428 of file deque.h.

Constructor & Destructor Documentation

template<class ValueType, class VectorType>
stxxl::deque< ValueType, VectorType >::deque ( )
inline

Definition at line 464 of file deque.h.

template<class ValueType, class VectorType>
stxxl::deque< ValueType, VectorType >::deque ( size_type  n)
inline

Definition at line 469 of file deque.h.

template<class ValueType, class VectorType>
stxxl::deque< ValueType, VectorType >::~deque ( )
inline

Definition at line 474 of file deque.h.

Member Function Documentation

template<class ValueType, class VectorType>
reference stxxl::deque< ValueType, VectorType >::back ( )
inline

Definition at line 581 of file deque.h.

template<class ValueType, class VectorType>
const_reference stxxl::deque< ValueType, VectorType >::back ( ) const
inline

Definition at line 587 of file deque.h.

template<class ValueType, class VectorType>
iterator stxxl::deque< ValueType, VectorType >::begin ( )
inline

Definition at line 482 of file deque.h.

template<class ValueType, class VectorType>
const_iterator stxxl::deque< ValueType, VectorType >::begin ( ) const
inline

Definition at line 490 of file deque.h.

template<class ValueType, class VectorType>
const_iterator stxxl::deque< ValueType, VectorType >::cbegin ( ) const
inline

Definition at line 494 of file deque.h.

template<class ValueType, class VectorType>
const_iterator stxxl::deque< ValueType, VectorType >::cend ( ) const
inline

Definition at line 502 of file deque.h.

template<class ValueType, class VectorType>
void stxxl::deque< ValueType, VectorType >::clear ( )
inline

Definition at line 650 of file deque.h.

References STXXL_DEFAULT_BLOCK_SIZE.

template<class ValueType, class VectorType>
const_reverse_iterator stxxl::deque< ValueType, VectorType >::crbegin ( ) const
inline

Definition at line 515 of file deque.h.

template<class ValueType, class VectorType>
const_reverse_iterator stxxl::deque< ValueType, VectorType >::crend ( ) const
inline

Definition at line 527 of file deque.h.

template<class ValueType, class VectorType>
void stxxl::deque< ValueType, VectorType >::double_array ( )
inlineprivate

Definition at line 446 of file deque.h.

template<class ValueType, class VectorType>
bool stxxl::deque< ValueType, VectorType >::empty ( ) const
inline

Definition at line 547 of file deque.h.

template<class ValueType, class VectorType>
iterator stxxl::deque< ValueType, VectorType >::end ( )
inline

Definition at line 486 of file deque.h.

template<class ValueType, class VectorType>
const_iterator stxxl::deque< ValueType, VectorType >::end ( ) const
inline

Definition at line 498 of file deque.h.

template<class ValueType, class VectorType>
reference stxxl::deque< ValueType, VectorType >::front ( )
inline

Definition at line 569 of file deque.h.

template<class ValueType, class VectorType>
const_reference stxxl::deque< ValueType, VectorType >::front ( ) const
inline

Definition at line 575 of file deque.h.

template<class ValueType, class VectorType>
size_type stxxl::deque< ValueType, VectorType >::max_size ( ) const
inline

Definition at line 542 of file deque.h.

References max().

template<class ValueType, class VectorType>
reference stxxl::deque< ValueType, VectorType >::operator[] ( size_type  n)
inline

Definition at line 557 of file deque.h.

template<class ValueType, class VectorType>
const_reference stxxl::deque< ValueType, VectorType >::operator[] ( size_type  n) const
inline

Definition at line 563 of file deque.h.

template<class ValueType, class VectorType>
void stxxl::deque< ValueType, VectorType >::pop_back ( )
inline

Definition at line 630 of file deque.h.

template<class ValueType, class VectorType>
void stxxl::deque< ValueType, VectorType >::pop_front ( )
inline

Definition at line 623 of file deque.h.

template<class ValueType, class VectorType>
void stxxl::deque< ValueType, VectorType >::push_back ( const value_type el)
inline

Definition at line 611 of file deque.h.

template<class ValueType, class VectorType>
void stxxl::deque< ValueType, VectorType >::push_front ( const value_type el)
inline
Examples:
examples/containers/deque1.cpp.

Definition at line 598 of file deque.h.

template<class ValueType, class VectorType>
reverse_iterator stxxl::deque< ValueType, VectorType >::rbegin ( )
inline

Definition at line 507 of file deque.h.

template<class ValueType, class VectorType>
const_reverse_iterator stxxl::deque< ValueType, VectorType >::rbegin ( ) const
inline

Definition at line 511 of file deque.h.

template<class ValueType, class VectorType>
reverse_iterator stxxl::deque< ValueType, VectorType >::rend ( )
inline

Definition at line 519 of file deque.h.

template<class ValueType, class VectorType>
const_reverse_iterator stxxl::deque< ValueType, VectorType >::rend ( ) const
inline

Definition at line 523 of file deque.h.

template<class ValueType, class VectorType>
void stxxl::deque< ValueType, VectorType >::resize ( size_type  n)
inline

Definition at line 664 of file deque.h.

References stxxl::pop_back().

template<class ValueType, class VectorType>
size_type stxxl::deque< ValueType, VectorType >::size ( ) const
inline

Definition at line 537 of file deque.h.

template<class ValueType, class VectorType>
void stxxl::deque< ValueType, VectorType >::swap ( deque< ValueType, VectorType > &  obj)
inline

Definition at line 642 of file deque.h.

Member Data Documentation

template<class ValueType, class VectorType>
size_type stxxl::deque< ValueType, VectorType >::m_begin
private

Definition at line 444 of file deque.h.

template<class ValueType, class VectorType>
size_type stxxl::deque< ValueType, VectorType >::m_end
private

Definition at line 444 of file deque.h.

template<class ValueType, class VectorType>
size_type stxxl::deque< ValueType, VectorType >::m_size
private

Definition at line 444 of file deque.h.

template<class ValueType, class VectorType>
vector_type stxxl::deque< ValueType, VectorType >::m_vector
private

Definition at line 443 of file deque.h.


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