35 #ifndef GeometricFieldListSlicer_H
36 #define GeometricFieldListSlicer_H
70 template<
class GeoMesh,
template<
class>
class PrimitiveField>
85 template<
class GeoMesh,
template<
class>
class PrimitiveField>
93 primitiveFields_.
resize(geoFields.size());
102 &geoFields[fieldi].primitiveField()
110 &geoFields[fieldi].boundaryField()[
patchi]
126 const label patchElementi
#define forAll(list, i)
Loop across all elements in list.
Class to provide a list-like interface to a slice through a UPtrList of fields.
Class to provide list slices to different parts of a geometric field.
GeometricFieldListSlicer()
Construct null. Set later.
void set(const GeoMesh &mesh, const UPtrList< GeometricField< Type, GeoMesh, PrimitiveField >> &geoFields)
Set the field pointers.
FieldListSlice< Type > patchSlice(const label patchi, const label patchElementi) const
Return a slice for a patch element.
FieldListSlice< Type > slice(const label elementi) const
Return a slice for an internal element.
Generic GeometricField class.
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
void resize(const label)
Alias for setSize(const label)
A templated 1D list of pointers to objects of type <T>, where the size of the array is known and used...
bool set(const label) const
Is element set.
label size() const
Return the number of elements in the UPtrList.
void resize(const label)
Reset size of UPtrList. This can only be used to set the size.
const fvBoundaryMesh & boundary() const
Return reference to boundary mesh.
Foam::fvMesh mesh(Foam::IOobject(regionName, runTime.name(), runTime, Foam::IOobject::MUST_READ), false)
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.