Salome HOME
Join modifications from branch OCC_development_for_3_2_0a2
[modules/smesh.git] / src / SMESH_I / SMESH_Mesh_i.hxx
index 0b010c474cfe1cf5c2adcf16511467a0acd8ad20..9167f325dab41cb1591a7a46f1bc791ca56e0c3a 100644 (file)
@@ -132,12 +132,11 @@ public:
     throw (SALOME::SALOME_Exception);
 
   // --- C++ interface
-
   void SetImpl(::SMESH_Mesh* impl);
   ::SMESH_Mesh& GetImpl();         // :: force no namespace here
 
   SMESH_Gen_i* GetGen() { return _gen_i; }
-  
+
   int ImportUNVFile( const char* theFileName )
     throw (SALOME::SALOME_Exception);
 
@@ -150,8 +149,16 @@ public:
   SMESH::DriverMED_ReadStatus ImportMEDFile( const char* theFileName, const char* theMeshName )
     throw (SALOME::SALOME_Exception);
 
+  /*! Check group names for duplications.
+   *  Consider maximum group name length stored in MED file.
+   */
+  CORBA::Boolean HasDuplicatedGroupNamesMED();
+
+  void ExportToMED( const char* file, CORBA::Boolean auto_groups, SMESH::MED_VERSION theVersion )
+    throw (SALOME::SALOME_Exception);
   void ExportMED( const char* file, CORBA::Boolean auto_groups )
     throw (SALOME::SALOME_Exception);
+
   void ExportDAT( const char* file )
     throw (SALOME::SALOME_Exception);
   void ExportUNV( const char* file )
@@ -161,13 +168,16 @@ public:
 
   SALOME_MED::MESH_ptr GetMEDMesh()
     throw (SALOME::SALOME_Exception);
-  
+
   CORBA::Long NbNodes()
     throw (SALOME::SALOME_Exception);
-  
+
+  CORBA::Long NbElements()
+    throw (SALOME::SALOME_Exception);
+
   CORBA::Long NbEdges()
     throw (SALOME::SALOME_Exception);
-  
+
   CORBA::Long NbFaces()
     throw (SALOME::SALOME_Exception);
 
@@ -176,7 +186,10 @@ public:
 
   CORBA::Long NbQuadrangles()
     throw (SALOME::SALOME_Exception);
-  
+
+  CORBA::Long NbPolygons()
+    throw (SALOME::SALOME_Exception);
+
   CORBA::Long NbVolumes()
     throw (SALOME::SALOME_Exception);
 
@@ -185,16 +198,31 @@ public:
 
   CORBA::Long NbHexas()
     throw (SALOME::SALOME_Exception);
-  
+
   CORBA::Long NbPyramids()
     throw (SALOME::SALOME_Exception);
-  
+
   CORBA::Long NbPrisms()
     throw (SALOME::SALOME_Exception);
-  
+
+  CORBA::Long NbPolyhedrons()
+    throw (SALOME::SALOME_Exception);
+
   CORBA::Long NbSubMesh()
     throw (SALOME::SALOME_Exception);
 
+  SMESH::long_array* GetElementsId()
+    throw (SALOME::SALOME_Exception);
+
+  SMESH::long_array* GetElementsByType( SMESH::ElementType theElemType )
+    throw (SALOME::SALOME_Exception);
+  
+  SMESH::long_array* GetNodesId()
+    throw (SALOME::SALOME_Exception);
+  
+  SMESH::ElementType GetElementType( const CORBA::Long id, const bool iselem )
+    throw (SALOME::SALOME_Exception);
+  
   char* Dump();
   
   // Internal methods not available through CORBA
@@ -226,6 +254,8 @@ public:
 
   virtual SMESH::long_array* GetIDs();
 
+  CORBA::Long GetMeshPtr();
+
   map<int, SMESH_subMesh_i*> _mapSubMesh_i; //NRI
   map<int, ::SMESH_subMesh*> _mapSubMesh;   //NRI