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::deque< T, VectorType > Class Template Reference

A deque container. More...

#include <deque.h>

Inheritance diagram for stxxl::deque< T, VectorType >:
Inheritance graph
[legend]
Collaboration diagram for stxxl::deque< T, VectorType >:
Collaboration graph
[legend]

List of all members.

Public Types

typedef VectorType::size_type size_type
typedef VectorType::difference_type difference_type
typedef VectorType vector_type
typedef T value_type
typedef T * pointer
typedef const value_typeconst_pointer
typedef T & reference
typedef const T & const_reference
typedef deque_iterator< Self_iterator
typedef const_deque_iterator
< Self_
const_iterator
typedef std::reverse_iterator
< iterator
reverse_iterator
typedef std::reverse_iterator
< const_iterator
const_reverse_iterator

Public Member Functions

 deque ()
 deque (size_type n)
 ~deque ()
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
size_type size () const
size_type max_size () const
bool empty () const
reference operator[] (size_type n)
const_reference operator[] (size_type n) const
reference front ()
const_reference front () const
reference back ()
const_reference back () const
void push_front (const T &el)
void push_back (const T &el)
void pop_front ()
void pop_back ()
void swap (deque &obj)
void clear ()
void resize (size_type n)

Private Types

typedef deque< T, VectorType > Self_

Private Member Functions

void double_array ()

Private Attributes

VectorType Vector
size_type begin_o
size_type end_o
size_type size_

Detailed Description

template<class T, class VectorType = stxxl::vector<T>>
class stxxl::deque< T, VectorType >

A deque container.

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

Template Parameters:
Ttype of the contained objects (POD with no references to internal memory)
VectorTypethe type of the underlying vector container, the default is stxxl::vector<T>

Definition at line 405 of file deque.h.


Member Typedef Documentation

template<class T, class VectorType = stxxl::vector<T>>
typedef const_deque_iterator<Self_> stxxl::deque< T, VectorType >::const_iterator

Definition at line 419 of file deque.h.

template<class T, class VectorType = stxxl::vector<T>>
typedef const value_type* stxxl::deque< T, VectorType >::const_pointer

Definition at line 415 of file deque.h.

template<class T, class VectorType = stxxl::vector<T>>
typedef const T& stxxl::deque< T, VectorType >::const_reference

Definition at line 417 of file deque.h.

template<class T, class VectorType = stxxl::vector<T>>
typedef std::reverse_iterator<const_iterator> stxxl::deque< T, VectorType >::const_reverse_iterator

Definition at line 421 of file deque.h.

template<class T, class VectorType = stxxl::vector<T>>
typedef VectorType::difference_type stxxl::deque< T, VectorType >::difference_type

Definition at line 411 of file deque.h.

template<class T, class VectorType = stxxl::vector<T>>
typedef deque_iterator<Self_> stxxl::deque< T, VectorType >::iterator

Definition at line 418 of file deque.h.

template<class T, class VectorType = stxxl::vector<T>>
typedef T* stxxl::deque< T, VectorType >::pointer

Definition at line 414 of file deque.h.

template<class T, class VectorType = stxxl::vector<T>>
typedef T& stxxl::deque< T, VectorType >::reference

Definition at line 416 of file deque.h.

template<class T, class VectorType = stxxl::vector<T>>
typedef std::reverse_iterator<iterator> stxxl::deque< T, VectorType >::reverse_iterator

Definition at line 420 of file deque.h.

template<class T, class VectorType = stxxl::vector<T>>
typedef deque<T, VectorType> stxxl::deque< T, VectorType >::Self_ [private]

Definition at line 407 of file deque.h.

template<class T, class VectorType = stxxl::vector<T>>
typedef VectorType::size_type stxxl::deque< T, VectorType >::size_type

Definition at line 410 of file deque.h.

template<class T, class VectorType = stxxl::vector<T>>
typedef T stxxl::deque< T, VectorType >::value_type

Definition at line 413 of file deque.h.

template<class T, class VectorType = stxxl::vector<T>>
typedef VectorType stxxl::deque< T, VectorType >::vector_type

Definition at line 412 of file deque.h.


Constructor & Destructor Documentation

template<class T, class VectorType = stxxl::vector<T>>
stxxl::deque< T, VectorType >::deque ( ) [inline]

Definition at line 445 of file deque.h.

template<class T, class VectorType = stxxl::vector<T>>
stxxl::deque< T, VectorType >::deque ( size_type  n) [inline]

Definition at line 448 of file deque.h.

template<class T, class VectorType = stxxl::vector<T>>
stxxl::deque< T, VectorType >::~deque ( ) [inline]

Definition at line 453 of file deque.h.


Member Function Documentation

template<class T, class VectorType = stxxl::vector<T>>
reference stxxl::deque< T, VectorType >::back ( ) [inline]

Definition at line 545 of file deque.h.

Referenced by main().

template<class T, class VectorType = stxxl::vector<T>>
const_reference stxxl::deque< T, VectorType >::back ( ) const [inline]

Definition at line 551 of file deque.h.

template<class T, class VectorType = stxxl::vector<T>>
iterator stxxl::deque< T, VectorType >::begin ( ) [inline]

Definition at line 456 of file deque.h.

Referenced by main(), and stxxl::operator==().

template<class T, class VectorType = stxxl::vector<T>>
const_iterator stxxl::deque< T, VectorType >::begin ( ) const [inline]

Definition at line 464 of file deque.h.

