GemaMesh
The GeMA Mesh Plugin
Loading...
Searching...
No Matches
GmpCellMesh< Vector > Class Template Reference

A mesh that supports cell data, parameterized by the vector type (either GmSingleVector or GmDualVector) More...

#include <gmpCellMesh.h>

Inheritance diagram for GmpCellMesh< Vector >:
Collaboration diagram for GmpCellMesh< Vector >:

Public Member Functions

 GmpCellMesh (GmSimulationData *simulation, QString id, QString description, const GmLogCategory &logger)
 Constructor. Will be called by the plugin loading code.
 
virtual const char * pluginType () const
 
virtual void pushProxy (lua_State *L, const GmLogCategory &logger)
 
- Public Member Functions inherited from GmpCellMeshBase< GmCellMesh, Vector >
 GmpCellMeshBase (GmSimulationData *simulation, QString id, QString description, const GmLogCategory &logger)
 Constructor. Will be called by the plugin loading code.
 
virtual ~GmpCellMeshBase ()
 Destructor.
 
virtual bool hasCapability (QString capabilityName) const
 
virtual int numCells () const
 
virtual int numActiveCells () const
 
virtual const GmCellcell (int cellIndex) const
 
virtual GmCellcell (int cellIndex)
 
virtual const GmCellMeshTopologytopology (bool create=true) const
 
virtual void clearTopology ()
 
virtual bool hasSolidElements () const
 
virtual const int * numCellTypes () const
 
virtual const int * numActiveCellTypes () const
 
virtual int maxNumCellNodes () const
 
virtual int maxNumCellGhostNodes () const
 
virtual int maxTotalNumCellNodes () const
 
virtual void ghostNodesUpdated (int nghost, int ntotal)
 
virtual void activeCellUpdated (GmCellType type, bool active)
 
virtual QStringList cellGroupIds () const
 
virtual int numCellsInGroup (int groupIndex) const
 
virtual const GmCellcellInGroup (int groupIndex, int cellIndex) const
 
virtual GmCellcellInGroup (int groupIndex, int cellIndex)
 
virtual int addCellGroup (QString groupName)
 
virtual bool addCellsToGroup (int groupId, const QVector< int > &cellIds)
 
virtual bool addCellsToGroup (int groupId, const QVector< QPair< int, int > > &cellIds)
 
virtual const QMap< QString, GmCellBoundary * > & cellBoundaryGroups () const
 
virtual const QList< GmPropertySet * > & propertySets () const
 
virtual int propertySetIndex (QString id) const
 
virtual int addCells (int *numCellTypes)
 
virtual QList< int > addedCells () const
 
virtual void clearAddedCells ()
 
virtual void emitMeshChanged ()
 
virtual void clear ()
 
virtual GmpCellMeshData< Vector > * cellData ()
 
virtual size_t cellMemory () const
 
virtual size_t cellGroupsMemory () const
 
virtual size_t cellBoundariesMemory () const
 
- Public Member Functions inherited from GmpNodeMesh< GmCellMesh, Vector >
 GmpNodeMesh (GmSimulationData *simulation, QString id, QString description, const GmLogCategory &logger)
 Constructor. Will be called by the plugin loading code.
 
virtual ~GmpNodeMesh ()
 Destructor.

 
virtual const char * pluginName () const
 
virtual bool useDualVectors () const
 
virtual bool loadPrivateData (LuaTable &table)
 See behaviour comments on the base class. When inheriting from this class, the idea is that this function does not need to be overridden. Only initCellData(), should be extended. If inheriting from GmpCellMeshBase, its initCellData() implementation requires that cellSize() and cellAllocator() be provided as well.
 
virtual GmValueInfonodeCoordInfo () const
 
virtual GmValueAccessornodeCoordAccessor (Unit desiredUnit, const GmLogCategory &logger) const
 
virtual int numNodes () const
 
virtual int numGhostNodes () const
 
virtual const QMap< QString, GmNodeSet * > & nodeSets () const
 
virtual int addNodes (int numNodes)
 
virtual int addGhostNodes (int numNodes)
 
virtual size_t nodeMemory () const
 
virtual size_t nodeSetsMemory () const
 
virtual GmPCRpcrObject () const
 
- Public Member Functions inherited from GmCellMesh
 GmCellMesh (GmSimulationData *simulation, QString id, QString description, const GmLogCategory &logger)
 
virtual int numGlobalCells () const
 
virtual bool isValid (QMap< int, int > &nonValidIds, bool valNonPlanar=false, bool print=true, double tol=1e-3) const
 
virtual double edgeMinLength ()
 
virtual double edgeMaxLength ()
 
virtual double cellBboxMinLength ()
 
virtual double cellBboxMaxLength ()
 
