PLA13330( When mesh generation does not success, trace where )

Add structures and a method to get compute error descriptions
This commit is contained in:
eap 2007-04-10 13:55:23 +00:00
parent 5121254a04
commit 7ea0dd579b

View File

@ -38,20 +38,48 @@
module SMESH
{
typedef sequence<GEOM::GEOM_Object> object_array;
typedef sequence<SMESH_Mesh> mesh_array;
typedef sequence<SMESH_Mesh> mesh_array;
interface FilterManager;
interface SMESH_Pattern;
enum AlgoStateErrorName { MISSING_ALGO, MISSING_HYPO, NOT_CONFORM_MESH, BAD_PARAM_VALUE };
struct AlgoStateError {
AlgoStateErrorName name;
/*!
* Hypothesis definintion error
*/
struct AlgoStateError
{
Hypothesis_Status state;
string algoName;
long algoDim;
boolean isGlobalAlgo;
};
typedef sequence<AlgoStateError> algo_error_array;
/*!
* Mesh computation error
*/
enum ComputeErrorName
{
COMPERR_OK ,
COMPERR_BAD_INPUT_MESH, // wrong mesh on lower submesh
COMPERR_STD_EXCEPTION , // some std exception raised
COMPERR_OCC_EXCEPTION , // OCC exception raised
COMPERR_SLM_EXCEPTION , // SALOME exception raised
COMPERR_EXCEPTION , // other exception raised
COMPERR_MEMORY_PB , // memory allocation problem
COMPERR_ALGO_FAILED , // computation failed
COMPERR_BAD_SHAPE // bad geometry
};
struct ComputeError
{
short code; // ComputeErrorName or, if negative, algo specific code
string comment; // textual problem description
string algoName;
short subShapeID; // id of subshape of a shape to mesh
};
typedef sequence<ComputeError> compute_error_array;
interface SMESH_Gen : Engines::Component, SALOMEDS::Driver
{
@ -169,6 +197,14 @@ module SMESH
in GEOM::GEOM_Object theSubObject )
raises ( SALOME::SALOME_Exception );
/*!
* Return errors of mesh computation
* compute_error_array is empty if everything is OK
*/
compute_error_array GetComputeErrors( in SMESH_Mesh theMesh,
in GEOM::GEOM_Object theSubObject )
raises ( SALOME::SALOME_Exception );
/*!
* Return indeces of faces, edges and vertices of given subshapes
* within theMainObject