26 #ifndef GeometricFieldReuseFunctions_H
27 #define GeometricFieldReuseFunctions_H
38 template<
class Type,
class GeoMesh,
template<
class>
class PrimitiveField>
47 const geoField& gf = tgf();
48 const typename geoField::Boundary& gbf = gf.boundaryField();
55 && !isA<typename geoField::Patch::Calculated>(gbf[
patchi])
59 <<
"Attempt to reuse temporary with non-reusable BC "
76 template<
class TypeR,
class GeoMesh>
82 const bool initRet =
false
108 rtgf.
ref() == tgf1();
121 template<
class>
class PrimitiveField
146 template<
class TypeR,
class GeoMesh>
186 template<
class>
class PrimitiveField1,
187 template<
class>
class PrimitiveField2
218 template<
class>
class PrimitiveField1
262 template<
class>
class PrimitiveField2
299 template<
class TypeR,
class GeoMesh>
#define forAll(list, i)
Loop across all elements in list.
const dimensionSet & dimensions() const
Return dimensions.
const Mesh & mesh() const
Return mesh.
Pre-declare SubField and related Field type.
Generic mesh wrapper used by volMesh, surfaceMesh, pointMesh etc.
Generic GeometricField class.
static tmp< GeometricField< Type, GeoMesh, PrimitiveField > > New(const word &name, const Internal &, const PtrList< Patch > &, const HashPtrTable< Source > &=HashPtrTable< Source >())
Return a temporary field constructed from name,.
Dimension set for the base types.
void reset(const dimensionSet &)
static bool constraintType(const word &pt)
Return true if the given type is a constraint type.
virtual void rename(const word &newName)
Rename.
static tmp< GeometricField< TypeR, GeoMesh, Field > > New(const tmp< GeometricField< TypeR, GeoMesh, Field >> &tgf1, const word &name, const dimensionSet &dimensions)
static tmp< GeometricField< TypeR, GeoMesh, Field > > New(const tmp< GeometricField< Type1, GeoMesh, PrimitiveField >> &tgf1, const word &name, const dimensionSet &dimensions)
static tmp< GeometricField< TypeR, GeoMesh, Field > > New(const tmp< GeometricField< Type1, GeoMesh, PrimitiveField1 >> &tgf1, const tmp< GeometricField< TypeR, GeoMesh, Field >> &tgf2, const word &name, const dimensionSet &dimensions)
static tmp< GeometricField< TypeR, GeoMesh, Field > > New(const tmp< GeometricField< TypeR, GeoMesh, Field >> &tgf1, const tmp< GeometricField< Type2, GeoMesh, PrimitiveField2 >> &tgf2, const word &name, const dimensionSet &dimensions)
static tmp< GeometricField< TypeR, GeoMesh, Field > > New(const tmp< GeometricField< TypeR, GeoMesh, Field >> &tgf1, const tmp< GeometricField< TypeR, GeoMesh, Field >> &tgf2, const word &name, const dimensionSet &dimensions)
static tmp< GeometricField< TypeR, GeoMesh, Field > > New(const tmp< GeometricField< Type1, GeoMesh, PrimitiveField1 >> &tgf1, const tmp< GeometricField< Type2, GeoMesh, PrimitiveField2 >> &tgf2, const word &name, const dimensionSet &dimensions)
A class for managing temporary objects.
T & ref() const
Return non-const reference or generate a fatal error.
A class for handling words, derived from string.
#define WarningInFunction
Report a warning using Foam::Warning.
const HashTable< dimensionSet > & dimensions()
Get the table of dimension sets.
bool reusable(const tmp< GeometricField< Type, GeoMesh, PrimitiveField >> &tgf)
Ostream & endl(Ostream &os)
Add newline and flush stream.
word name(const LagrangianState state)
Return a string representation of a Lagrangian state enumeration.
tmp< DimensionedField< TypeR, GeoMesh, Field > > New(const tmp< DimensionedField< TypeR, GeoMesh, Field >> &tdf1, const word &name, const dimensionSet &dimensions)
fileType type(const fileName &, const bool checkVariants=true, const bool followLink=true)
Return the file type: directory or file.