X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSMESH%2FSMESH_subMesh.hxx;h=8251c6b940a3918ab772e171eb675237c9e2e9d4;hb=3f8c64cc43fe7db2df20bdb83159761b6e5ddb51;hp=937479da749c4e9d40dbdc1eea690cdfdb7a580c;hpb=bc37f0b49f9713347749b6325e1c7062de8857ae;p=modules%2Fsmesh.git diff --git a/src/SMESH/SMESH_subMesh.hxx b/src/SMESH/SMESH_subMesh.hxx index 937479da7..8251c6b94 100644 --- a/src/SMESH/SMESH_subMesh.hxx +++ b/src/SMESH/SMESH_subMesh.hxx @@ -58,6 +58,8 @@ class SMESH_subMesh // bool Contains(const TopoDS_Shape & aSubShape) // throw (SALOME_Exception); + SMESH_Mesh* GetFather() { return _father; } + SMESHDS_SubMesh * GetSubMeshDS(); SMESHDS_SubMesh* CreateSubMeshDS(); @@ -70,7 +72,7 @@ class SMESH_subMesh const TopoDS_Shape & GetSubShape(); - bool _vertexSet; // only for vertex subMesh, set to false for dim > 0 +// bool _vertexSet; // only for vertex subMesh, set to false for dim > 0 enum compute_state { @@ -91,7 +93,8 @@ class SMESH_subMesh enum compute_event { MODIF_HYP, MODIF_ALGO_STATE, COMPUTE, - CLEAN, CLEANDEP, SUBMESH_COMPUTED, SUBMESH_RESTORED + CLEAN, CLEANDEP, SUBMESH_COMPUTED, SUBMESH_RESTORED, + MESH_ENTITY_REMOVED, CHECK_COMPUTE_STATE }; SMESH_Hypothesis::Hypothesis_Status @@ -118,10 +121,16 @@ class SMESH_subMesh // return true if theHypothesis can be attached to me: // its dimention is checked - bool IsApplicableHypotesis(const SMESH_Hypothesis* theHypothesis) const; + static bool IsApplicableHypotesis(const SMESH_Hypothesis* theHypothesis, + const TopAbs_ShapeEnum theShapeType); + + bool IsApplicableHypotesis(const SMESH_Hypothesis* theHypothesis) const + { return IsApplicableHypotesis( theHypothesis, _subShape.ShapeType() ); } // return true if theHypothesis can be used to mesh me: // its shape type is checked + SMESH_Hypothesis::Hypothesis_Status CheckConcurentHypothesis (const int theHypType); + // check if there are several applicable hypothesis on fathers protected: void InsertDependence(const TopoDS_Shape aSubShape); @@ -149,16 +158,13 @@ class SMESH_subMesh const TopoDS_Shape& theCollection); // Apply theAlgo to all subshapes in theCollection - SMESH_Hypothesis::Hypothesis_Status CheckConcurentHypothesis (const int theHypType); - // check if there are several applicable hypothesis on fathers - - int GetNbAttached(const TopoDS_Shape& theShape, - const SMESH_Hypothesis * theHyp, - const bool theAlgos = false); - // return nb of hypotheses attached to theShape. + const SMESH_Hypothesis* GetSimilarAttached(const TopoDS_Shape& theShape, + const SMESH_Hypothesis * theHyp, + const int theHypType = 0); + // return a hypothesis attached to theShape. // If theHyp is provided, similar but not same hypotheses - // are countered; else only applicable ones are countered - // depending on theAlgos flag + // is returned; else an applicable ones having theHypType + // is returned TopoDS_Shape _subShape; SMESHDS_Mesh * _meshDS; @@ -166,12 +172,9 @@ class SMESH_subMesh int _Id; SMESH_Mesh *_father; map < int, SMESH_subMesh * >_mapDepend; - //map < int, SMESH_subMesh * >_mapDependants; bool _dependenceAnalysed; - //bool _dependantsFound; int _algoState; - //int _oldAlgoState; int _computeState; };