+ protected:
+
+ void init( SMDSAbs_EntityType entityType, int nbNodes, ... );
+
+ void init( SMDSAbs_EntityType entityType, const std::vector<const SMDS_MeshNode*>& nodes );
+
+ void init( SMDSAbs_EntityType entityType, const std::vector<vtkIdType>& vtkNodeIds );
+
+ friend class SMDS_Mesh;
+
+ public:
+
+ virtual int NbEdges() const;
+ virtual int NbFaces() const;
+ virtual int NbNodes() const;
+ virtual int NbCornerNodes() const;
+ virtual bool ChangeNodes(const SMDS_MeshNode* nodes[], const int nbNodes);
+ virtual int GetNodeIndex( const SMDS_MeshNode* node ) const;
+ virtual const SMDS_MeshNode* GetNode(const int ind) const;
+
+ virtual SMDSAbs_ElementType GetType() const;
+ virtual SMDSAbs_EntityType GetEntityType() const;
+ virtual SMDSAbs_GeometryType GetGeomType() const;
+ virtual VTKCellType GetVtkType() const;
+
+ virtual bool IsPoly() const;
+ virtual bool IsQuadratic() const;