STXXL  1.4.0
 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 25 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 436 of file deque.h.

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

Definition at line 432 of file deque.h.

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

Definition at line 434 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 438 of file deque.h.

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

Definition at line 428 of file deque.h.

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

Definition at line 435 of file deque.h.

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

Definition at line 431 of file deque.h.

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

Definition at line 433 of file deque.h.

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

Definition at line 437 of file deque.h.

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

Definition at line 424 of file deque.h.

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

Definition at line 427 of file deque.h.

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

Definition at line 430 of file deque.h.

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

Definition at line 429 of file deque.h.

Constructor & Destructor Documentation

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

Definition at line 465 of file deque.h.

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

Definition at line 470 of file deque.h.

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

Definition at line 475 of file deque.h.

Member Function Documentation

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

Definition at line 582 of file deque.h.

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

Definition at line 588 of file deque.h.

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

Definition at line 483 of file deque.h.

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

Definition at line 491 of file deque.h.

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

Definition at line 495 of file deque.h.

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

Definition at line 503 of file deque.h.

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

Definition at line 651 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 516 of file deque.h.

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

Definition at line 528 of file deque.h.

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

Definition at line 447 of file deque.h.

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

Definition at line 548 of file deque.h.

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

Definition at line 487 of file deque.h.

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

Definition at line 499 of file deque.h.

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

Definition at line 570 of file deque.h.

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

Definition at line 576 of file deque.h.

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

Definition at line 543 of file deque.h.

References max().

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

Definition at line 558 of file deque.h.

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

Definition at line 564 of file deque.h.

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

Definition at line 631 of file deque.h.

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

Definition at line 624 of file deque.h.

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

Definition at line 612 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 599 of file deque.h.

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

Definition at line 508 of file deque.h.

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

Definition at line 512 of file deque.h.

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

Definition at line 520 of file deque.h.

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

Definition at line 524 of file deque.h.

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

Definition at line 665 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 538 of file deque.h.

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

Definition at line 643 of file deque.h.

Member Data Documentation

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

Definition at line 445 of file deque.h.

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

Definition at line 445 of file deque.h.

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

Definition at line 445 of file deque.h.

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

Definition at line 444 of file deque.h.


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