ENH: provide access to the underlying patch types of generic patches (issue #188)

This commit is contained in:
Mark Olesen
2016-07-15 16:24:46 +02:00
parent ecfbdce3da
commit e07327fef4
6 changed files with 38 additions and 8 deletions

View File

@ -118,6 +118,12 @@ Foam::genericPolyPatch::~genericPolyPatch()
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
const Foam::word& Foam::genericPolyPatch::actualType() const
{
return actualTypeName_;
}
void Foam::genericPolyPatch::write(Ostream& os) const
{
os.writeKeyword("type") << actualTypeName_ << token::END_STATEMENT << nl;

View File

@ -3,7 +3,7 @@
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\/ M anipulation |
\\/ M anipulation | Copyright (C) 2016 OpenCFD Ltd.
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
@ -25,8 +25,9 @@ Class
Foam::genericPolyPatch
Description
Substitute for unknown patches. Used for postprocessing when only
basic polyPatch info is needed.
Substitute for unknown patches.
Used for postprocessing when only basic polyPatch info is needed
or if the real patch type is unavailable.
Note
Storage is not optimal. It stores all face centres and cells on all
@ -57,7 +58,7 @@ class genericPolyPatch
{
// Private data
word actualTypeName_;
const word actualTypeName_;
dictionary dict_;
public:
@ -162,6 +163,9 @@ public:
// Member functions
//- Return the actual type
const word& actualType() const;
//- Write the polyPatch data as a dictionary
virtual void write(Ostream&) const;
};

View File

@ -764,6 +764,13 @@ Foam::genericFvPatchField<Type>::gradientBoundaryCoeffs() const
}
template<class Type>
const Foam::word& Foam::genericFvPatchField<Type>::actualType() const
{
return actualTypeName_;
}
template<class Type>
void Foam::genericFvPatchField<Type>::write(Ostream& os) const
{

View File

@ -59,7 +59,7 @@ class genericFvPatchField
{
// Private data
word actualTypeName_;
const word actualTypeName_;
dictionary dict_;
HashPtrTable<scalarField> scalarFields_;
@ -179,6 +179,9 @@ public:
tmp<Field<Type>> gradientBoundaryCoeffs() const;
//- Return the actual type
const word& actualType() const;
//- Write
virtual void write(Ostream&) const;
};

View File

@ -3,7 +3,7 @@
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation
\\/ M anipulation |
\\/ M anipulation | Copyright (C) 2016 OpenCFD Ltd.
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
@ -557,6 +557,13 @@ void Foam::genericPointPatchField<Type>::rmap
}
template<class Type>
const Foam::word& Foam::genericPointPatchField<Type>::actualType() const
{
return actualTypeName_;
}
template<class Type>
void Foam::genericPointPatchField<Type>::write(Ostream& os) const
{

View File

@ -3,7 +3,7 @@
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation
\\/ M anipulation |
\\/ M anipulation | Copyright (C) 2016 OpenCFD Ltd.
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
@ -55,7 +55,7 @@ class genericPointPatchField
{
// Private data
word actualTypeName_;
const word actualTypeName_;
dictionary dict_;
HashPtrTable<scalarField> scalarFields_;
@ -151,6 +151,9 @@ public:
);
//- Return the actual type
const word& actualType() const;
//- Write
virtual void write(Ostream&) const;
};