void clearCellStatistics ()
 
void printQualityHistogram (bool activeOnly=true) const
 
virtual GmValueInfocellPropertyInfo (QString id) const
 
virtual GmCellAccessorcellPropertyAccessor (QString id, Unit desiredUnit, const GmLogCategory &logger) const
 
virtual QStringList cellValueIds (int filter=-1) const
 
virtual GmValueInfocellValueInfo (QString id, int filter=-1) const
 
virtual GmCellAccessorcellValueAccessor (QString id, Unit desiredUnit, const GmLogCategory &logger) const
 
virtual GmCellAccessorcellValueAccessor (QString id, int snum, bool locked, Unit desiredUnit, const GmLogCategory &logger) const
 
virtual GmCellAccessorcellStateVarAccessorFromDof (int dof, Unit desiredUnit, GmStateVar **stateVar) const
 
virtual bool addCellValueSet (GmValueInfo *info)
 
virtual void removeCellValueSet (QString id)
 
virtual bool initCellValueSets ()
 
virtual void beginAddingCellValueSets ()
 
virtual bool endAddingCellValueSets ()
 
virtual void clearCellValueSets ()
 
virtual void clearCellValueSetsData ()
 
virtual bool saveState (GmValueSet::SaveStateMode mode, const GmLogCategory &logger)
 
virtual bool saveCellValueState (QString id, GmValueSet::SaveStateMode mode, const GmLogCategory &logger)
 
virtual int numCellValueStates (QString id) const
 
virtual QString cellValueStateTag (QString id, int snum) const
 
virtual double cellValueStateTime (QString id, int snum) const
 
virtual void setCellValueStateTag (QString id, int snum, QString tag)
 
virtual void setCellValueStateTime (QString id, int snum, double time)
 
virtual void printParameters (const GmLogCategory &logger)
 
virtual void printValues (const GmLogCategory &logger, int options=GM_PRINT_DEFAULT)
 
GmValueSetGroupcellValueSetGroup () const
 
GmValueSetcellValueSet (QString id) const
 
const GmCellGroupSetcellGroupSet (const QList< int > &groupIdList, bool disjoint)
 
const QVector< GmCellGroupSet * > & cellGroupSets () const
 
void clearCellGroupSetsData (bool keepMeshSet)
 
- Public Member Functions inherited from GmMesh
 GmMesh (GmSimulationData *simulation, QString id, QString description, const GmLogCategory &logger)
 
virtual const char * pluginCategory () const
 
int totalNumNodes () const
 
virtual int numGlobalNodes () const
 
virtual int numGlobalGhostNodes () const
 
int totalNumGlobalNodes () const
 
int toLinearGhostIndex (int nodeIndex) const
 
int toLocalGhostIndex (int nodeIndex) const
 
QStringList nodeValueIds (int filter=-1) const
 
virtual GmValueInfonodeValueInfo (QString id, int filter=-1) const
 
virtual GmValueAccessornodeValueAccessor (QString id, Unit desiredUnit, const GmLogCategory &logger) const
 
virtual GmValueAccessornodeValueAccessor (QString id, int snum, bool locked, Unit desiredUnit, const GmLogCategory &logger) const
 
virtual GmValueAccessornodeStateVarAccessorFromDof (int dof, Unit desiredUnit, GmStateVar **stateVar) const
 
virtual bool addNodeValueSet (GmValueInfo *info)
 
virtual void removeNodeValueSet (QString id)
 
virtual bool initNodeValueSets ()
 
virtual void beginAddingNodeAttributeSets ()
 
virtual bool endAddingNodeAttributeSets ()
 
virtual void clearNodeValueSets ()
 
virtual void clearNodeValueSetsData ()
 
virtual bool saveNodeValueState (QString id, GmValueSet::SaveStateMode mode, const GmLogCategory &logger)
 
virtual int numNodeValueStates (QString id) const
 
virtual QString nodeValueStateTag (QString id, int snum) const
 
virtual double nodeValueStateTime (QString id, int snum) const
 
virtual void setNodeValueStateTag (QString id, int snum, QString tag)
 
virtual void setNodeValueStateTime (QString id, int snum, double time)
 
QMap< QString, GmPhysicsUserFunctions * > & userFunctionsObjMap () const
 
GmValueSetGroupnodeValueSetGroup () const
 
GmValueSetnodeValueSet (QString id) const
 
GmValueSetGroupghostNodeValueSetGroup () const
 
GmValueSetghostNodeValueSet (QString id) const
 
- Public Member Functions inherited from GmPluginObject
 GmPluginObject (GmSimulationData *simulation, QString id, QString description, const GmLogCategory &logger)
 
QString id () const
 
QString description () const
 
QString pluginTypeName () const
 
