27 #ifndef _SMESH_SUBMESH_HXX_ 28 #define _SMESH_SUBMESH_HXX_ 40 #include <TopoDS_Shape.hxx> 77 const std::map < int, SMESH_subMesh * >& DependsOn();
83 const bool complexShapeFirst);
90 COMPUTE_OK, FAILED_TO_COMPUTE
112 ALGO_EVENT, COMPUTE_EVENT
168 void NotifyListenersOnEvent(
const int event,
175 void DeleteOwnListeners();
191 void DumpAlgoState(
bool isMain);
193 bool ComputeStateEngine(
int event);
205 const TopAbs_ShapeEnum theShapeType);
208 {
return IsApplicableHypotesis( theHypothesis, _subShape.ShapeType() ); }
218 bool IsEmpty()
const;
220 bool IsMeshComputed()
const;
227 void SetIsAlwaysComputed(
bool isAlCo);
235 bool SubMeshesComputed();
237 bool SubMeshesReady();
239 void RemoveSubMeshElementsAndNodes();
240 void UpdateDependantsState(
const compute_event theEvent);
241 void UpdateSubMeshState(
const compute_state theState);
242 void ComputeSubMeshStateEngine(
int event);
243 void CleanDependants();
244 void CleanDependsOn();
245 void SetAlgoState(
int state);
253 bool & theSubComputed);
276 const int theHypType = 0);
SMESH_subMeshEventListener EventListener
Data specific for EventListener and to be stored in a submesh.
bool IsApplicableHypotesis(const SMESH_Hypothesis *theHypothesis) const
A base for objects reacting on submesh events.
boost::shared_ptr< SMESH_ComputeError > SMESH_ComputeErrorPtr
int GetComputeState() const
SMESHDS_SubMesh * _subMeshDS
SMESH_subMeshEventListenerData EventListenerData
std::list< std::pair< SMESH_subMesh *, EventListener *> > myOwnListeners
std::map< EventListener *, EventListenerData *> myEventListeners
< event listeners to notify
boost::shared_ptr< SMDS_Iterator< SMESH_subMesh * > > SMESH_subMeshIteratorPtr
std::map< int, SMESH_subMesh *> _mapDepend
std::map< SMESH_subMesh *, std::vector< int > > MapShapeNbElems
SMESH_ComputeErrorPtr _computeError
SMESH_ComputeErrorPtr & GetComputeError()