Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members

BTK::SharedVector< T > Class Template Reference

#include <shared_vector.h>

Inheritance diagram for BTK::SharedVector< T >:

Inheritance graph
[legend]
Collaboration diagram for BTK::SharedVector< T >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef SharedVector< T > self_type
typedef base_type::value_type value_type
typedef base_type::reference reference
typedef base_type::const_reference const_reference
typedef base_type::pointer pointer
typedef base_type::const_pointer const_pointer
typedef base_type::size_type size_type
typedef base_type::iterator iterator
typedef base_type::const_iterator const_iterator

Public Member Functions

 SharedVector (size_type s=0)
template<typename InputIterator>  SharedVector (InputIterator first, InputIterator last)
 SharedVector (const self_type &source)
template<typename T2>  SharedVector (const SharedVector< T2 > &source)
 ~SharedVector ()
self_typeoperator= (const self_type &rhs)
template<typename T2> self_typeoperator= (const SharedVector< T2 > &rhs)
template<typename InputIterator> void insert (iterator pos, InputIterator first, InputIterator last)
 Replication of std::vector function (see std::vector documentation).

Replicated std::vector interface (public)
size_type size () const
 Replication of std::vector function (see std::vector documentation).

iterator begin ()
 Replication of std::vector function (see std::vector documentation).

const_iterator begin () const
 Replication of std::vector function (see std::vector documentation).

iterator end ()
 Replication of std::vector function (see std::vector documentation).

const_iterator end () const
 Replication of std::vector function (see std::vector documentation).

reference operator[] (size_type i)
 Replication of std::vector function (see std::vector documentation).

const_reference operator[] (size_type i) const
 Replication of std::vector function (see std::vector documentation).

reference front ()
 Replication of std::vector function (see std::vector documentation).

const_reference front () const
 Replication of std::vector function (see std::vector documentation).

reference back ()
 Replication of std::vector function (see std::vector documentation).

const_reference back () const
 Replication of std::vector function (see std::vector documentation).


Protected Member Functions

Replicated std::vector interface (protected)
void clear ()
 Replication of std::vector function (see std::vector documentation).

void resize (size_type s)
 Replication of std::vector function (see std::vector documentation).

void reserve (size_type s)
 Replication of std::vector function (see std::vector documentation).

void push_back (const value_type &x)
 Replication of std::vector function (see std::vector documentation).

iterator insert (iterator pos, const value_type &x)
 Replication of std::vector function (see std::vector documentation).

void insert (iterator pos, size_type s, const value_type &x)
 Replication of std::vector function (see std::vector documentation).

iterator erase (iterator pos)
 Replication of std::vector function (see std::vector documentation).

iterator erase (iterator first, iterator last)
 Replication of std::vector function (see std::vector documentation).

Shallow std::vector-like functions
void shallow_push_back (value_type *x)
void shallow_insert (iterator pos, const_iterator first, const_iterator last)
Self copy functions
template<typename T2> void deep_copy (const SharedVectorBase< T2 > &source)
void shallow_copy (const self_type &source)

Detailed Description

template<typename T>
class BTK::SharedVector< T >

A std::vector-like container with shallow-copy services

SharedVector behaves like std::vector; it implements a subset of the std::vector interface, and additionally includes shallow copy/insert services. Shallow functions can only be used with other SharedVector objects or iterators.


Member Typedef Documentation

template<typename T>
typedef base_type::const_iterator BTK::SharedVector< T >::const_iterator
 

Reimplemented from BTK::SharedVectorBase< T >.

template<typename T>
typedef base_type::const_pointer BTK::SharedVector< T >::const_pointer
 

Reimplemented from BTK::SharedVectorBase< T >.

template<typename T>
typedef base_type::const_reference BTK::SharedVector< T >::const_reference
 

Reimplemented from BTK::SharedVectorBase< T >.

template<typename T>
typedef base_type::iterator BTK::SharedVector< T >::iterator
 

Reimplemented from BTK::SharedVectorBase< T >.

template<typename T>
typedef base_type::pointer BTK::SharedVector< T >::pointer
 

Reimplemented from BTK::SharedVectorBase< T >.

template<typename T>
typedef base_type::reference BTK::SharedVector< T >::reference
 

Reimplemented from BTK::SharedVectorBase< T >.

template<typename T>
typedef SharedVector<T> BTK::SharedVector< T >::self_type
 

Reimplemented from BTK::SharedVectorBase< T >.

template<typename T>
typedef base_type::size_type BTK::SharedVector< T >::size_type
 

Reimplemented from BTK::SharedVectorBase< T >.

template<typename T>
typedef base_type::value_type BTK::SharedVector< T >::value_type
 

Reimplemented from BTK::SharedVectorBase< T >.


Constructor & Destructor Documentation

template<typename T>
BTK::SharedVector< T >::SharedVector size_type  s = 0  )  [inline]
 

template<typename T>
template<typename InputIterator>
BTK::SharedVector< T >::SharedVector InputIterator  first,
InputIterator  last
[inline]
 