- Public Member Functions inherited from GmGroupDumpItem
virtual bool stateAboutToBeSaved (GmStateDump *state)
 
virtual bool stateSaved (GmStateDump *state)
 
virtual bool stateAboutToBeLoaded (GmStateDump *state)
 
virtual bool stateLoaded (GmStateDump *state)
 

Protected Member Functions

virtual GmpCellAllocator cellAllocator (bool ghostSupport, bool hSupport) const
 Returns the function responsible for allocating and initializing a new cell.
 
virtual int cellSize (bool ghostSupport, bool hSupport) const
 Returns the size of a cell object.
 
virtual int controlMapStateItemType ()
 
- Protected Member Functions inherited from GmpCellMeshBase< GmCellMesh, Vector >
virtual GmpCellMeshData< Vector > * initCellData (LuaTable &table, bool *ghostSupport, bool *ok)
 Method called by gmpNodeMesh::loadPrivateData() to initialize the cell data object. See the parameter description on the base class (GmpNodeMesh).
 
virtual bool addStateGeometryData (GmStateDump *state, int groupId)
 
virtual bool fillDumpControlMapData (QVariantMap *map, const GmLogCategory &logger)
 
virtual bool dumpControlMapDataLoaded (QVariantMap *map, const GmLogCategory &logger)
 
- Protected Member Functions inherited from GmpNodeMesh< GmCellMesh, Vector >
virtual GmpMeshLoader< Vector > * meshLoader ()
 Returns the mesh loader used to load mesh data. This function should be replaced for using a custom mesh loader.
 
- Protected Member Functions inherited from GmCellMesh
virtual bool addStateAccessorData (GmStateDump *state, int groupId)
 
- Protected Member Functions inherited from GmMesh
GmValueSetanyVsFromId (QString id) const
 
void printValueInfo (const GmLogCategory &logger, QString title, const QStringList &idList)
 
virtual bool addStateItemsToGroup (GmStateDump *state, int groupId)
 
- Protected Member Functions inherited from GmPluginObject
virtual const GmLogCategorylogger () const
 
GmSimulationDatasimulationData () const
 

Additional Inherited Members

- Signals inherited from GmMesh
void meshChanged ()
 
- Static Public Member Functions inherited from GmMesh
static bool isGhostNode (int nodeIndex)
 
static int setGhostFlag (int nodeIndex)
 
static int clearGhostFlag (int nodeIndex)
 
- Protected Attributes inherited from GmpCellMeshBase< GmCellMesh, Vector >
GmpCellMeshData< Vector > _cd
 The complete cell data.
 
int _oldNumCells
 The old number of cells that the mesh had before calls to addCells()
 
- Protected Attributes inherited from GmpNodeMesh< GmCellMesh, Vector >
GmpNodeMeshData< Vector > _nd
 The complete node data.
 
GmPCR_pcr
 PCR object. Not stored inside _nd since that class does not have access to the model data for correctly destroying _pcr.
 
bool _ownPcr
 Do we own the PCR object? (will be true if the object was instanced internally)
 
- Protected Attributes inherited from GmMesh
int _stateDumpControlMapItem
 

Detailed Description

template<template< class > class Vector>
class GmpCellMesh< Vector >

A mesh that supports cell data, parameterized by the vector type (either GmSingleVector or GmDualVector)

Member Function Documentation

◆ cellAllocator()

template<template< class > class Vector>
virtual GmpCellAllocator GmpCellMesh< Vector >::cellAllocator ( bool ghostSupport,
bool hSupport ) const
inlineprotectedvirtual

Returns the function responsible for allocating and initializing a new cell.

Implements GmpCellMeshBase< GmCellMesh, Vector >.

◆ cellSize()

template<template< class > class Vector>
virtual int GmpCellMesh< Vector >::cellSize ( bool ghostSupport,
bool hSupport ) const
inlineprotectedvirtual

Returns the size of a cell object.

Implements GmpCellMeshBase< GmCellMesh, Vector >.

◆ controlMapStateItemType()

template<template< class > class Vector>
virtual int GmpCellMesh< Vector >::controlMapStateItemType ( )
inlineprotectedvirtual

Reimplemented from GmpNodeMesh< GmCellMesh, Vector >.

◆ pluginType()

template<template< class > class Vector>
virtual const char * GmpCellMesh< Vector >::pluginType ( ) const
inlinevirtual

Reimplemented from GmpNodeMesh< GmCellMesh, Vector >.

◆ pushProxy()

template<template< class > class Vector>
virtual void GmpCellMesh< Vector >::pushProxy ( lua_State * L,
const GmLogCategory & logger )
inlinevirtual

Reimplemented from GmpNodeMesh< GmCellMesh, Vector >.


The documentation for this class was generated from the following file: