Simpatico  v1.10
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes
Util::PArray< Data > Class Template Reference

Detailed Description

template<typename Data>
class Util::PArray< Data >

An array that only holds pointers to its elements.

A PArray<Data> is an array that is implemented by storing pointers to Data objects, rather than actual Data objects. The array suscript operator [] returns a reference to an associated Data object, as for Array<Data>. A PArray<Data> is not responsible for destroying the associated Data objects.

A PArray cannot be instantiated, because its constructor is protected. PArray is a base class for DPArray and for ArraySet.

Definition at line 33 of file PArray.h.

#include <PArray.h>

Inheritance diagram for Util::PArray< Data >:
Util::ArraySet< DdMd::Atom > Util::ArraySet< DdMd::Group< N > > Util::ArraySet< McMd::Link > Util::GPArray< DdMd::Atom > Util::GPArray< DdMd::Group< N > > Util::GPArray< DdMd::GroupExchanger > Util::GPArray< DdMd::Modifier > Util::ArraySet< Data > Util::DPArray< Data > Util::GPArray< Data >

Public Member Functions

virtual ~PArray ()
 Destructor. More...
 
int capacity () const
 Return allocated size. More...
 
int size () const
 Return logical size. More...
 
void begin (PArrayIterator< Data > &iterator) const
 Set a PArrayIterator to the beginning of this PArray. More...
 
void begin (ConstPArrayIterator< Data > &iterator) const
 Set a ConstPArrayIterator to the beginning of this PArray. More...
 
Data & operator[] (int i) const
 Mimic C array subscripting. More...
 

Protected Member Functions

 PArray ()
 Constructor (protected to prevent instantiation). More...
 

Protected Attributes

Data ** ptrs_
 PArray of of pointers to Data objects. More...
 
int capacity_
 Allocated size of ptrs_ array. More...
 
int size_
 Logical size (number of elements with initialized data). More...
 

Constructor & Destructor Documentation

template<typename Data >
Util::PArray< Data >::~PArray ( )
virtual

Destructor.

Definition at line 123 of file PArray.h.

template<typename Data >
Util::PArray< Data >::PArray ( )
inlineprotected

Constructor (protected to prevent instantiation).

Definition at line 113 of file PArray.h.

Member Function Documentation

template<typename Data >
int Util::PArray< Data >::capacity ( ) const
inline

Return allocated size.

Returns
Number of elements allocated in array.

Definition at line 130 of file PArray.h.

References Util::PArray< Data >::capacity_.

Referenced by Util::DPArray< Data >::allocate(), Util::ArraySet< Data >::allocate(), and Util::GPArray< Data >::reserve().

template<typename Data >
int Util::PArray< Data >::size ( ) const
inline

Return logical size.

Returns
logical size of this array.

Definition at line 137 of file PArray.h.

References Util::PArray< Data >::size_.

Referenced by DdMd::AtomMap::clearGhosts(), and Util::ArraySet< Data >::isValid().

template<typename Data >
void Util::PArray< Data >::begin ( PArrayIterator< Data > &  iterator) const
inline

Set a PArrayIterator to the beginning of this PArray.

Set an PArrayIterator to the beginning of this PArray.

Parameters
iteratorPArrayIterator, initialized on output.

Definition at line 146 of file PArray.h.

References Util::PArray< Data >::ptrs_, Util::PArrayIterator< Data >::setCurrent(), Util::PArrayIterator< Data >::setEnd(), Util::PArrayIterator< Data >::setNull(), and Util::PArray< Data >::size_.

Referenced by DdMd::AtomMap::clearGhosts().

template<typename Data >
void Util::PArray< Data >::begin ( ConstPArrayIterator< Data > &  iterator) const
inline

Set a ConstPArrayIterator to the beginning of this PArray.

Set an ConstPArrayIterator to the beginning of this PArray.

Parameters
iteratorPArrayIterator, initialized on output.
iteratorConstPArrayIterator, initialized on output.

Definition at line 162 of file PArray.h.

References Util::PArray< Data >::ptrs_, Util::ConstPArrayIterator< Data >::setCurrent(), Util::ConstPArrayIterator< Data >::setEnd(), Util::ConstPArrayIterator< Data >::setNull(), and Util::PArray< Data >::size_.

template<typename Data >
Data & Util::PArray< Data >::operator[] ( int  i) const
inline

Mimic C array subscripting.

Subscript - return a reference.

Parameters
iarray index
Returns
reference to element i

Definition at line 179 of file PArray.h.

References Util::PArray< Data >::ptrs_, and Util::PArray< Data >::size_.

Member Data Documentation

template<typename Data>
Data** Util::PArray< Data >::ptrs_
protected
template<typename Data>
int Util::PArray< Data >::capacity_
protected
template<typename Data>
int Util::PArray< Data >::size_
protected

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