faPatch Class Reference

Finite area patch class. Used for 2-D non-Euclidian finite area method. More...

Inheritance diagram for faPatch:
[legend]
Collaboration diagram for faPatch:
[legend]

Public Types

typedef faBoundaryMesh BoundaryMesh
 
- Public Types inherited from List< label >
typedef SubList< label > subList
 Declare type of subList. More...
 

Public Member Functions

 TypeName ("patch")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, faPatch, dictionary,(const word &name, const dictionary &dict, const label index, const faBoundaryMesh &bm),(name, dict, index, bm))
 
 faPatch (const word &name, const labelList &edgeLabels, const label index, const faBoundaryMesh &bm, const label ngbPolyPatchIndex)
 Construct from components. More...
 
 faPatch (const word &name, const dictionary &dict, const label index, const faBoundaryMesh &bm)
 Construct from dictionary. More...
 
 faPatch (const faPatch &, const faBoundaryMesh &)
 Construct as copy, resetting the boundary mesh. More...
 
virtual autoPtr< faPatchclone (const faBoundaryMesh &bm, const labelList &edgeLabels, const label index, const label ngbPolyPatchIndex) const
 
virtual ~faPatch ()
 Destructor. More...
 
label nPoints () const
 Return number of patch points. More...
 
label ngbPolyPatchIndex () const
 Return neighbour polyPatch index. More...
 
const faBoundaryMeshboundaryMesh () const
 Return boundaryMesh reference. More...
 
virtual bool coupled () const
 Return true if this patch is coupled. More...
 
label start () const
 Patch start in edge list. More...
 
virtual label size () const
 Patch size. More...
 
label whichEdge (const label l) const
 Return label of edge in patch from global edge label. More...
 
template<class T >
List< T >::subList patchSlice (const List< T > &l) const
 Slice list to patch. More...
 
virtual void write (Ostream &) const
 Write. More...
 
const labelListpointLabels () const
 Return patch point labels. More...
 
const labelListListpointEdges () const
 Return patch point-edge addressing. More...
 
labelList ngbPolyPatchFaces () const
 Return edge neighbour polyPatch faces. More...
 
tmp< vectorFieldngbPolyPatchFaceNormals () const
 Return normals of neighbour polyPatch faces. More...
 
tmp< vectorFieldngbPolyPatchPointNormals () const
 Return normals of neighbour polyPatch joined points. More...
 
const labelUListedgeFaces () const
 Return edge-face addressing. More...
 
const vectorFieldedgeCentres () const
 Return edge centres. More...
 
const vectorFieldedgeLengths () const
 Return edge length vectors. More...
 
const scalarFieldmagEdgeLengths () const
 Return edge length magnitudes. More...
 
tmp< vectorFieldedgeNormals () const
 Return edge normals. More...
 
tmp< vectorFieldedgeFaceCentres () const
 Return neighbour face centres. More...
 
virtual tmp< vectorFielddelta () const
 Return cell-centre to face-centre vector. More...
 
virtual void makeWeights (scalarField &) const
 Make patch weighting factors. More...
 
const scalarFieldweights () const
 Return patch weighting factors. More...
 
virtual void makeDeltaCoeffs (scalarField &) const
 Make patch edge - neighbour face distances. More...
 
void makeCorrectionVectors (vectorField &) const
 
const scalarFielddeltaCoeffs () const
 Return patch edge - neighbour face distances. More...
 
void resetEdges (const labelList &)
 Reset edge list. More...
 
template<class Type >
tmp< Field< Type > > patchInternalField (const UList< Type > &) const
 Return given internal field next to patch as patch field. More...
 
template<class GeometricField , class Type >
const GeometricField::PatchpatchField (const GeometricField &) const
 Return the corresponding patchField of the named field. More...
 
template<class GeometricField , class Type >
const GeometricField::PatchlookupPatchField (const word &name, const GeometricField *=nullptr, const Type *=nullptr) const
 
template<class Type >
Foam::tmp< Foam::Field< Type > > patchInternalField (const UList< Type > &f) const
 