template<class T, class VectorType = stxxl::vector<T>>
const_iterator stxxl::deque< T, VectorType >::cbegin ( ) const [inline]

Definition at line 468 of file deque.h.

template<class T, class VectorType = stxxl::vector<T>>
const_iterator stxxl::deque< T, VectorType >::cend ( ) const [inline]

Definition at line 476 of file deque.h.

template<class T, class VectorType = stxxl::vector<T>>
void stxxl::deque< T, VectorType >::clear ( ) [inline]

Definition at line 604 of file deque.h.

References STXXL_DEFAULT_BLOCK_SIZE.

template<class T, class VectorType = stxxl::vector<T>>
const_reverse_iterator stxxl::deque< T, VectorType >::crbegin ( ) const [inline]

Definition at line 489 of file deque.h.

template<class T, class VectorType = stxxl::vector<T>>
const_reverse_iterator stxxl::deque< T, VectorType >::crend ( ) const [inline]

Definition at line 501 of file deque.h.

template<class T, class VectorType = stxxl::vector<T>>
void stxxl::deque< T, VectorType >::double_array ( ) [inline, private]

Definition at line 430 of file deque.h.

template<class T, class VectorType = stxxl::vector<T>>
bool stxxl::deque< T, VectorType >::empty ( ) const [inline]

Definition at line 516 of file deque.h.

Referenced by main().

template<class T, class VectorType = stxxl::vector<T>>
iterator stxxl::deque< T, VectorType >::end ( ) [inline]

Definition at line 460 of file deque.h.

Referenced by main(), and stxxl::operator==().

template<class T, class VectorType = stxxl::vector<T>>
const_iterator stxxl::deque< T, VectorType >::end ( ) const [inline]

Definition at line 472 of file deque.h.

template<class T, class VectorType = stxxl::vector<T>>
reference stxxl::deque< T, VectorType >::front ( ) [inline]

Definition at line 533 of file deque.h.

Referenced by main().

template<class T, class VectorType = stxxl::vector<T>>
const_reference stxxl::deque< T, VectorType >::front ( ) const [inline]

Definition at line 539 of file deque.h.

template<class T, class VectorType = stxxl::vector<T>>
size_type stxxl::deque< T, VectorType >::max_size ( ) const [inline]

Definition at line 511 of file deque.h.

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

Definition at line 521 of file deque.h.

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

Definition at line 527 of file deque.h.

template<class T, class VectorType = stxxl::vector<T>>
void stxxl::deque< T, VectorType >::pop_back ( ) [inline]

Definition at line 589 of file deque.h.

Referenced by main().

template<class T, class VectorType = stxxl::vector<T>>
void stxxl::deque< T, VectorType >::pop_front ( ) [inline]

Definition at line 582 of file deque.h.

Referenced by main().

template<class T, class VectorType = stxxl::vector<T>>
void stxxl::deque< T, VectorType >::push_back ( const T &  el) [inline]

Definition at line 570 of file deque.h.

Referenced by main().

template<class T, class VectorType = stxxl::vector<T>>
void stxxl::deque< T, VectorType >::push_front ( const T &  el) [inline]

Definition at line 557 of file deque.h.

Referenced by main().

template<class T, class VectorType = stxxl::vector<T>>
reverse_iterator stxxl::deque< T, VectorType >::rbegin ( ) [inline]

Definition at line 481 of file deque.h.

template<class T, class VectorType = stxxl::vector<T>>
const_reverse_iterator stxxl::deque< T, VectorType >::rbegin ( ) const [inline]

Definition at line 485 of file deque.h.

template<class T, class VectorType = stxxl::vector<T>>
reverse_iterator stxxl::deque< T, VectorType >::rend ( ) [inline]

Definition at line 493 of file deque.h.

template<class T, class VectorType = stxxl::vector<T>>
const_reverse_iterator stxxl::deque< T, VectorType >::rend ( ) const [inline]

Definition at line 497 of file deque.h.

template<class T, class VectorType = stxxl::vector<T>>
void stxxl::deque< T, VectorType >::resize ( size_type  n) [inline]

Definition at line 613 of file deque.h.

References stxxl::pop_back().

template<class T, class VectorType = stxxl::vector<T>>
size_type stxxl::deque< T, VectorType >::size ( ) const [inline]

Definition at line 506 of file deque.h.

Referenced by main().

template<class T, class VectorType = stxxl::vector<T>>
void stxxl::deque< T, VectorType >::swap ( deque< T, VectorType > &  obj) [inline]

Member Data Documentation

template<class T, class VectorType = stxxl::vector<T>>
size_type stxxl::deque< T, VectorType >::begin_o [private]

Definition at line 428 of file deque.h.

Referenced by stxxl::deque< T, VectorType >::swap().

template<class T, class VectorType = stxxl::vector<T>>
size_type stxxl::deque< T, VectorType >::end_o [private]

Definition at line 428 of file deque.h.

Referenced by stxxl::deque< T, VectorType >::swap().

template<class T, class VectorType = stxxl::vector<T>>
size_type stxxl::deque< T, VectorType >::size_ [private]

Definition at line 428 of file deque.h.

Referenced by stxxl::deque< T, VectorType >::swap().

template<class T, class VectorType = stxxl::vector<T>>
VectorType stxxl::deque< T, VectorType >::Vector [private]

Definition at line 427 of file deque.h.

Referenced by stxxl::deque< T, VectorType >::swap().


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