Salome HOME
projects
/
modules
/
smesh.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
23076: [CEA 1499] Get in python all sub-shapes in error after Compute
[modules/smesh.git]
/
src
/
SMESH
/
SMESH_subMesh.hxx
diff --git
a/src/SMESH/SMESH_subMesh.hxx
b/src/SMESH/SMESH_subMesh.hxx
index f38d6367a53d925f21715f565c88e8010c9651a4..249784c081196746c632c475cf01e1e9ebf0a650 100644
(file)
--- a/
src/SMESH/SMESH_subMesh.hxx
+++ b/
src/SMESH/SMESH_subMesh.hxx
@@
-1,4
+1,4
@@
-// Copyright (C) 2007-201
4
CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-201
5
CEA/DEN, EDF R&D, OPEN CASCADE
//
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
//
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
@@
-88,6
+88,9
@@
class SMESH_EXPORT SMESH_subMesh
SMESH_subMeshIteratorPtr getDependsOnIterator(const bool includeSelf,
const bool complexShapeFirst=false) const;
SMESH_subMeshIteratorPtr getDependsOnIterator(const bool includeSelf,
const bool complexShapeFirst=false) const;
+ const std::vector< SMESH_subMesh * > & GetAncestors() const;
+ void ClearAncestors();
+
const TopoDS_Shape & GetSubShape() const;
enum compute_state
const TopoDS_Shape & GetSubShape() const;
enum compute_state
@@
-139,16
+142,22
@@
class SMESH_EXPORT SMESH_subMesh
/*!
* \brief Return an event listener data
* \param listener - the listener whose data is
/*!
* \brief Return an event listener data
* \param listener - the listener whose data is
+ * \param myOwn - if \c true, returns a listener set by this sub-mesh,
+ * else returns a listener listening to events of this sub-mesh
* \retval EventListenerData* - found data, maybe NULL
*/
* \retval EventListenerData* - found data, maybe NULL
*/
- EventListenerData* GetEventListenerData(EventListener* listener) const;
+ EventListenerData* GetEventListenerData(EventListener* listener,
+ const bool myOwn=false) const;
/*!
* \brief Return an event listener data
* \param listenerName - the listener name
/*!
* \brief Return an event listener data
* \param listenerName - the listener name
+ * \param myOwn - if \c true, returns a listener set by this sub-mesh,
+ * else returns a listener listening to events of this sub-mesh
* \retval EventListenerData* - found data, maybe NULL
*/
* \retval EventListenerData* - found data, maybe NULL
*/
- EventListenerData* GetEventListenerData(const std::string& listenerName) const;
+ EventListenerData* GetEventListenerData(const std::string& listenerName,
+ const bool myOwn=false) const;
/*!
* \brief Unregister the listener and delete it and it's data
/*!
* \brief Unregister the listener and delete it and it's data
@@
-209,10
+218,10
@@
public:
AlgoStateEngine(int event, SMESH_Hypothesis * anHyp);
SMESH_Hypothesis::Hypothesis_Status
AlgoStateEngine(int event, SMESH_Hypothesis * anHyp);
SMESH_Hypothesis::Hypothesis_Status
- SubMeshesAlgoStateEngine(int event, SMESH_Hypothesis * anHyp);
+ SubMeshesAlgoStateEngine(int event, SMESH_Hypothesis * anHyp
, bool exitOnFatal=false
);
algo_state GetAlgoState() const { return _algoState; }
algo_state GetAlgoState() const { return _algoState; }
- compute_state GetComputeState() const { return _computeState; }
;
+ compute_state GetComputeState() const { return _computeState; }
SMESH_ComputeErrorPtr& GetComputeError() { return _computeError; }
void DumpAlgoState(bool isMain);
SMESH_ComputeErrorPtr& GetComputeError() { return _computeError; }
void DumpAlgoState(bool isMain);
@@
-271,7
+280,7
@@
public:
protected:
// ==================================================================
protected:
// ==================================================================
- void insertDependence(const TopoDS_Shape aS
ubShape
);
+ void insertDependence(const TopoDS_Shape aS
hape, TopAbs_ShapeEnum aSubType
);
void removeSubMeshElementsAndNodes();
void updateDependantsState(const compute_event theEvent);
void removeSubMeshElementsAndNodes();
void updateDependantsState(const compute_event theEvent);
@@
-318,7
+327,8
@@
protected:
int _Id;
std::map < int, SMESH_subMesh * >_mapDepend;
int _Id;
std::map < int, SMESH_subMesh * >_mapDepend;
- bool _dependenceAnalysed;
+ bool _dependenceAnalysed;
+ std::vector< SMESH_subMesh * > _ancestors;
SMESH_Algo * _algo; // the algorithm found by last *StateEngine() call
algo_state _algoState;
SMESH_Algo * _algo; // the algorithm found by last *StateEngine() call
algo_state _algoState;