27#ifndef _SMESHDS_SubMesh_HeaderFile
28#define _SMESHDS_SubMesh_HeaderFile
34#include <smIdType.hxx>
37#include <boost/container/flat_set.hpp>
64 void RemoveAllSubmeshes();
70 virtual smIdType NbElements()
const;
71 virtual smIdType NbNodes()
const;
75 virtual bool IsQuadratic()
const;
81 int GetID()
const {
return myIndex; }
boost::shared_ptr< SMDS_Iterator< const SMDS_MeshElement * > > SMDS_ElemIteratorPtr
Definition: SMDS_ElemIterator.hxx:43
boost::shared_ptr< SMDS_Iterator< const SMDS_MeshNode * > > SMDS_NodeIteratorPtr
Definition: SMDS_ElemIterator.hxx:46
boost::container::flat_set< const SMESHDS_SubMesh * > TSubMeshSet
Definition: SMESHDS_SubMesh.hxx:39
boost::shared_ptr< SMESHDS_SubMeshIterator > SMESHDS_SubMeshIteratorPtr
Definition: SMESHDS_SubMesh.hxx:43
SMDS_Iterator< const SMESHDS_SubMesh * > SMESHDS_SubMeshIterator
Definition: SMESHDS_SubMesh.hxx:42
#define SMESHDS_EXPORT
Definition: SMESH_SMESHDS.hxx:37
Base class of object holding SMDS_MeshElement pointers.
Definition: SMDS_ElementHolder.hxx:48
virtual void add(const SMDS_MeshElement *element)=0
the descendant squeeze its element storage after re-adding elements
virtual SMDS_ElemIteratorPtr getElements()=0
< the descendant object return its elements just before the mesh compacting
virtual void tmpClear()=0
the descendant object re-add its elements after the mesh compacting
Abstract class for iterators.
Definition: SMDS_Iterator.hxx:33
Base class for elements.
Definition: SMDS_MeshElement.hxx:56
Definition: SMDS_MeshNode.hxx:36
Definition: SMESHDS_Mesh.hxx:98
Definition: SMESHDS_SubMesh.hxx:48
const SMESHDS_Mesh * myParent
Definition: SMESHDS_SubMesh.hxx:98
smIdType myNbNodes
Definition: SMESHDS_SubMesh.hxx:96
TSubMeshSet mySubMeshes
Definition: SMESHDS_SubMesh.hxx:99
int myIndex
Definition: SMESHDS_SubMesh.hxx:94
virtual void compact()
allow the descendant treat its elements before mesh clearing
Definition: SMESHDS_SubMesh.hxx:88
int GetID() const
Definition: SMESHDS_SubMesh.hxx:81
smIdType myNbElements
Definition: SMESHDS_SubMesh.hxx:95
SMESHDS_Mesh * GetParent() const
Definition: SMESHDS_SubMesh.hxx:80
virtual bool IsComplexSubmesh() const
Definition: SMESHDS_SubMesh.hxx:53
size_t NbSubMeshes() const
Definition: SMESHDS_SubMesh.hxx:66
long AddNode(SMESH::SMESH_Mesh_ptr theMesh, float x, float y, float z, const QStringList &theParameters)
Definition: SMESHGUI_NodesDlg.cxx:96