|
GEOS
|
Class to hold the path to a collection of mesh objects. More...
#include <MeshObjectPath.hpp>
Public Types | |
| enum class | ObjectTypes : int { nodes , edges , faces , elems , invalid } |
| Contains enums for the types of objects. More... | |
| using | permutationMapType = stdMap< string, stdMap< string, stdMap< string, stdVector< string > > > > |
| The container type that holds the path information The first key is the name of a MeshBody The second key is the name of a MeshLevel The third key is the name of an ElementRegion The third value is a vector of subregion names. | |
| using | SetNameToTypesMap = stdMap< string, stdMap< MeshObjectPath::ObjectTypes, localIndex > > |
| alias for the map allowing to know the existance of given element types (node, edge, cell...) with localIndex = 0 | 1 ( exist / not existing) | |
Public Member Functions | |
| MeshObjectPath (string const path, dataRepository::Group const &meshBodies) | |
| Construct a new Mesh Object Path object. More... | |
| void | processPath (string const path, dataRepository::Group const &meshBodies) |
| Processes the path string into the permutation container. More... | |
| ObjectTypes const & | getObjectType () const |
| Get the Object Type object. More... | |
| permutationMapType const & | pathPermutations () const |
| Get the m_pathPermutations object. More... | |
| bool | containsMeshLevel (MeshLevel const &meshLevel) const |
| Helper function to decide whether a given meshLevel is in the objectPath. More... | |
| template<typename OBJECT_TYPE = dataRepository::Group, typename FUNC > | |
| void | forObjectsInPath (dataRepository::Group &meshBodies, FUNC &&func) const |
| LLoop over objects in the path and execute a callback function. More... | |
| template<typename OBJECT_TYPE = dataRepository::Group, typename FUNC > | |
| void | forObjectsInPath (dataRepository::Group const &meshBodies, FUNC &&func) const |
| Loop over objects in the path and execute a callback function. More... | |
| template<typename OBJECT_TYPE = dataRepository::Group, typename FUNC > | |
| void | forObjectsInPath (MeshLevel &level, FUNC &&func) const |
| Loop over objects in the path and execute a callback function. More... | |
| template<typename TYPE , typename ... NEXT_TYPES, typename FUNC > | |
| void | forManagersForSetName (MeshLevel const &mesh, string const &setName, FUNC &&func) const |
| Given an objectType and a setName from the current fieldSpecification, iterate over all managers; if the setName exists in the manager, return the associated ObjectTypes. More... | |
Class to hold the path to a collection of mesh objects.
Definition at line 36 of file MeshObjectPath.hpp.
|
strong |
Contains enums for the types of objects.
| Enumerator | |
|---|---|
| nodes | |
| edges | an EdgeManager |
| faces | |
| elems | a ElementManager |
| invalid | an invalide object |
Definition at line 52 of file MeshObjectPath.hpp.
| geos::MeshObjectPath::MeshObjectPath | ( | string const | path, |
| dataRepository::Group const & | meshBodies | ||
| ) |
Construct a new Mesh Object Path object.
| path | The path string |
| meshBodies | The Group that contains all MeshBody objects |
| InputError | when the input path is wrong. |
| bool geos::MeshObjectPath::containsMeshLevel | ( | MeshLevel const & | meshLevel | ) | const |
Helper function to decide whether a given meshLevel is in the objectPath.
| [in] | meshLevel | the mesh level that we want to search for in the objectPath |
An example use case is in the validation of boundary conditions
| void geos::MeshObjectPath::forManagersForSetName | ( | MeshLevel const & | mesh, |
| string const & | setName, | ||
| FUNC && | func | ||
| ) | const |
Given an objectType and a setName from the current fieldSpecification, iterate over all managers; if the setName exists in the manager, return the associated ObjectTypes.
| TYPE | The current type to be tested |
| NEXT_TYPES | The remaining Types |
| FUNC | The type of function that is executed on the OBJECT_TYPE |
| mesh | Holds all the managers. |
| setName | The setName to be evaluated in all the managers |
| func | The function that is executed on the OBJECT_TYPE |
Definition at line 410 of file MeshObjectPath.hpp.
| void geos::MeshObjectPath::forObjectsInPath | ( | dataRepository::Group & | meshBodies, |
| FUNC && | func | ||
| ) | const |
LLoop over objects in the path and execute a callback function.
| OBJECT_TYPE | The type of object to loop over |
| FUNC | The type of function that is executed on the OBJECT_TYPE. Takes a single OBJECT_TYPE as an argument. func( dynamic_cast< OBJECT_TYPE & >(object) ); |
| meshBodies | Group that contains the MeshBody objects. |
| func | The function that is executed on the OBJECT_TYPE |
Definition at line 355 of file MeshObjectPath.hpp.
| void geos::MeshObjectPath::forObjectsInPath | ( | dataRepository::Group const & | meshBodies, |
| FUNC && | func | ||
| ) | const |
Loop over objects in the path and execute a callback function.
| OBJECT_TYPE | The type of object to loop over |
| FUNC | The type of function that is executed on the OBJECT_TYPE. Takes a single OBJECT_TYPE as an argument. func( dynamic_cast< OBJECT_TYPE & >(object) ); |
| meshBodies | Group that contains the MeshBody objects. |
| func | The function that is executed on the OBJECT_TYPE |
Definition at line 366 of file MeshObjectPath.hpp.
| void geos::MeshObjectPath::forObjectsInPath | ( | MeshLevel & | level, |
| FUNC && | func | ||
| ) | const |
Loop over objects in the path and execute a callback function.
| OBJECT_TYPE | The type of object to loop over |
| FUNC | The type of function that is executed on the OBJECT_TYPE. Takes a single OBJECT_TYPE as an argument. func( dynamic_cast< OBJECT_TYPE & >(object) ); |
| level | The MeshLevel that contains OBJECT_TYPE to be executed on. |
| func | The function that is executed on the OBJECT_TYPE |
Definition at line 383 of file MeshObjectPath.hpp.
|
inline |
Get the Object Type object.
Definition at line 88 of file MeshObjectPath.hpp.
|
inline |
Get the m_pathPermutations object.
Definition at line 98 of file MeshObjectPath.hpp.
| void geos::MeshObjectPath::processPath | ( | string const | path, |
| dataRepository::Group const & | meshBodies | ||
| ) |
Processes the path string into the permutation container.
| path | The path string |
| meshBodies | The Group that contains all MeshBody objects |