GemaCoreLib
The GeMA Core library
Loading...
Searching...
No Matches
gmCellBoundary.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
24#ifndef _GEMA_CELL_BOUNDARY_H_
25#define _GEMA_CELL_BOUNDARY_H_
26
27#include "gmCoreConfig.h"
28
35
36
37class GmCell;
38class GmCellMesh;
39
44{
45public:
47 virtual ~GmCellBoundary() {}
48
50 virtual QString id() const = 0;
51
53 virtual GmCellBoundaryType type() const = 0;
54
56 virtual GmCellMesh* mesh() const = 0;
57
59 virtual int numCells() const = 0;
60
62 virtual GmCell* cell(int i) const = 0;
63
71 virtual int cellBorder(int i) const = 0;
72
80 virtual bool setBoundaryData(int numCells, int* cellList, int* borderList)
81 {
82 Q_UNUSED(numCells); Q_UNUSED(cellList); Q_UNUSED(borderList);
83 return false;
84 }
85
87 virtual size_t usedMemory() const = 0;
88
89 int* buildNodeList(int* size);
90};
91
92
93#endif
94
This class stores a set of cell edges or cell faces that together form a piece of the boundary of a m...
Definition gmCellBoundary.h:44
virtual int cellBorder(int i) const =0
Returns the border index of the i'th entry stored in this group.
virtual GmCellBoundaryType type() const =0
Returns the type of boundary stored by this object (edges or faces)
virtual ~GmCellBoundary()
Virtual destructor.
Definition gmCellBoundary.h:47
virtual QString id() const =0
Returns the boundary name.
virtual size_t usedMemory() const =0
Returns an estimative of the memory used by the boundary in bytes.
virtual GmCell * cell(int i) const =0
Returns the cell of the i'th entry stored in this group.
virtual int numCells() const =0
Returns the number of cells stored in this group.
virtual GmCellMesh * mesh() const =0
Returns the mesh that this border is tied to.
virtual bool setBoundaryData(int numCells, int *cellList, int *borderList)
Updates the cell and border lists in the border object.
Definition gmCellBoundary.h:80
Base interface for mesh cells.
Definition gmCell.h:88
Base interface class for CellMesh type plugins.
Definition gmCellMesh.h:40
GmCellBoundaryType
Cell boundary type.
Definition gmCellBoundary.h:31
@ GM_BOUNDARY_EDGE
The boundary is formed by edges.
Definition gmCellBoundary.h:32
@ GM_BOUNDARY_FACE
The boundary is formed by faces.
Definition gmCellBoundary.h:33
Declaration of useful configuration definitions for the Core library.
#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