FreeFOAM The Cross-Platform CFD Toolkit
Hosted by SourceForge:
Get FreeFOAM at SourceForge.net.
            Fast, secure and Free Open Source software downloads

UPtrList< T > Class Template Reference

A 1D array of pointers to objects of type <T>, where the size of the array is known and used for subscript bounds checking, etc. More...

#include <OpenFOAM/UPtrList.H>


Detailed Description

template<class T>
class Foam::UPtrList< T >

A 1D array of pointers to objects of type <T>, where the size of the array is known and used for subscript bounds checking, etc.

The element operator [] returns a reference to the object rather than a pointer. Storage is not allocated during construction or use but is supplied to the constructor as an argument.

Source files

Definition at line 95 of file UPtrList.H.

Inheritance diagram for UPtrList< T >:
Collaboration diagram for UPtrList< T >:

List of all members.

Classes

class  iterator
 An STL iterator. More...

Public Types

typedef T  value_type
 Type of values the UPtrList contains.
typedef T &  reference
 Type that can be used for storing into UPtrList::value_type objects.
typedef const T &  const_reference
 Type that can be used for storing into constant UPtrList::value_type.

Public Member Functions

 UPtrList ()
 Null Constructor.
 UPtrList (const label)
 Construct with length specified.
 UPtrList (const Xfer< UPtrList< T > > &)
 Construct by transferring the parameter contents.
 UPtrList (UPtrList< T > &, bool reUse)
 Construct as copy or re-use as specified.
label  size () const
 Return the number of elements in the UPtrList.
bool  empty () const
 Return true if the UPtrList is empty (ie, size() is zero).
void  setSize (const label)
 Reset size of UPtrList. This can only be used to set the size.
void  resize (const label)
 Reset size of UPtrList. This can only be used to set the size.
void  clear ()
 Clear the UPtrList, i.e. set size to zero.
void  transfer (UPtrList< T > &)
 Transfer the contents of the argument UPtrList into this.
Xfer< UPtrList< T > >  xfer ()
 Transfer contents to the Xfer container.
bool  set (const label) const
 Is element set.
T *  set (const label, T *)
 Set element. Return old element (can be NULL).
void  reorder (const UList< label > &)
 Reorders elements. Ordering does not have to be done in.
const T &  operator[] (const label) const
 Return element const reference.
T &  operator[] (const label)
 Return element reference.
const T *  operator() (const label) const
 Return element const pointer.
iterator  begin ()
 Return an iterator to begin traversing the UPtrList.
iterator  end ()
 Return an iterator to end traversing the UPtrList.

Friends

class  iterator
Ostream &  operator (Ostream &, const UPtrList< T > &)

Member Typedef Documentation

typedef T value_type

Type of values the UPtrList contains.

Definition at line 180 of file UPtrList.H.

typedef T& reference

Type that can be used for storing into UPtrList::value_type objects.

Definition at line 183 of file UPtrList.H.

typedef const T& const_reference

Type that can be used for storing into constant UPtrList::value_type.

objects.

Definition at line 187 of file UPtrList.H.


Constructor & Destructor Documentation

UPtrList (  )

Null Constructor.

Definition at line 33 of file UPtrList.C.

UPtrList ( const label   s  ) [explicit]

Construct with length specified.

Definition at line 40 of file UPtrList.C.

UPtrList ( const Xfer< UPtrList< T > > &   lst  )

Construct by transferring the parameter contents.

Definition at line 47 of file UPtrList.C.

UPtrList ( UPtrList< T > &   a,
bool   reUse  
)

Construct as copy or re-use as specified.

Definition at line 54 of file UPtrList.C.


Member Function Documentation

Foam::label size (  ) const [inline]

Return the number of elements in the UPtrList.

Definition at line 31 of file UPtrListI.H.

Referenced by GAMGAgglomeration::agglomerateLduAddressing(), lduMatrix::initMatrixInterfaces(), and lduMatrix::updateMatrixInterfaces().

bool empty (  ) const [inline]

Return true if the UPtrList is empty (ie, size() is zero).

Definition at line 38 of file UPtrListI.H.

void setSize ( const label   newSize  )

Reset size of UPtrList. This can only be used to set the size.

of an empty UPtrList, extend a UPtrList, remove entries from the end of a UPtrList.

Definition at line 63 of file UPtrList.C.

References clear().

void resize ( const label   newSize  ) [inline]

Reset size of UPtrList. This can only be used to set the size.

of an empty UPtrList, extend a UPtrList, remove entries from the end of a UPtrList.

Definition at line 45 of file UPtrListI.H.

References setSize().

void clear (  )

Clear the UPtrList, i.e. set size to zero.

Definition at line 89 of file UPtrList.C.

void transfer ( UPtrList< T > &   a  )

Transfer the contents of the argument UPtrList into this.

UPtrList and annull the argument list.

Definition at line 98 of file UPtrList.C.

References UPtrList< T >::transfer().

Referenced by UPtrList< T >::transfer().

Foam::Xfer< Foam::UPtrList< T > > xfer (  ) [inline]

Transfer contents to the Xfer container.

Definition at line 66 of file UPtrListI.H.

References Foam::xferMove().

T * set ( const label   i,
T *   ptr  
) [inline]

Set element. Return old element (can be NULL).

No checks on new element.

Definition at line 58 of file UPtrListI.H.

References T.

void reorder ( const UList< label > &   oldToNew  )

Reorders elements. Ordering does not have to be done in.

ascending or descending order. Reordering has to be unique. (is shuffle)

Definition at line 105 of file UPtrList.C.

References Foam::abort(), Foam::FatalError, FatalErrorIn, forAll, Foam::nl, UList< T >::size(), and Foam::T().

const T & operator[] ( const label   i  ) const [inline]

Return element const reference.

Definition at line 75 of file UPtrListI.H.

References Foam::abort(), Foam::FatalError, and FatalErrorIn.

T & operator[] ( const label   i  ) [inline]

Return element reference.

Definition at line 89 of file UPtrListI.H.

References Foam::abort(), Foam::FatalError, and FatalErrorIn.

const T * operator() ( const label   i  ) const [inline]

Return element const pointer.

Definition at line 103 of file UPtrListI.H.

Foam::UPtrList< T >::iterator begin (  ) [inline]

Return an iterator to begin traversing the UPtrList.

Definition at line 257 of file UPtrListI.H.

References UList< T >::begin().

Foam::UPtrList< T >::iterator end (  ) [inline]

Return an iterator to end traversing the UPtrList.

Definition at line 264 of file UPtrListI.H.

References UList< T >::end().


Friends And Related Function Documentation

friend class iterator [friend]

Definition at line 193 of file UPtrList.H.

Ostream& operator ( Ostream &   ,
const UPtrList< T > &    
) [friend]

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