- Public Member Functions inherited from List< label >
constexpr List () noexcept
 Null constructor. More...
 
 List (const label len)
 Construct with given size. More...
 
 List (const label len, const label &val)
 Construct with given size and value for all elements. More...
 
 List (const label len, const Foam::zero)
 Construct with given size initializing all elements to zero. More...
 
 List (const Foam::one, const label &val)
 Construct with length=1, copying the value as the only content. More...
 
 List (const Foam::one, label &&val)
 Construct with length=1, moving the value as the only content. More...
 
 List (const Foam::one, const Foam::zero)
 Construct with length=1, initializing content to zero. More...
 
 List (const List< label > &a)
 Copy construct from list. More...
 
 List (const UList< label > &a)
 Copy construct contents from list. More...
 
 List (List< label > &a, bool reuse)
 Construct as copy or re-use as specified. More...
 
 List (const UList< label > &list, const labelUList &indices)
 Copy construct subset of list. More...
 
 List (const UList< label > &list, const FixedList< label, N > &indices)
 Copy construct subset of list. More...
 
 List (InputIterator begIter, InputIterator endIter)
 Construct given begin/end iterators. More...
 
 List (const FixedList< label, N > &list)
 Construct as copy of FixedList<T, N> More...
 
 List (const PtrList< label > &list)
 Construct as copy of PtrList<T> More...
 
 List (const SLList< label > &list)
 Construct as copy of SLList<T> More...
 
 List (const IndirectListBase< label, Addr > &list)
 Construct as copy of IndirectList contents. More...
 
 List (std::initializer_list< label > list)
 Construct from an initializer list. More...
 
 List (List< label > &&list)
 Move construct from List. More...
 
 List (DynamicList< label, SizeMin > &&list)
 Move construct from DynamicList. More...
 
 List (SortableList< label > &&list)
 Move construct from SortableList. More...
 
 List (SLList< label > &&list)
 Move construct from SLList. More...
 
 List (Istream &is)
 Construct from Istream. More...
 
autoPtr< List< label > > clone () const
 Clone. More...
 
 ~List ()
 Destructor. More...
 
void resize (const label newSize)
 Adjust allocated size of list. More...
 
void resize (const label newSize, const label &val)
 Adjust allocated size of list and set val for new elements. More...
 
void resize (const label newSize)
 
void setSize (const label newSize)
 Alias for resize(const label) More...
 
void setSize (const label newSize, const label &val)
 Alias for resize(const label, const T&) More...
 
void clear ()
 Clear the list, i.e. set size to zero. More...
 
void append (const label &val)
 Append an element at the end of the list. More...
 
void append (label &&val)
 Move append an element at the end of the list. More...
 
void append (const UList< label > &list)
 Append a List to the end of this list. More...
 
void append (const IndirectListBase< label, Addr > &list)
 Append IndirectList contents at the end of this list. More...
 
void transfer (List< label > &list)
 
void transfer (DynamicList< label, SizeMin > &list)
 
void transfer (SortableList< label > &list)
 
label & newElmt (const label i)
 
void operator= (const UList< label > &a)
 Assignment to UList operator. Takes linear time. More...
 
void operator= (const List< label > &list)
 Assignment operator. Takes linear time. More...
 
void operator= (const SLList< label > &list)
 Assignment to SLList operator. Takes linear time. More...
 
void operator= (const IndirectListBase< label, Addr > &list)
 Assignment from IndirectList. Takes linear time. More...
 
void operator= (const FixedList< label, N > &list)
 Copy assignment from FixedList. More...
 
void operator= (std::initializer_list< label > list)
 Assignment to an initializer list. More...
 
void operator= (const label &val)
 Assignment of all entries to the given value. More...
 
void operator= (const Foam::zero)
 Assignment of all entries to zero. More...
 
void operator= (List< label > &&list)
 Move assignment. Takes constant time. More...
 
void operator= (DynamicList< label, SizeMin > &&list)
 Move assignment. Takes constant time. More...
 
void operator= (SortableList< label > &&list)
 Move assignment. Takes constant time. More...
 
void operator= (SLList< label > &&list)
 Move assignment. Takes constant time. More...
 
void shallowCopy (const UList< label > &)=delete
 No shallowCopy permitted. More...
 
std::enable_if< std::is_same< bool, TypeT >::value, bool >::type set (const label i, bool val=true)
 A bitSet::set() method for a list of bool. More...
 
