38#ifndef Foam_pointPatchMapper_H
39#define Foam_pointPatchMapper_H
75 const label sizeBeforeMapping_;
80 mutable bool hasUnmapped_;
83 mutable std::unique_ptr<labelList> directAddrPtr_;
86 mutable std::unique_ptr<labelListList> interpAddrPtr_;
89 mutable std::unique_ptr<scalarListList> weightsPtr_;
95 pointPatchMapper(
const pointPatchMapper&) =
delete;
98 void operator=(
const pointPatchMapper&) =
delete;
102 void calcAddressing()
const;
127 virtual label
size()
const
129 return patch_.size();
140 return sizeBeforeMapping_;
144 virtual bool direct()
const
146 return pointMapper_.direct();
Class containing mesh-to-mesh mapping information after a change in polyMesh topology.
Abstract base class to hold the Field mapping for mesh morphs.
This object provides mapping and fill-in information for point data between the two meshes after the ...
pointPatchFieldMapper()=default
Default construct.
virtual label size() const
Return size.
virtual label sizeBeforeMapping() const
Return size of field before mapping.
virtual const labelListList & addressing() const
Return interpolated addressing.
virtual const scalarListList & weights() const
Return interpolaion weights.
virtual bool hasUnmapped() const
Any unmapped values?
virtual const labelUList & directAddressing() const
Return direct addressing.
virtual ~pointPatchMapper()
Destructor.
virtual bool direct() const
Is the mapping direct.
Basic pointPatch represents a set of points from the mesh.
List< scalarList > scalarListList
List of scalarList.
List< labelList > labelListList
List of labelList.
UList< label > labelUList
A UList of labels.
Specialisations of Field<T> for scalar, vector and tensor.