Templated abstract base-class for optional mesh objects used to automate their allocation to the mesh database and the mesh-modifier event-loop. More...
Public Member Functions | |
ClassName ("meshObjects") | |
Static Public Member Functions | |
template<class Mesh > | |
static void | movePoints (objectRegistry &) |
template<class Mesh > | |
static void | topoChange (objectRegistry &, const polyTopoChangeMap &) |
template<class Mesh > | |
static void | mapMesh (objectRegistry &, const polyMeshMap &) |
template<class Mesh > | |
static void | distribute (objectRegistry &, const polyDistributionMap &) |
template<class Mesh > | |
static void | addPatch (objectRegistry &, const label patchi) |
template<class Mesh > | |
static void | reorderPatches (objectRegistry &, const labelUList &newToOld, const bool validBoundary) |
template<class Mesh , template< class > class MeshObjectType> | |
static void | clear (objectRegistry &) |
template<class Mesh , template< class > class FromType, template< class > class ToType> | |
static void | clearUpto (objectRegistry &) |
Clear all meshObjects derived from FromType up to (but not including) More... | |
Templated abstract base-class for optional mesh objects used to automate their allocation to the mesh database and the mesh-modifier event-loop.
MeshObject is templated on the type of mesh it is allocated to, the type of the mesh object (DeletableMeshObject, MoveableMeshObject, DistributeableMeshObject, TopoChangeableMeshObject) and the type of the actual object it is created for example:
class leastSquaresVectors : public MeshObject<fvMesh, MoveableMeshObject, leastSquaresVectors> { . . . //! Delete the least square vectors when the mesh moves virtual bool movePoints(); };
MeshObject types:
Note: movePoints must be provided for MeshObjects of type MoveableMeshObject and both movePoints and topoChange functions must exist, provided for MeshObjects of type TopoChangeableMeshObject.
Definition at line 94 of file meshObjects.H.
ClassName | ( | "meshObjects" | ) |
|
static |
Definition at line 56 of file meshObjectsTemplates.C.
References Foam::endl(), forAllIter, Foam::isA(), objectRegistry::lookupClass(), IOobject::name(), OSstream::name(), and Foam::Pout.
|
static |
Definition at line 138 of file meshObjectsTemplates.C.
References Foam::endl(), forAllIter, Foam::isA(), objectRegistry::lookupClass(), IOobject::name(), OSstream::name(), and Foam::Pout.
|
static |
Definition at line 181 of file meshObjectsTemplates.C.
References Foam::endl(), forAllIter, Foam::isA(), objectRegistry::lookupClass(), IOobject::name(), OSstream::name(), and Foam::Pout.
|
static |
Definition at line 94 of file meshObjectsTemplates.C.
References Foam::endl(), forAllIter, Foam::isA(), objectRegistry::lookupClass(), IOobject::name(), OSstream::name(), and Foam::Pout.
|
static |
Definition at line 223 of file meshObjectsTemplates.C.
References Foam::endl(), forAllIter, Foam::isA(), objectRegistry::lookupClass(), IOobject::name(), OSstream::name(), patchi, and Foam::Pout.
|
static |
Definition at line 262 of file meshObjectsTemplates.C.
References Foam::endl(), forAllIter, Foam::isA(), objectRegistry::lookupClass(), IOobject::name(), OSstream::name(), and Foam::Pout.
|
static |
Definition at line 309 of file meshObjectsTemplates.C.
References Foam::endl(), forAllIter, objectRegistry::lookupClass(), IOobject::name(), and Foam::Pout.
|
static |
Clear all meshObjects derived from FromType up to (but not including)
ToType. Used to clear e.g. all non-updateable meshObjects
Definition at line 336 of file meshObjectsTemplates.C.
References Foam::endl(), forAllIter, Foam::isA(), objectRegistry::lookupClass(), IOobject::name(), and Foam::Pout.
Referenced by polyMesh::addPatch(), polyMesh::clearAddressing(), and polyMesh::reorderPatches().