+
+ /*!
+ * \brief Return \c true if a meshing order not yet set for a concurrent sub-mesh
+ */
+ CORBA::Boolean IsUnorderedSubMesh(CORBA::Long submeshID);
+ /*!
+ * \brief Return submesh objects list in meshing order
+ */
+ virtual SMESH::submesh_array_array* GetMeshOrder();
+ /*!
+ * \brief Set submesh object order
+ */
+ virtual ::CORBA::Boolean SetMeshOrder(const SMESH::submesh_array_array& theSubMeshArray);
+
+
+ /*!
+ * Collect statistic of mesh elements given by iterator
+ */
+ static void CollectMeshInfo(const SMDS_ElemIteratorPtr theItr,
+ SMESH::long_array& theInfo);
+ /*!
+ * \brief Return iterator on elements of given type in given object
+ */
+ static SMDS_ElemIteratorPtr GetElements(SMESH::SMESH_IDSource_ptr obj,
+ SMESH::ElementType type);
+
+ // =========================
+ // SMESH_IDSource interface
+ // =========================
+
+ virtual SMESH::long_array* GetIDs();
+ /*!
+ * Returns number of mesh elements of each \a EntityType
+ * Result array of number of elements per \a EntityType
+ * Inherited from SMESH_IDSource
+ */
+ virtual SMESH::long_array* GetMeshInfo();
+ /*!
+ * Returns number of mesh elements of each \a ElementType
+ */
+ virtual SMESH::long_array* GetNbElementsByType();
+ /*!
+ * Returns types of elements it contains
+ */
+ virtual SMESH::array_of_ElementType* GetTypes();
+ /*!
+ * Returns self
+ */
+ virtual SMESH::SMESH_Mesh_ptr GetMesh();
+ /*!
+ * Returns false if GetMeshInfo() returns incorrect information that may
+ * happen if mesh data is not yet fully loaded from the file of study.
+ */
+ bool IsMeshInfoCorrect();
+ /*!
+ * Returns mesh unstructed grid information.
+ */
+ virtual SALOMEDS::TMPFile* GetVtkUgStream();
+
+