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 = allocator<T>> class ixion::tracking_array

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 = allocator<T>>
ixion::tracking_array<T, Allocator>::tracking_array<T, Allocator> ( Allocator const & alloc = Allocator() ) [inline]
 

Definition at line 124 of file ixlib_array.hh.

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

Definition at line 127 of file ixlib_array.hh.

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

Definition at line 130 of file ixlib_array.hh.

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

Definition at line 133 of file ixlib_array.hh.


Member Function Documentation

template<class T, class Allocator = allocator<T>>
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 = 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 = allocator<T>>
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 = allocator<T>>
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 = allocator<T>>
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 = allocator<T>>
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 = allocator<T>>
void ixion::tracking_array<T, Allocator>::destroy ( ) [inline, virtual]
 

Definition at line 192 of file ixlib_array.hh.

template<class T, class Allocator = allocator<T>>
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 = allocator<T>>
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 = 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 = 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 = allocator<T>>
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 = allocator<T>>
tracking_array<T, Allocator> & 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 = 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 at Tue Apr 17 18:29:47 2001 for ixlib by doxygen1.2.6 written by Dimitri van Heesch, © 1997-2001