- Public Member Functions inherited from patchIdentifier
 patchIdentifier (const patchIdentifier &)=default
 Copy construct. More...
 
patchIdentifieroperator= (const patchIdentifier &)=default
 Copy assignment. More...
 
virtual ~patchIdentifier ()=default
 Destructor. More...
 
 patchIdentifier ()
 Default construct, with index zero. More...
 
 patchIdentifier (const word &name, const label index)
 Construct from mandatory components. More...
 
 patchIdentifier (const word &name, const label index, const word &physicalType, const wordList &inGroups=wordList())
 Construct from components. More...
 
 patchIdentifier (const word &name, const dictionary &dict, const label index)
 Construct from dictionary. More...
 
 patchIdentifier (const patchIdentifier &p, const label index)
 Copy construct, resetting the index. More...
 
const wordname () const
 The patch name. More...
 
wordname ()
 Modifiable patch name. More...
 
const wordphysicalType () const
 The (optional) physical type of the patch. More...
 
wordphysicalType ()
 Modifiable (optional) physical type of the patch. More...
 
label index () const
 The index of this patch in the boundaryMesh. More...
 
label & index ()
 Modifiable index of this patch in the boundaryMesh. More...
 
const wordListinGroups () const
 The (optional) groups that the patch belongs to. More...
 
wordListinGroups ()
 Modifiable (optional) groups that the patch belongs to. More...
 
bool inGroup (const word &name) const
 True if the patch is in named group. More...
 
void write (Ostream &os) const
 

Static Public Member Functions

static autoPtr< faPatchNew (const word &name, const dictionary &dict, const label index, const faBoundaryMesh &bm)
 
- Static Public Member Functions inherited from List< label >
static const List< label > & null ()
 Return a null List. More...
 
- Static Public Member Functions inherited from patchIdentifier
static word defaultName (const label n=-1)
 Default patch name: "patch" or "patchN". More...
 

Protected Member Functions

void calcPointLabels () const
 Calculate patch point labels. More...
 
void calcPointEdges () const
 Calculate patch point-edge addressing. More...
 
virtual void initGeometry ()
 Initialise the calculation of the patch geometry. More...
 
virtual void calcGeometry ()
 Calculate the patch geometry. More...
 
virtual void initMovePoints (const pointField &)
 Initialise the patches for moving points. More...
 
virtual void movePoints (const pointField &)
 Correct patch after moving points. More...
 
virtual void initUpdateMesh ()
 Initialise the update of the patch topology. More...
 
virtual void updateMesh ()
 Update of the patch topology. More...
 

Friends

class faBoundaryMesh
 The faPatch geometry initialisation is called by faBoundaryMesh. More...
 
Ostreamoperator<< (Ostream &, const faPatch &)
 

Detailed Description

Finite area patch class. Used for 2-D non-Euclidian finite area method.

Author Zeljko Tukovic, FMENA Hrvoje Jasak, Wikki Ltd.

Source files

Definition at line 68 of file faPatch.H.

Member Typedef Documentation

◆ BoundaryMesh

Definition at line 146 of file faPatch.H.

Constructor & Destructor Documentation

◆ faPatch() [1/3]

faPatch ( const word name,
const labelList edgeLabels,
const label  index,
const faBoundaryMesh bm,
const label  ngbPolyPatchIndex 
)

Construct from components.

Definition at line 62 of file faPatch.C.

◆ faPatch() [2/3]

faPatch ( const word name,
const dictionary dict,
const label  index,
const faBoundaryMesh bm 
)

Construct from dictionary.

Definition at line 81 of file faPatch.C.

◆ faPatch() [3/3]

faPatch ( const faPatch p,
const faBoundaryMesh bm 
)

Construct as copy, resetting the boundary mesh.

Definition at line 98 of file faPatch.C.

◆ ~faPatch()

~faPatch ( )
virtual

Destructor.

Definition at line 112 of file faPatch.C.

Member Function Documentation

◆ calcPointLabels()

void calcPointLabels ( ) const
protected

Calculate patch point labels.

Definition at line 149 of file faPatch.C.

References LList< LListBase, T >::append(), stdFoam::end(), forAll, forAllIters, and mesh.

Here is the call graph for this function:

◆ calcPointEdges()

void calcPointEdges ( ) const
protected

Calculate patch point-edge addressing.

