GemaCoreLib
The GeMA Core library
Loading...
Searching...
No Matches
gmGaussValueSet.h
Go to the documentation of this file.
1/************************************************************************
2**
3** Copyright (C) 2014 by Carlos Augusto Teixera Mendes
4** All rights reserved.
5**
6** This file is part of the "GeMA" software. It's use should respect
7** the terms in the license agreement that can be found together
8** with this source code.
9** It is provided AS IS, with NO WARRANTY OF ANY KIND,
10** INCLUDING THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR
11** A PARTICULAR PURPOSE.
12**
13************************************************************************/
14
23#ifndef _GEMA_GAUSSVALUE_SET_H_
24#define _GEMA_GAUSSVALUE_SET_H_
25
26#include "gmValueSet.h"
27#include "gmGaussIndex.h"
28
29class GmElementMesh;
30
35{
36public:
37
39 virtual ~GmGaussValueSet();
40
41 virtual bool init(int numValues, bool releaseInfoOnError = false);
42
44 int pointIndex(int cellId, int ip) const { assert(_index); return _index->pointIndex(cellId, ip); }
45
47 int numPoints(int cellId) const { assert(_index); return _index->numPoints(cellId); }
48
52 const GmMeshGaussIndex* gaussIndex() const { return _index; }
53
54#if defined ENABLE_TESTS || defined ENABLE_VALUESET_TESTS
55 virtual void validateInternalStructure();
56#endif
57
58private:
60
61protected:
64};
65
66
67#endif
68
69
Base interface for FEM (finite element) meshes.
Definition gmElementMesh.h:42
Inheriting from GmValueSet, this class adds the peculiarities needed for saving values in Gauss point...
Definition gmGaussValueSet.h:35
const GmElementMesh * _mesh
The associated mesh object.
Definition gmGaussValueSet.h:62
int pointIndex(int cellId, int ip) const
Given a cell index and an integration point index, returns the data index in the underlying value set...
Definition gmGaussValueSet.h:44
int numPoints(int cellId) const
Returns the number of integration points for the given cell.
Definition gmGaussValueSet.h:47
const GmMeshGaussIndex * gaussIndex() const
Returns the, mesh owned, associated Gauss index (equivalent ot querying the mesh for the Gauss index ...
Definition gmGaussValueSet.h:52
const GmMeshGaussIndex * _index
The index object, owned by the mesh, used to translate (elemId, ip) pairs into a linear index.
Definition gmGaussValueSet.h:63
A Gauss index interface always indexing ALL the elements of a mesh, with support for mesh growing.
Definition gmGaussIndex.h:275
The basic interface for a shared buffer storing interleaved data for a group of value sets.
Definition gmPackedBuffer.h:119
Auxiliar class used to store the complete set of simulation data.
Definition gmSimulationData.h:55
Auxiliar class used to store the definition of a value. It can be used to store informations about st...
Definition gmValueInfo.h:132
Basic class used to store sets of values, bound to a common definition, on behalf of another object (...
Definition gmValueSet.h:54
virtual bool init(int numValues, bool releaseInfoOnError=false)
Initializes the ValueSet, being responsible for allocating memory and initializing data....
Definition gmValueSet.cpp:200
#define GMC_API_EXPORT
Macro for controlling if the class is being exported (GEMA_CORE_LIB defined) or imported (GEMA_CORE_L...
Definition gmCoreConfig.h:35
Declaration of the GmGaussIndex family of classes.
Declaration of the GmValueSet class.
Q_DISABLE_COPY(Class)