GemaMesh
The GeMA Mesh Plugin
Public Member Functions | Protected Member Functions | List of all members
GmpGemaElementMeshBase< Vector > Class Template Reference

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

#include <gmpGemaCellMesh.h>

Inheritance diagram for GmpGemaElementMeshBase< Vector >:
Inheritance graph
[legend]
Collaboration diagram for GmpGemaElementMeshBase< Vector >:
Collaboration graph
[legend]

Public Member Functions

 GmpGemaElementMeshBase (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)
 
virtual int hPOrder () const
 
virtual int hQOrder () const
 
virtual GmpGemaMeshData< Vector > * theNodeData ()
 
virtual GmpGemaCellMeshData< Vector > * theCellData ()
 
- Public Member Functions inherited from GmpCellMeshBase< GmpMeshBaseDataInterface< GmElementMesh, GmpGemaMeshData< Vector >, GmpGemaCellMeshData< Vector > >, GmpGemaMeshCoordAccessor< GmpGemaMeshData< Vector >, Vector >, GmpGemaMeshGhostCoordAccessor< GmpMeshData< Vector >, Vector >, GmpGemaMeshData< Vector >, GmpGemaCellMeshData< Vector >, 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 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 GmpGemaCellMeshData< Vector > * cellData ()
 Virtual function that should be overriden for derived classes that need to load cells.
 
virtual size_t cellMemory () const
 
virtual size_t cellGroupsMemory () const
 
virtual size_t cellBoundariesMemory () const
 
- Public Member Functions inherited from GmpMeshBase< GmpMeshBaseDataInterface< GmElementMesh, GmpGemaMeshData< Vector >, GmpGemaCellMeshData< Vector > >, GmpGemaMeshCoordAccessor< GmpGemaMeshData< Vector >, Vector >, GmpGemaMeshGhostCoordAccessor< GmpMeshData< Vector >, Vector >, GmpGemaMeshData< Vector >, GmpGemaCellMeshData< Vector >, Vector >
 GmpMeshBase (GmSimulationData *simulation, QString id, QString description, const GmLogCategory &logger)
 Constructor. Will be called by the plugin loading code.
 
virtual ~GmpMeshBase ()
 Destructor.
 
virtual const char * pluginName () 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 overriden. Only cellData() and cellAllocator() should be extended.
 
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
 
- Public Member Functions inherited from GmpMeshBaseDataInterface< GmElementMesh, GmpGemaMeshData< Vector >, GmpGemaCellMeshData< Vector > >
 GmpMeshBaseDataInterface (GmSimulationData *simulation, QString id, QString description, const GmLogCategory &logger)
 
- Public Member Functions inherited from GmElementMesh
 GmElementMesh (GmSimulationData *simulation, QString id, QString description, const GmLogCategory &logger)
 
const GmIntegrationRuleelementIntegrationRule (GmCellType type, int ruleSet) const
 
const GmBorderIntegrationRuleborderIntegrationRule (GmCellType type, int ruleSet, int borderIndex) const
 
const GmBorderIntegrationRulefaceIntegrationRule (GmCellType type, int ruleSet, int faceIndex) const
 
const GmBorderIntegrationRuleedgeIntegrationRule (GmCellType type, int ruleSet) const
 
int maxNumIntPoints (int ruleSet) const
 
void addIntegrationRuleSet ()
 
int numIntegrationRuleSets () const
 
bool setElementIntegrationRule (GmCellType type, GmIntegrationRule *rule, int ruleSet)
 
bool setFaceIntegrationRule (GmCellType type, GmBorderIntegrationRule *rule, int ruleSet, int faceType)
 
bool setEdgeIntegrationRule (GmCellType type, GmBorderIntegrationRule *rule, int ruleSet)
 
GmMeshGaussIndexgaussIndex (int ruleSet) const
 
bool usesGaussIndex (int ruleSet) const
 
virtual QStringList gaussAttributeIds () const
 
virtual GmValueInfogaussAttributeInfo (QString id) const
 
virtual GmGaussAccessorgaussAttributeAccessor (QString id, Unit desiredUnit, const GmLogCategory &logger) const
 
virtual GmGaussAccessorgaussAttributeAccessor (QString id, int snum, bool locked, Unit desiredUnit, const GmLogCategory &logger) const
 
virtual bool addGaussAttributeSet (GmValueInfo *info)
 
virtual void removeGaussAttributeSet (QString id)
 
virtual void clearGaussAttributeSets ()
 
virtual void clearGaussAttributeSetsData ()
 
virtual bool saveState (GmValueSet::SaveStateMode mode, const GmLogCategory &logger)
 
virtual bool saveGaussAttributeState (QString id, GmValueSet::SaveStateMode mode, const GmLogCategory &logger)
 
virtual int numGaussAttributeStates (QString id) const
 
virtual QString gaussAttributeStateTag (QString id, int snum) const
 
virtual double gaussAttributeStateTime (QString id, int snum) const
 
virtual void setGaussAttributeStateTag (QString id, int snum, QString tag)
 
virtual void setGaussAttributeStateTime (QString id, int snum, double time)
 
virtual void printParameters (const GmLogCategory &logger)
 
virtual void printValues (const GmLogCategory &logger, int options=GM_PRINT_DEFAULT)
 
