2003-07-10 21:09:38 +06:00
|
|
|
// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
|
|
|
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
|
|
|
//
|
|
|
|
// This library is free software; you can redistribute it and/or
|
|
|
|
// modify it under the terms of the GNU Lesser General Public
|
|
|
|
// License as published by the Free Software Foundation; either
|
|
|
|
// version 2.1 of the License.
|
|
|
|
//
|
|
|
|
// This library is distributed in the hope that it will be useful,
|
|
|
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
|
|
// Lesser General Public License for more details.
|
|
|
|
//
|
|
|
|
// You should have received a copy of the GNU Lesser General Public
|
|
|
|
// License along with this library; if not, write to the Free Software
|
|
|
|
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
|
|
//
|
|
|
|
// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
|
|
|
|
//
|
|
|
|
//
|
|
|
|
//
|
|
|
|
// File : SMESH_Gen.idl
|
|
|
|
// Author : Paul RASCLE, EDF
|
|
|
|
// $Header$
|
2003-05-19 19:18:36 +06:00
|
|
|
|
|
|
|
#ifndef _SMESH_GEN_IDL_
|
|
|
|
#define _SMESH_GEN_IDL_
|
|
|
|
|
|
|
|
#include "SALOME_Exception.idl"
|
|
|
|
#include "SALOME_Component.idl"
|
|
|
|
#include "SALOMEDS.idl"
|
|
|
|
|
|
|
|
#include "GEOM_Gen.idl"
|
|
|
|
#include "GEOM_Shape.idl"
|
|
|
|
|
|
|
|
#include "SMESH_Mesh.idl"
|
|
|
|
#include "SMESH_Hypothesis.idl"
|
|
|
|
|
|
|
|
module SMESH
|
|
|
|
{
|
|
|
|
typedef sequence<GEOM::GEOM_Shape> shape_array;
|
2004-06-18 14:34:31 +06:00
|
|
|
typedef sequence<SMESH_Mesh> mesh_array;
|
|
|
|
|
|
|
|
interface FilterManager;
|
2003-05-19 19:18:36 +06:00
|
|
|
|
|
|
|
interface SMESH_Gen : Engines::Component, SALOMEDS::Driver
|
|
|
|
{
|
2004-06-18 14:34:31 +06:00
|
|
|
|
|
|
|
FilterManager CreateFilterManager();
|
|
|
|
|
2003-05-19 19:18:36 +06:00
|
|
|
/*!
|
2004-06-18 14:34:31 +06:00
|
|
|
Set the current study
|
|
|
|
*/
|
|
|
|
void SetCurrentStudy( in SALOMEDS::Study theStudy );
|
|
|
|
|
|
|
|
/*!
|
|
|
|
Get the current study
|
|
|
|
*/
|
|
|
|
SALOMEDS::Study GetCurrentStudy();
|
|
|
|
|
|
|
|
/*!
|
|
|
|
* Create a hypothesis that can be shared by differents parts of the mesh.
|
2003-05-19 19:18:36 +06:00
|
|
|
* An hypothesis is either:
|
|
|
|
* - a method used to generate or modify a part of the mesh (algorithm).
|
|
|
|
* - a parameter or a law used by an algorithm.
|
|
|
|
* Algorithms are 1D, 2D or 3D.
|
|
|
|
*/
|
2004-06-18 14:34:31 +06:00
|
|
|
SMESH_Hypothesis CreateHypothesis( in string theHypName,
|
|
|
|
in string theLibName )
|
|
|
|
raises ( SALOME::SALOME_Exception );
|
2003-05-19 19:18:36 +06:00
|
|
|
|
|
|
|
/*!
|
|
|
|
* Create a Mesh object, given a geometry shape.
|
|
|
|
* Mesh is created empty (no points, no elements).
|
|
|
|
* Shape is explored via GEOM_Client to create local copies.
|
|
|
|
* of TopoDS_Shapes and bind CORBA references of shape & subshapes
|
|
|
|
* with TopoDS_Shapes
|
|
|
|
*/
|
2004-06-18 14:34:31 +06:00
|
|
|
SMESH_Mesh CreateMesh( in GEOM::GEOM_Shape theShape )
|
|
|
|
raises ( SALOME::SALOME_Exception );
|
|
|
|
|
|
|
|
/*!
|
|
|
|
* Create Mesh object(s) importing data from given MED file
|
|
|
|
*/
|
|
|
|
mesh_array CreateMeshesFromMED( in string theFileName,
|
|
|
|
out SMESH::DriverMED_ReadStatus theStatus )
|
|
|
|
raises ( SALOME::SALOME_Exception );
|
2003-05-19 19:18:36 +06:00
|
|
|
|
|
|
|
/*!
|
|
|
|
* Create a Mesh object, without a geometry shape reference
|
|
|
|
*/
|
2004-06-18 14:34:31 +06:00
|
|
|
// SMESH_Mesh NewEmpty()
|
|
|
|
// raises ( SALOME::SALOME_Exception );
|
2003-05-19 19:18:36 +06:00
|
|
|
|
|
|
|
/*!
|
|
|
|
* Mesh a subShape.
|
|
|
|
* First, verify list of hypothesis associated with the subShape,
|
|
|
|
* return NOK if hypothesis are not sufficient
|
|
|
|
*/
|
2004-06-18 14:34:31 +06:00
|
|
|
boolean Compute( in SMESH_Mesh theMesh,
|
|
|
|
in GEOM::GEOM_Shape theSubShape )
|
|
|
|
raises ( SALOME::SALOME_Exception );
|
2003-05-19 19:18:36 +06:00
|
|
|
|
|
|
|
/*!
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
|
2004-06-18 14:34:31 +06:00
|
|
|
boolean IsReadyToCompute( in SMESH_Mesh theMesh,
|
|
|
|
in GEOM::GEOM_Shape theSubShape )
|
|
|
|
raises ( SALOME::SALOME_Exception );
|
2003-05-19 19:18:36 +06:00
|
|
|
|
|
|
|
/*!
|
|
|
|
*
|
|
|
|
*/
|
2004-06-18 14:34:31 +06:00
|
|
|
long_array GetSubShapesId( in GEOM::GEOM_Shape theMainShape,
|
|
|
|
in shape_array theListOfSubShape )
|
|
|
|
raises ( SALOME::SALOME_Exception );
|
2003-05-19 19:18:36 +06:00
|
|
|
|
|
|
|
/*!
|
|
|
|
*
|
|
|
|
*/
|
2004-06-18 14:34:31 +06:00
|
|
|
// long_array GetSubMeshesState( in shape_array theListOfSubShape )
|
|
|
|
// raises ( SALOME::SALOME_Exception );
|
2003-05-19 19:18:36 +06:00
|
|
|
|
2004-06-18 14:34:31 +06:00
|
|
|
|
2003-05-19 19:18:36 +06:00
|
|
|
};
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|