Public Member Functions | Protected Member Functions | Friends | List of all members
PtrList< T > Class Template Reference

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

Inherits UPtrList< T >.

Inherited by DictionaryBase< PtrList< T >, T >, blockMesh, fvBoundaryMesh, IOPtrList< T >, pointBoundaryMesh, and polyBoundaryMesh.

Collaboration diagram for PtrList< T >:
Collaboration graph
[legend]

Public Member Functions

 PtrList ()
 Null Constructor. More...
 
 PtrList (const label)
 Construct with size specified. More...
 
 PtrList (const PtrList< T > &)
 Copy constructor. More...
 
template<class CloneArg >
 PtrList (const PtrList< T > &, const CloneArg &)
 Copy constructor with additional argument for clone. More...
 
 PtrList (const Xfer< PtrList< T >> &)
 Construct by transferring the parameter contents. More...
 
 PtrList (PtrList< T > &, bool reuse)
 Construct as copy or re-use as specified. More...
 
 PtrList (const SLPtrList< T > &)
 Construct as copy of SLPtrList<T> More...
 
template<class INew >
 PtrList (Istream &, const INew &)
 Construct from Istream using given Istream constructor class. More...
 
 PtrList (Istream &)
 Construct from Istream using default Istream constructor class. More...
 
 ~PtrList ()
 Destructor. More...
 
void setSize (const label)
 Reset size of PtrList. If extending the PtrList, new entries are. More...
 
void resize (const label)
 Alias for setSize(const label) More...
 
void clear ()
 Clear the PtrList, i.e. set size to zero deleting all the. More...
 
void append (T *)
 Append an element at the end of the list. More...
 
void append (const autoPtr< T > &)
 
void append (const tmp< T > &)
 
void transfer (PtrList< T > &)
 Transfer the contents of the argument PtrList into this PtrList. More...
 
Xfer< PtrList< T > > xfer ()
 Transfer contents to the Xfer container. More...
 
bool set (const label) const
 Is element set. More...
 
autoPtr< Tset (const label, T *)
 Set element to given T* and return old element (can be nullptr) More...
 
autoPtr< Tset (const label, const autoPtr< T > &)
 Set element to given autoPtr<T> and return old element. More...
 
autoPtr< Tset (const label, const tmp< T > &)
 Set element to given tmp<T> and return old element. More...
 
void reorder (const labelUList &)
 Reorders elements. Ordering does not have to be done in. More...
 
void operator= (const PtrList< T > &)
 Assignment. More...
 
- Public Member Functions inherited from UPtrList< T >
 UPtrList ()
 Null Constructor. More...
 
 UPtrList (const label)
 Construct with size specified. More...
 
 UPtrList (const Xfer< UPtrList< T >> &)
 Construct by transferring the parameter contents. More...
 
 UPtrList (UPtrList< T > &, bool reuse)
 Construct as copy or re-use as specified. More...
 
label size () const
 Return the number of elements in the UPtrList. More...
 
bool empty () const
 Return true if the UPtrList is empty (ie, size() is zero) More...
 
Tfirst ()
 Return reference to the first element of the list. More...
 
const Tfirst () const
 Return reference to first element of the list. More...
 
Tlast ()
 Return reference to the last element of the list. More...
 
const Tlast () const
 Return reference to the last element of the list. More...
 
void setSize (const label)
 Reset size of UPtrList. This can only be used to set the size. More...
 
void resize (const label)
 Reset size of UPtrList. This can only be used to set the size. More...
 
void clear ()
 Clear the UPtrList, i.e. set size to zero. More...
 
void transfer (UPtrList< T > &)
 Transfer the contents of the argument UPtrList into this. More...
 
Xfer< UPtrList< T > > xfer ()
 Transfer contents to the Xfer container. More...
 
bool set (const label) const
 Is element set. More...
 
Tset (const label, T *)
 Set element. Return old element (can be nullptr). More...
 
void reorder (const labelUList &)
 Reorders elements. Ordering does not have to be done in. More...
 
const Toperator[] (const label) const
 Return element const reference. More...
 
Toperator[] (const label)
 Return element reference. More...
 
const Toperator() (const label) const
 Return element const pointer. More...
 
iterator begin ()
 Return an iterator to begin traversing the UPtrList. More...
 
iterator end ()
 Return an iterator to end traversing the UPtrList. More...
 
const_iterator cbegin () const
 Return an const_iterator to begin traversing the UPtrList. More...
 
const_iterator cend () const
 Return an const_iterator to end traversing the UPtrList. More...
 
const_iterator begin () const
 Return an const_iterator to begin traversing the UPtrList. More...
 
const_iterator end () const
 Return an const_iterator to end traversing the UPtrList. More...
 

Protected Member Functions

template<class INew >
void read (Istream &, const INew &inewt)
 Read from Istream using given Istream constructor class. More...
 

Friends

Istreamoperator>> (Istream &, PtrList< T > &)
 Read PtrList from Istream, discarding contents of existing PtrList. More...
 

Additional Inherited Members

- Public Types inherited from UPtrList< T >
typedef T value_type
 Type of values the UPtrList contains. More...
 
typedef Treference
 Type that can be used for storing into UPtrList::value_type objects. More...
 
typedef const Tconst_reference
 Type that can be used for storing into constant UPtrList::value_type. More...
 

Detailed Description

template<class T>
class Foam::PtrList< T >

A templated 1D list 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.

Source files

Definition at line 63 of file List.H.

Constructor & Destructor Documentation

◆ PtrList() [1/9]

PtrList ( )

Null Constructor.

Definition at line 32 of file PtrList.C.

◆ PtrList() [2/9]

PtrList ( const label  s)
explicit

Construct with size specified.

Definition at line 39 of file PtrList.C.

◆ PtrList() [3/9]

PtrList ( const PtrList< T > &  a)

Copy constructor.

Definition at line 46 of file PtrList.C.

◆ PtrList() [4/9]

PtrList ( const PtrList< T > &  a,
const CloneArg &  cloneArg 
)

Copy constructor with additional argument for clone.

Definition at line 59 of file PtrList.C.

◆ PtrList() [5/9]

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

Construct by transferring the parameter contents.

Definition at line 71 of file PtrList.C.

◆ PtrList() [6/9]

PtrList ( PtrList< T > &  a,
bool  reuse 
)

Construct as copy or re-use as specified.

Definition at line 78 of file PtrList.C.

◆ PtrList() [7/9]

PtrList ( const SLPtrList< T > &  sll)
explicit

Construct as copy of SLPtrList<T>

Definition at line 93 of file PtrList.C.

◆ PtrList() [8/9]

PtrList ( Istream is,
const INew inewt 
)

Construct from Istream using given Istream constructor class.

Definition at line 160 of file PtrListIO.C.

◆ PtrList() [9/9]

PtrList ( Istream is)

Construct from Istream using default Istream constructor class.

Definition at line 167 of file PtrListIO.C.

◆ ~PtrList()

~PtrList ( )

Destructor.

Definition at line 116 of file PtrList.C.

Member Function Documentation

◆ read()

void read ( Istream is,
const INew inewt 
)
protected

Read from Istream using given Istream constructor class.

Definition at line 36 of file PtrListIO.C.

Referenced by PtrList< transferModel >::PtrList().

Here is the caller graph for this function:

◆ setSize()

void setSize ( const label  newSize)

◆ resize()

void resize ( const label  newSize)
inline

Alias for setSize(const label)

Definition at line 32 of file PtrListI.H.

◆ clear()

void clear ( )

Clear the PtrList, i.e. set size to zero deleting all the.

allocated entries

Definition at line 174 of file PtrList.C.

Referenced by functionObjectList::clear(), PtrList< transferModel >::PtrList(), functionObjectList::read(), fvBoundaryMesh::readUpdate(), polyMesh::readUpdate(), polyMesh::removeBoundary(), fvMesh::removeFvBoundary(), and decompositionMethod::setConstraints().

Here is the caller graph for this function:

◆ append() [1/3]

void append ( T ptr)
inline

Append an element at the end of the list.

Definition at line 39 of file PtrListI.H.

Referenced by singleProcessorFaceSetsConstraint::add(), PtrList< transferModel >::append(), meshToMesh::interpolationMethodAMI(), and rigidBodyMeshMotionSolver::rigidBodyMeshMotionSolver().

Here is the caller graph for this function:

◆ append() [2/3]

void append ( const autoPtr< T > &  aptr)
inline

Definition at line 48 of file PtrListI.H.

◆ append() [3/3]

void append ( const tmp< T > &  t)
inline

Definition at line 56 of file PtrListI.H.

◆ transfer()

void transfer ( PtrList< T > &  a)

Transfer the contents of the argument PtrList into this PtrList.

and annul the argument list

Definition at line 189 of file PtrList.C.

Referenced by functionObjectList::read().

Here is the caller graph for this function:

◆ xfer()

Foam::Xfer< Foam::PtrList< T > > xfer ( )
inline

Transfer contents to the Xfer container.

Definition at line 103 of file PtrListI.H.

◆ set() [1/4]

bool set ( const label  i) const
inline

◆ set() [2/4]

Foam::autoPtr< T > set ( const label  i,
T ptr 
)
inline

Set element to given T* and return old element (can be nullptr)

Definition at line 72 of file PtrListI.H.

◆ set() [3/4]

Foam::autoPtr< T > set ( const label  i,
const autoPtr< T > &  aptr 
)
inline

Set element to given autoPtr<T> and return old element.

Definition at line 82 of file PtrListI.H.

◆ set() [4/4]

Foam::autoPtr< T > set ( const label  i,
const tmp< T > &  t 
)
inline

Set element to given tmp<T> and return old element.

Definition at line 93 of file PtrListI.H.

◆ reorder()

void reorder ( const labelUList 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 197 of file PtrList.C.

Referenced by fvMeshTools::addPatch(), meshRefinement::addPatch(), polyBoundaryMesh::reorder(), and fvMeshTools::reorderPatches().

Here is the caller graph for this function:

◆ operator=()

void operator= ( const PtrList< T > &  a)

Assignment.

Definition at line 250 of file PtrList.C.

Friends And Related Function Documentation

◆ operator>>

Istream& operator>> ( Istream ,
PtrList< T > &   
)
friend

Read PtrList from Istream, discarding contents of existing PtrList.


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