-// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2012 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
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
// SMESH SMESH : implementaion of SMESH idl descriptions
// File : SMESH_subMesh.cxx
{
insertDependence(exp.Current());
}
+ for (TopExp_Explorer exp(_subShape, TopAbs_VERTEX, TopAbs_EDGE); exp.More();exp.Next())
+ {
+ insertDependence(exp.Current());
+ }
break;
}
case TopAbs_COMPSOLID:
break;
}
}
- // compute
-// cleanDependants(); for "UseExisting_*D" algos
-// removeSubMeshElementsAndNodes();
+ // Compute
+
+ //cleanDependants(); for "UseExisting_*D" algos
+ //removeSubMeshElementsAndNodes();
+ loadDependentMeshes();
ret = false;
_computeState = FAILED_TO_COMPUTE;
_computeError = SMESH_ComputeError::New(COMPERR_OK,"",algo);
break;
case COMPUTE: // nothing to do
break;
-#ifdef WITH_SMESH_CANCEL_COMPUTE
case COMPUTE_CANCELED:
{
algo = GetAlgo();
algo->CancelCompute();
}
break;
-#endif
case CLEAN:
cleanDependants(); // submeshes dependent on me should be cleaned as well
removeSubMeshElementsAndNodes();
else
_computeState = NOT_READY;
break;
+ // case SUBMESH_LOADED:
+ // break;
default:
ASSERT(0);
break;
//purpose :
//=======================================================================
-void SMESH_subMesh::ComputeSubMeshStateEngine(int event)
+void SMESH_subMesh::ComputeSubMeshStateEngine(int event, const bool includeSelf)
{
- SMESH_subMeshIteratorPtr smIt = getDependsOnIterator(false,false);
+ SMESH_subMeshIteratorPtr smIt = getDependsOnIterator(includeSelf,false);
while ( smIt->more() )
smIt->next()->ComputeStateEngine(event);
}