const QList< GmGaussValueSet * > & gaussValueSets () const
 
virtual size_t gaussIndicesMemory () const
 
- Public Member Functions inherited from GmCellMesh
 GmCellMesh (GmSimulationData *simulation, QString id, QString description, const GmLogCategory &logger)
 
virtual bool isValid (QList< int > *nonValidIds=NULL, 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 cellAttributeIds () const
 
virtual GmValueInfocellAttributeInfo (QString id) const
 
virtual GmCellAccessorcellAttributeAccessor (QString id, Unit desiredUnit, const GmLogCategory &logger) const
 
virtual GmCellAccessorcellAttributeAccessor (QString id, int snum, bool locked, Unit desiredUnit, const GmLogCategory &logger) const
 
virtual bool addCellAttributeSet (GmValueInfo *info)
 
virtual void removeCellAttributeSet (QString id)
 
virtual void clearCellAttributeSets ()
 
virtual void clearCellAttributeSetsData ()
 
virtual bool saveCellAttributeState (QString id, GmValueSet::SaveStateMode mode, const GmLogCategory &logger)
 
virtual int numCellAttributeStates (QString id) const
 
virtual QString cellAttributeStateTag (QString id, int snum) const
 
virtual double cellAttributeStateTime (QString id, int snum) const
 
virtual void setCellAttributeStateTag (QString id, int snum, QString tag)
 
virtual void setCellAttributeStateTime (QString id, int snum, double time)
 
const QList< GmValueSet * > & cellValueSets () const
 
const GmCellGroupSetcellGroupSet (const QList< int > &groupIdList, bool disjoint)
 
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
 
int toLinearGhostIndex (int nodeIndex) const
 
int toLocalGhostIndex (int nodeIndex) const
 
virtual QStringList nodeAttributeIds () const
 
virtual QStringList nodeStateVarIds () 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 GmValueAccessorstateVarAccessorFromDof (int dof, Unit desiredUnit, GmStateVar **stateVar) const
 
virtual bool addNodeValueSet (GmValueInfo *info, int nNodes=-1, int nGhostNodes=-1)
 
virtual void removeNodeValueSet (QString id)
 
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
 
const QList< GmValueSet * > & nodeValueSets () const
 
const QList< GmValueSet * > & ghostNodeValueSets () 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 GmpMeshLoaderCellAllocator cellAllocator (bool ghostSupport, bool hSupport) const
 Returns the function responsible for allocating and initializing a new element.
 
virtual int controlMapStateItemType ()
 
- Protected Member Functions inherited from GmpCellMeshBase< GmpMeshBaseDataInterface< GmElementMesh, GmpGemaMeshData< Vector >, GmpGemaCellMeshData< Vector > >, GmpGemaMeshCoordAccessor< GmpGemaMeshData< Vector >, Vector >, GmpGemaMeshGhostCoordAccessor< GmpMeshData< Vector >, Vector >, GmpGemaMeshData< Vector >, GmpGemaCellMeshData< Vector >, Vector >
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 GmpMeshBase< GmpMeshBaseDataInterface< GmElementMesh, GmpGemaMeshData< Vector >, GmpGemaCellMeshData< Vector > >, GmpGemaMeshCoordAccessor< GmpGemaMeshData< Vector >, Vector >, GmpGemaMeshGhostCoordAccessor< GmpMeshData< Vector >, Vector >, GmpGemaMeshData< Vector >, GmpGemaCellMeshData< Vector >, 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 GmElementMesh
virtual GmGaussValueSetcreateGaussValueSet (GmValueInfo *info)
 
T * getIntegrationRuleWithDCL (QList< QAtomicPointer< T > * > &list, QMutex *mutex, T *(*instance)(GmCellType, int, int, int, GmIntegrationRuleType), GmCellType type, int ruleSet, int faceType) const
 
virtual bool addStateAccessorData (GmStateDump *state, int groupId)
 
- Protected Member Functions inherited from GmMesh
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< GmpMeshBaseDataInterface< GmElementMesh, GmpGemaMeshData< Vector >, GmpGemaCellMeshData< Vector > >, GmpGemaMeshCoordAccessor< GmpGemaMeshData< Vector >, Vector >, GmpGemaMeshGhostCoordAccessor< GmpMeshData< Vector >, Vector >, GmpGemaMeshData< Vector >, GmpGemaCellMeshData< Vector >, Vector >
GmpGemaCellMeshData< 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 GmpMeshBase< GmpMeshBaseDataInterface< GmElementMesh, GmpGemaMeshData< Vector >, GmpGemaCellMeshData< Vector > >, GmpGemaMeshCoordAccessor< GmpGemaMeshData< Vector >, Vector >, GmpGemaMeshGhostCoordAccessor< GmpMeshData< Vector >, Vector >, GmpGemaMeshData< Vector >, GmpGemaCellMeshData< Vector >, Vector >
GmpGemaMeshData< Vector > _nd
 The complete node data.
 
- Protected Attributes inherited from GmElementMesh
QMap< QString, int > _gaussAttributesMap
 
QList< GmGaussValueSet * > _gaussAttributesData
 
- Protected Attributes inherited from GmMesh
int _stateDumpControlMapItem
 

Detailed Description

template<template< class > class Vector>
class GmpGemaElementMeshBase< Vector >

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


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