Definition at line 188 of file faPatch.C.

References stdFoam::begin(), Foam::constant::electromagnetic::e, forAll, mesh, pointLabels(), and points.

Here is the call graph for this function:

◆ initGeometry()

virtual void initGeometry ( )
inlineprotectedvirtual

Initialise the calculation of the patch geometry.

Reimplemented in coupledFaPatch, cyclicFaPatch, and processorFaPatch.

Definition at line 121 of file faPatch.H.

Referenced by cyclicFaPatch::initGeometry().

Here is the caller graph for this function:

◆ calcGeometry()

virtual void calcGeometry ( )
inlineprotectedvirtual

Calculate the patch geometry.

Reimplemented in coupledFaPatch, cyclicFaPatch, and processorFaPatch.

Definition at line 125 of file faPatch.H.

Referenced by cyclicFaPatch::calcGeometry().

Here is the caller graph for this function:

◆ initMovePoints()

virtual void initMovePoints ( const pointField )
inlineprotectedvirtual

Initialise the patches for moving points.

Reimplemented in coupledFaPatch, cyclicFaPatch, and processorFaPatch.

Definition at line 129 of file faPatch.H.

Referenced by cyclicFaPatch::initMovePoints().

Here is the caller graph for this function:

◆ movePoints()

void movePoints ( const pointField points)
protectedvirtual

Correct patch after moving points.

Reimplemented in coupledFaPatch, cyclicFaPatch, and processorFaPatch.

Definition at line 468 of file faPatch.C.

Referenced by processorFaPatch::initMovePoints(), and cyclicFaPatch::movePoints().

Here is the caller graph for this function:

◆ initUpdateMesh()

virtual void initUpdateMesh ( )
inlineprotectedvirtual

Initialise the update of the patch topology.

Reimplemented in processorFaPatch.

Definition at line 136 of file faPatch.H.

Referenced by processorFaPatch::initUpdateMesh().

Here is the caller graph for this function:

◆ updateMesh()

virtual void updateMesh ( )
inlineprotectedvirtual

Update of the patch topology.

Reimplemented in processorFaPatch.

Definition at line 140 of file faPatch.H.

Referenced by processorFaPatch::updateMesh().

Here is the caller graph for this function:

◆ TypeName()

TypeName ( "patch"  )

Runtime type information.

◆ declareRunTimeSelectionTable()

declareRunTimeSelectionTable ( autoPtr  ,
faPatch  ,
dictionary  ,
(const word &name, const dictionary &dict, const label index, const faBoundaryMesh &bm)  ,
(name, dict, index, bm)   
)

◆ clone()

virtual autoPtr<faPatch> clone ( const faBoundaryMesh bm,
const labelList edgeLabels,
const label  index,
const label  ngbPolyPatchIndex 
) const
inlinevirtual

Construct and return a clone, resetting the edge list and boundary mesh

Reimplemented in symmetryFaPatch, and emptyFaPatch.

Definition at line 195 of file faPatch.H.

References patchIdentifier::index(), patchIdentifier::name(), autoPtr< T >::New(), and faPatch::ngbPolyPatchIndex().

Here is the call graph for this function:

◆ New()

Foam::autoPtr< Foam::faPatch > New ( const word name,
const dictionary dict,
const label  index,
const faBoundaryMesh bm 
)
static

Return a pointer to a new patch created on freestore from dictionary

Definition at line 35 of file faPatchNew.C.

References DebugInFunction, dict, Foam::endl(), Foam::exit(), Foam::FatalIOError, FatalIOErrorInLookup, and Foam::name().

Referenced by faMesh::faMesh().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ nPoints()

label nPoints ( ) const
inline

Return number of patch points.

Definition at line 228 of file faPatch.H.

References faPatch::pointLabels().

Here is the call graph for this function:

◆ ngbPolyPatchIndex()

Foam::label ngbPolyPatchIndex ( ) const

Return neighbour polyPatch index.

Definition at line 120 of file faPatch.C.

Referenced by emptyFaPatch::clone(), symmetryFaPatch::clone(), and faPatch::clone().

Here is the caller graph for this function:

◆ boundaryMesh()

Return boundaryMesh reference.

Definition at line 126 of file faPatch.C.

◆ coupled()

virtual bool coupled ( ) const
inlinevirtual

Return true if this patch is coupled.

Reimplemented in processorFaPatch, and coupledFaPatch.

Definition at line 240 of file faPatch.H.

◆ start()

Foam::label start ( ) const

Patch start in edge list.

Definition at line 132 of file faPatch.C.

References boundaryMesh::mesh().

Referenced by faPatch::patchSlice(), and faPatch::whichEdge().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ size()

virtual label size ( ) const
inlinevirtual

Patch size.

Reimplemented in emptyFaPatch.

Definition at line 249 of file faPatch.H.

Referenced by processorFaPatch::interfaceSize(), faPatch::ngbPolyPatchFaceNormals(), faPatch::ngbPolyPatchFaces(), faPatch::patchSlice(), and faPatchMapper::size().

Here is the caller graph for this function:

◆ whichEdge()

label whichEdge ( const label  l) const
inline

Return label of edge in patch from global edge label.

Definition at line 255 of file faPatch.H.

References faPatch::start().

Here is the call graph for this function:

◆ patchSlice()

List<T>::subList patchSlice ( const List< T > &  l) const
inline

Slice list to patch.

Definition at line 262 of file faPatch.H.

References faPatch::size(), and faPatch::start().

Here is the call graph for this function:

◆ write()

void write ( Ostream os) const
virtual

Write.

Reimplemented in processorFaPatch.

Definition at line 481 of file faPatch.C.

References Foam::type(), patchIdentifier::write(), and Ostream::writeEntry().

Referenced by processorFaPatch::write().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ pointLabels()

const Foam::labelList & pointLabels ( ) const

Return patch point labels.

Definition at line 138 of file faPatch.C.

Referenced by faPatch::nPoints(), and faGlobalMeshData::updateMesh().

Here is the caller graph for this function:

◆ pointEdges()

const Foam::labelListList & pointEdges ( ) const

Return patch point-edge addressing.

Definition at line 231 of file faPatch.C.

◆ ngbPolyPatchFaces()

Foam::labelList ngbPolyPatchFaces ( ) const

Return edge neighbour polyPatch faces.

Definition at line 242 of file faPatch.C.

References aMesh(), polyMesh::boundaryMesh(), primitiveMesh::cellEdges(), primitiveMesh::edgeFaces(), primitiveMesh::edges(), Foam::endl(), faMesh::faceLabels(), polyMesh::faceOwner(), forAll, boundaryMesh::mesh(), Foam::foamVersion::patch, faMesh::patch(), List< T >::setSize(), faPatch::size(), WarningInFunction, and polyBoundaryMesh::whichPatch().

Here is the call graph for this function:

◆ ngbPolyPatchFaceNormals()

Foam::tmp< Foam::vectorField > ngbPolyPatchFaceNormals ( ) const

Return normals of neighbour polyPatch faces.

Definition at line 310 of file faPatch.C.

References polyMesh::faces(), forAll, boundaryMesh::mesh(), tmp< T >::New(), points, polyMesh::points(), and faPatch::size().

Here is the call graph for this function:

◆ ngbPolyPatchPointNormals()

Foam::tmp< Foam::vectorField > ngbPolyPatchPointNormals ( ) const

Return normals of neighbour polyPatch joined points.

Definition at line 338 of file faPatch.C.

References faceNormals(), forAll, Foam::mag(), tmp< T >::New(), and Foam::Zero.

Here is the call graph for this function:

◆ edgeFaces()

const Foam::labelUList & edgeFaces ( ) const

Return edge-face addressing.

Definition at line 366 of file faPatch.C.

References mesh.

Referenced by coupledFaPatch::faceCells().

Here is the caller graph for this function:

◆ edgeCentres()

const Foam::vectorField & edgeCentres ( ) const

Return edge centres.

Definition at line 380 of file faPatch.C.

References boundaryMesh::mesh().

Here is the call graph for this function:

◆ edgeLengths()

const Foam::vectorField & edgeLengths ( ) const

Return edge length vectors.

Definition at line 386 of file faPatch.C.

References boundaryMesh::mesh().

Here is the call graph for this function:

◆ magEdgeLengths()

const Foam::scalarField & magEdgeLengths ( ) const

Return edge length magnitudes.

Definition at line 392 of file faPatch.C.

References boundaryMesh::mesh().

Here is the call graph for this function:

◆ edgeNormals()

Foam::tmp< Foam::vectorField > edgeNormals ( ) const

Return edge normals.

Definition at line 398 of file faPatch.C.

References tmp< T >::ref().

Here is the call graph for this function:

◆ edgeFaceCentres()

Foam::tmp< Foam::vectorField > edgeFaceCentres ( ) const

Return neighbour face centres.

Definition at line 408 of file faPatch.C.

References forAll, boundaryMesh::mesh(), and tmp< T >::New().

Here is the call graph for this function:

◆ delta()

Foam::tmp< Foam::vectorField > delta ( ) const
virtual

Return cell-centre to face-centre vector.

except for coupled patches for which the cell-centre to coupled-cell-centre vector is returned

Reimplemented in coupledFaPatch, processorFaPatch, and cyclicFaPatch.

Definition at line 428 of file faPatch.C.

Referenced by cyclicFaPatch::delta(), processorFaPatch::delta(), cyclicFaPatch::makeDeltaCoeffs(), processorFaPatch::makeDeltaCoeffs(), cyclicFaPatch::makeWeights(), and processorFaPatch::makeWeights().

Here is the caller graph for this function:

◆ makeWeights()

void makeWeights ( scalarField w) const
virtual

Make patch weighting factors.

Reimplemented in coupledFaPatch, processorFaPatch, and cyclicFaPatch.

Definition at line 456 of file faPatch.C.

◆ weights()

const Foam::scalarField & weights ( ) const

Return patch weighting factors.

Definition at line 462 of file faPatch.C.

References boundaryMesh::mesh().

Here is the call graph for this function:

◆ makeDeltaCoeffs()

void makeDeltaCoeffs ( scalarField dc) const
virtual

Make patch edge - neighbour face distances.

Reimplemented in coupledFaPatch, processorFaPatch, and cyclicFaPatch.

Definition at line 434 of file faPatch.C.

References delta.

◆ makeCorrectionVectors()

void makeCorrectionVectors ( vectorField k) const

Definition at line 440 of file faPatch.C.

References delta, k, and Foam::mag().

Here is the call graph for this function:

◆ deltaCoeffs()

const Foam::scalarField & deltaCoeffs ( ) const

Return patch edge - neighbour face distances.

Definition at line 450 of file faPatch.C.

References boundaryMesh::mesh().

Here is the call graph for this function:

◆ resetEdges()

void resetEdges ( const labelList newEdges)

Reset edge list.

Definition at line 472 of file faPatch.C.

References Foam::endl(), Foam::Info, and List< label >::operator=().

Here is the call graph for this function:

◆ patchInternalField() [1/2]

tmp<Field<Type> > patchInternalField ( const UList< Type > &  ) const

Return given internal field next to patch as patch field.

◆ patchField()

const GeometricField::Patch & patchField ( const GeometricField gf) const

Return the corresponding patchField of the named field.

Definition at line 54 of file faPatchTemplates.C.

References GeometricField< Type, PatchField, GeoMesh >::boundaryField().

Here is the call graph for this function:

◆ lookupPatchField()

const GeometricField::Patch & lookupPatchField ( const word name,
const GeometricField = nullptr,
const Type *  = nullptr 
) const

Lookup and return the patchField of the named field from the local objectRegistry.

N.B. The dummy pointer arguments are used if this function is instantiated within a templated function to avoid a bug in gcc. See inletOutletFvPatchField.C and outletInletFvPatchField.C

Definition at line 34 of file faPatchFaMeshTemplates.C.

References mesh, and Foam::name().

Here is the call graph for this function:

◆ patchInternalField() [2/2]

Foam::tmp<Foam::Field<Type> > patchInternalField ( const UList< Type > &  f) const

Definition at line 34 of file faPatchTemplates.C.

References f(), forAll, and tmp< T >::ref().

Here is the call graph for this function:

Friends And Related Function Documentation

◆ faBoundaryMesh

friend class faBoundaryMesh
friend

The faPatch geometry initialisation is called by faBoundaryMesh.

Definition at line 112 of file faPatch.H.

◆ operator<<

Ostream& operator<< ( Ostream ,
const faPatch  
)
friend

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