X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSMESH%2FSMESH_Mesh.hxx;h=8e01301b6e82f23e73ca48ab0fb88237c5fbfb3a;hb=refs%2Ftags%2FdistribGeom_11Feb13;hp=5ae3cc61c74899b386205e1231d7e81a630e89c6;hpb=baade101145addac3ddb73aebfff5172b3d1ef4b;p=modules%2Fsmesh.git diff --git a/src/SMESH/SMESH_Mesh.hxx b/src/SMESH/SMESH_Mesh.hxx index 5ae3cc61c..8e01301b6 100644 --- a/src/SMESH/SMESH_Mesh.hxx +++ b/src/SMESH/SMESH_Mesh.hxx @@ -29,12 +29,12 @@ #include "SMESH_SMESH.hxx" -#include "SMESH_Hypothesis.hxx" -#include "SMESH_Controls.hxx" - -#include "SMESHDS_Mesh.hxx" -#include "SMESHDS_Command.hxx" #include "SMDSAbs_ElementType.hxx" +#include "SMESHDS_Command.hxx" +#include "SMESHDS_Mesh.hxx" +#include "SMESH_ComputeError.hxx" +#include "SMESH_Controls.hxx" +#include "SMESH_Hypothesis.hxx" #include "Utils_SALOME_Exception.hxx" @@ -44,6 +44,7 @@ #include #include + #ifdef WNT #pragma warning(disable:4251) // Warning DLL Interface ... #pragma warning(disable:4290) // Warning Exception ... @@ -121,6 +122,9 @@ public: int CGNSToMesh(const char* theFileName, const int theMeshIndex, std::string& theMeshName); + SMESH_ComputeErrorPtr GMFToMesh(const char* theFileName, + bool theMakeRequiredGroups = true ); + SMESH_Hypothesis::Hypothesis_Status AddHypothesis(const TopoDS_Shape & aSubShape, int anHypId) throw(SALOME_Exception); @@ -240,6 +244,9 @@ public: const SMESHDS_Mesh* meshPart = 0) throw(SALOME_Exception); void ExportCGNS(const char * file, const SMESHDS_Mesh* mesh); + void ExportGMF(const char * file, + const SMESHDS_Mesh* mesh, + bool withRequiredGroups = true ); void ExportSAUV(const char *file, const char* theMeshName = NULL, bool theAutoGroups = true) throw(SALOME_Exception); @@ -287,7 +294,9 @@ public: int& theId, const TopoDS_Shape& theShape=TopoDS_Shape(), const SMESH_PredicatePtr& thePredicate=SMESH_PredicatePtr()); - + + SMESH_Group* AddGroup (SMESHDS_GroupBase* groupDS) throw(SALOME_Exception); + typedef boost::shared_ptr< SMDS_Iterator > GroupIteratorPtr; GroupIteratorPtr GetGroups() const; @@ -317,15 +326,13 @@ public: void SetMeshOrder(const TListOfListOfInt& theOrder ); const TListOfListOfInt& GetMeshOrder() const; - /*! - * \brief sort submeshes according to stored mesh order - * \param theListToSort in out list to be sorted - * \return FALSE if nothing sorted - */ + // sort submeshes according to stored mesh order bool SortByMeshOrder(std::list& theListToSort) const; - // - + // return true if given order of sub-meshes is OK + bool IsOrderOK( const SMESH_subMesh* smBefore, + const SMESH_subMesh* smAfter ) const; + ostream& Dump(ostream & save); private: @@ -337,7 +344,6 @@ private: protected: int _id; // id given by creator (unique within the creator instance) int _studyId; - int _idDoc; // id given by SMESHDS_Document int _groupId; // id generator for group objects int _nbSubShapes; // initial nb of subshapes in the shape to mesh bool _isShapeToMesh;// set to true when a shape is given (only once)