Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

ixion::tracking_array Class Template Reference

#include <ixlib_array.hh>

Inheritance diagram for ixion::tracking_array::

ixion::array ixion::auto_destroy_array List of all members.

Public Methods

 tracking_array (Allocator const &alloc=Allocator())
 tracking_array (size_type cap, Allocator const &alloc=Allocator())
 tracking_array (tracking_array const &source)
virtual ~tracking_array ()
pointer begin () const
pointer end () const
size_type size () const
tracking_array & operator= (tracking_array const &source)
virtual void allocate (size_type cap)
virtual void deallocate ()
virtual void construct (pointer first, pointer last, const_reference value=typename tracking_array::value_type())
virtual void construct (pointer first, pointer last, const_pointer source)
virtual void construct (pointer item, const_reference source=T())
virtual void destroy (pointer first, pointer last)
virtual void destroy (pointer item)
virtual void destroy ()
virtual void invalidate ()

Protected Methods

void internal_destroy ()

Detailed Description

template<class T, class Allocator = std::allocator<T>>
class ixion::tracking_array< T, Allocator >

An object that provides methods for reallocatable array management and keeps track of which (linearly consecutive) area of items has been constructed.

Nothing in terms of allocation or deallocation is done automatically.

Definition at line 118 of file ixlib_array.hh.


Constructor & Destructor Documentation

template<class T, class Allocator = std::allocator<T>>
ixion::tracking_array< T, Allocator >::tracking_array Allocator const &    alloc = Allocator() [inline]
 

Definition at line 124 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
ixion::tracking_array< T, Allocator >::tracking_array size_type    cap,
Allocator const &    alloc = Allocator()
[inline]
 

Definition at line 127 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
ixion::tracking_array< T, Allocator >::tracking_array tracking_array< T, Allocator > const &    source [inline]
 

Definition at line 130 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
virtual ixion::tracking_array< T, Allocator >::~tracking_array   [inline, virtual]
 

Definition at line 133 of file ixlib_array.hh.


Member Function Documentation

template<class T, class Allocator = std::allocator<T>>
virtual void ixion::tracking_array< T, Allocator >::allocate size_type    cap [inline, virtual]
 

Reimplemented from ixion::array.

Reimplemented in ixion::auto_destroy_array.

Definition at line 154 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
pointer ixion::tracking_array< T, Allocator >::begin   const [inline]
 

Definition at line 136 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
virtual void ixion::tracking_array< T, Allocator >::construct pointer    item,
const_reference    source = T()
[inline, virtual]
 

Reimplemented from ixion::array.

Definition at line 176 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
virtual void ixion::tracking_array< T, Allocator >::construct pointer    first,
pointer    last,
const_pointer    source
[inline, virtual]
 

Reimplemented from ixion::array.

Definition at line 171 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
virtual void ixion::tracking_array< T, Allocator >::construct pointer    first,
pointer    last,
const_reference    value = typename tracking_array< T, Allocator >::value_type()
[inline, virtual]
 

Reimplemented from ixion::array.

Definition at line 165 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
virtual void ixion::tracking_array< T, Allocator >::deallocate   [inline, virtual]
 

Reimplemented from ixion::array.

Reimplemented in ixion::auto_destroy_array.

Definition at line 159 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
virtual void ixion::tracking_array< T, Allocator >::destroy   [inline, virtual]
 

Definition at line 192 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
virtual void ixion::tracking_array< T, Allocator >::destroy pointer    item [inline, virtual]
 

Reimplemented from ixion::array.

Definition at line 186 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
virtual void ixion::tracking_array< T, Allocator >::destroy pointer    first,
pointer    last
[inline, virtual]
 

Reimplemented from ixion::array.

Definition at line 181 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
pointer ixion::tracking_array< T, Allocator >::end   const [inline]
 

Definition at line 138 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
void ixion::tracking_array< T, Allocator >::internal_destroy   [inline, protected]
 

Definition at line 203 of file ixlib_array.hh.

Referenced by ixion::auto_destroy_array::allocate(), ixion::auto_destroy_array::deallocate(), destroy(), ixion::auto_destroy_array::operator=(), and ixion::auto_destroy_array::~auto_destroy_array().

template<class T, class Allocator = std::allocator<T>>
virtual void ixion::tracking_array< T, Allocator >::invalidate   [inline, virtual]
 

Reimplemented from ixion::array.

Definition at line 197 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
tracking_array& ixion::tracking_array< T, Allocator >::operator= tracking_array< T, Allocator > const &    source [inline]
 

Definition at line 147 of file ixlib_array.hh.

template<class T, class Allocator = std::allocator<T>>
size_type ixion::tracking_array< T, Allocator >::size   const [inline]
 

Definition at line 140 of file ixlib_array.hh.


The documentation for this class was generated from the following file:
Generated on Wed Oct 31 17:12:26 2001 for ixlib by doxygen1.2.11.1 written by Dimitri van Heesch, © 1997-2001