template<typename T>
BTK::SharedVector< T >::SharedVector const self_type source  )  [inline]
 

template<typename T>
template<typename T2>
BTK::SharedVector< T >::SharedVector const SharedVector< T2 > &  source  )  [inline]
 

template<typename T>
BTK::SharedVector< T >::~SharedVector  )  [inline]
 


Member Function Documentation

template<typename T>
const_reference BTK::SharedVectorBase< T >::back  )  const [inline, inherited]
 

Replication of std::vector function (see std::vector documentation).

template<typename T>
reference BTK::SharedVectorBase< T >::back  )  [inline, inherited]
 

Replication of std::vector function (see std::vector documentation).

template<typename T>
const_iterator BTK::SharedVectorBase< T >::begin  )  const [inline, inherited]
 

Replication of std::vector function (see std::vector documentation).

template<typename T>
iterator BTK::SharedVectorBase< T >::begin  )  [inline, inherited]
 

Replication of std::vector function (see std::vector documentation).

template<typename T>
void BTK::SharedVectorBase< T >::clear  )  [inline, protected, inherited]
 

Replication of std::vector function (see std::vector documentation).

template<typename T>
template<typename T2>
void BTK::SharedVectorBase< T >::deep_copy const SharedVectorBase< T2 > &  source  )  [protected, inherited]
 

Here is the call graph for this function:

template<typename T>
const_iterator BTK::SharedVectorBase< T >::end  )  const [inline, inherited]
 

Replication of std::vector function (see std::vector documentation).

template<typename T>
iterator BTK::SharedVectorBase< T >::end  )  [inline, inherited]
 

Replication of std::vector function (see std::vector documentation).

template<typename T>
iterator BTK::SharedVectorBase< T >::erase iterator  first,
iterator  last
[inline, protected, inherited]
 

Replication of std::vector function (see std::vector documentation).

template<typename T>
iterator BTK::SharedVectorBase< T >::erase iterator  pos  )  [inline, protected, inherited]
 

Replication of std::vector function (see std::vector documentation).

template<typename T>
const_reference BTK::SharedVectorBase< T >::front  )  const [inline, inherited]
 

Replication of std::vector function (see std::vector documentation).

template<typename T>
reference BTK::SharedVectorBase< T >::front  )  [inline, inherited]
 

Replication of std::vector function (see std::vector documentation).

template<typename T>
void BTK::SharedVectorBase< T >::insert iterator  pos,
size_type  s,
const value_type x
[protected, inherited]
 

Replication of std::vector function (see std::vector documentation).

template<typename T>
iterator BTK::SharedVectorBase< T >::insert iterator  pos,
const value_type x
[inline, protected, inherited]
 

Replication of std::vector function (see std::vector documentation).

template<typename T>
template<typename InputIterator>
void BTK::SharedVector< T >::insert iterator  pos,
InputIterator  first,
InputIterator  last
[inline]
 

Replication of std::vector function (see std::vector documentation).

Reimplemented from BTK::SharedVectorBase< T >.

template<typename T>
template<typename T2>
self_type& BTK::SharedVector< T >::operator= const SharedVector< T2 > &  rhs  )  [inline]
 

template<typename T>
self_type& BTK::SharedVector< T >::operator= const self_type rhs  )  [inline]
 

Reimplemented from BTK::SharedVectorBase< T >.

template<typename T>
const_reference BTK::SharedVectorBase< T >::operator[] size_type  i  )  const [inline, inherited]
 

Replication of std::vector function (see std::vector documentation).

template<typename T>
reference BTK::SharedVectorBase< T >::operator[] size_type  i  )  [inline, inherited]
 

Replication of std::vector function (see std::vector documentation).

template<typename T>
void BTK::SharedVectorBase< T >::push_back const value_type x  )  [inline, protected, inherited]
 

Replication of std::vector function (see std::vector documentation).

template<typename T>
void BTK::SharedVectorBase< T >::reserve size_type  s  )  [inline, protected, inherited]
 

Replication of std::vector function (see std::vector documentation).

template<typename T>
void BTK::SharedVectorBase< T >::resize size_type  s  )  [inline, protected, inherited]
 

Replication of std::vector function (see std::vector documentation).

template<typename T>
void BTK::SharedVectorBase< T >::shallow_copy const self_type source  )  [protected, inherited]
 

Here is the call graph for this function:

template<typename T>
void BTK::SharedVectorBase< T >::shallow_insert iterator  pos,
const_iterator  first,
const_iterator  last
[inline, protected, inherited]
 

template<typename T>
void BTK::SharedVectorBase< T >::shallow_push_back value_type x  )  [inline, protected, inherited]
 

template<typename T>
size_type BTK::SharedVectorBase< T >::size  )  const [inline, inherited]
 

Replication of std::vector function (see std::vector documentation).


The documentation for this class was generated from the following file:
Generated on Wed Apr 14 00:43:27 2004 for BTK by doxygen 1.3.6