1 // Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
2 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
4 // This library is free software; you can redistribute it and/or
5 // modify it under the terms of the GNU Lesser General Public
6 // License as published by the Free Software Foundation; either
7 // version 2.1 of the License.
9 // This library is distributed in the hope that it will be useful,
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 // Lesser General Public License for more details.
14 // You should have received a copy of the GNU Lesser General Public
15 // License along with this library; if not, write to the Free Software
16 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
22 // File : GHS3D_Algorithm.idl
23 // Author : Julia DOROVSKIKH
26 #ifndef _GHS3D_Algorithm_IDL_
27 #define _GHS3D_Algorithm_IDL_
29 #include "SALOME_Exception.idl"
30 #include "SMESH_Hypothesis.idl"
33 * GHS3DPlugin: interfaces to GHS3D related hypotheses and algorithms
38 * GHS3DPlugin_GHS3D: interface of "Tetrahedron (GHS3D)" algorithm
40 interface GHS3DPlugin_GHS3D : SMESH::SMESH_3D_Algo
45 * Parameters of "Tetrahedron (GHS3D)" algorithm
47 interface GHS3DPlugin_Hypothesis : SMESH::SMESH_Hypothesis
50 * To mesh "holes" in a solid or not. Default is to mesh.
52 void SetToMeshHoles(in boolean toMesh);
53 boolean GetToMeshHoles();
55 * Maximal size of memory to be used by the algorithm (in Megabytes).
56 * Negative value means not to use this option
58 void SetMaximumMemory(in short MB) raises (SALOME::SALOME_Exception);
59 short GetMaximumMemory();
61 * Initial size of memory to be used by the algorithm (in Megabytes) in
62 * automatic memory adjustment mode. Default is zero.
63 * Negative value means not to use this option
65 void SetInitialMemory(in short MB) raises (SALOME::SALOME_Exception);
66 short GetInitialMemory();
68 * Optimization level: 0-none, 1-light, 2-medium, 3-strong. Default is medium
70 void SetOptimizationLevel(in short level) raises (SALOME::SALOME_Exception);
71 short GetOptimizationLevel();
73 * Path to working directory
75 void SetWorkingDirectory(in string path) raises (SALOME::SALOME_Exception);
76 string GetWorkingDirectory();
78 * To keep working files or remove them. Log file remains in case of errors anyway.
80 void SetKeepFiles(in boolean toKeep);
81 boolean GetKeepFiles();
83 * Verbose level [0-10]
84 * 0 - no standard output,
85 * 2 - prints the data, quality statistics of the skin and final meshes and
86 * indicates when the final mesh is being saved. In addition the software
87 * gives indication regarding the CPU time.
88 * 10 - same as 2 plus the main steps in the computation, quality statistics
89 * histogram of the skin mesh, quality statistics histogram together with
90 * the characteristics of the final mesh.
92 void SetVerboseLevel(in short level);
93 short GetVerboseLevel();
97 void SetToCreateNewNodes(in boolean toCreate);
98 boolean GetToCreateNewNodes();
100 * To use boundary recovery version which tries to create mesh on a very poor
101 * quality surface mesh
103 void SetToUseBoundaryRecoveryVersion(in boolean toUse);
104 boolean GetToUseBoundaryRecoveryVersion();
106 * To set hiden/undocumented/advanced options
108 void SetTextOption(in string option);
109 string GetTextOption();