X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=idl%2FGHS3DPlugin_Algorithm.idl;h=a697472db2abb9dabf0c9cfdee386adbd32902eb;hb=f264dfaecc1f66c2f4a300fe007b818a92a475f8;hp=6bb10d8ea0ad656c57064c2bd47e391dc885392a;hpb=49fb797789d9300b06ac40ba8bd7f91b0e5c61e4;p=plugins%2Fghs3dplugin.git diff --git a/idl/GHS3DPlugin_Algorithm.idl b/idl/GHS3DPlugin_Algorithm.idl index 6bb10d8..a697472 100644 --- a/idl/GHS3DPlugin_Algorithm.idl +++ b/idl/GHS3DPlugin_Algorithm.idl @@ -1,9 +1,9 @@ -// Copyright (C) 2004-2012 CEA/DEN, EDF R&D +// Copyright (C) 2004-2016 CEA/DEN, EDF R&D // // 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. +// version 2.1 of the License, or (at your option) any later version. // // This library is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -19,7 +19,6 @@ // File : GHS3D_Algorithm.idl // Author : Julia DOROVSKIKH -// $Header$ // #ifndef _GHS3D_Algorithm_IDL_ #define _GHS3D_Algorithm_IDL_ @@ -55,7 +54,7 @@ module GHS3DPlugin typedef sequence GHS3DEnforcedMeshList; /*! - * GHS3DPlugin_GHS3D: interface of "Tetrahedron (GHS3D)" algorithm + * GHS3DPlugin_GHS3D: interface of "MG-Tetra" algorithm */ interface GHS3DPlugin_GHS3D : SMESH::SMESH_3D_Algo { @@ -63,7 +62,7 @@ module GHS3DPlugin }; /*! - * Parameters of "Tetrahedron (GHS3D)" algorithm + * Parameters of "MG-Tetra" algorithm */ interface GHS3DPlugin_Hypothesis : SMESH::SMESH_Hypothesis { @@ -72,19 +71,26 @@ module GHS3DPlugin */ void SetToMeshHoles(in boolean toMesh); boolean GetToMeshHoles(); + /*! + * To make groups of volumes of different domains when mesh is generated from skin. + * Default is to make groups. + * This option works only (1) for the mesh w/o shape and (2) if GetToMeshHoles() == true + */ + void SetToMakeGroupsOfDomains(in boolean toMakeGroups); + boolean GetToMakeGroupsOfDomains(); /*! * Maximal size of memory to be used by the algorithm (in Megabytes). * Negative value means not to use this option */ - void SetMaximumMemory(in short MB) raises (SALOME::SALOME_Exception); - short GetMaximumMemory(); + void SetMaximumMemory(in long MB) raises (SALOME::SALOME_Exception); + long GetMaximumMemory(); /*! * Initial size of memory to be used by the algorithm (in Megabytes) in * automatic memory adjustment mode. Default is zero. * Negative value means not to use this option */ - void SetInitialMemory(in short MB) raises (SALOME::SALOME_Exception); - short GetInitialMemory(); + void SetInitialMemory(in long MB) raises (SALOME::SALOME_Exception); + long GetInitialMemory(); /*! * Optimization level: 0-none, 1-light, 2-medium, 3-strong. Default is medium */ @@ -139,13 +145,25 @@ module GHS3DPlugin /*! * To set hiden/undocumented/advanced options */ - void SetTextOption(in string option); + void SetAdvancedOption(in string option); + string GetAdvancedOption(); + void SetTextOption(in string option); // obsolete string GetTextOption(); /*! * To define the volumic gradation */ void SetGradation(in double gradation); double GetGradation(); + /*! + * Print log in standard output + */ + void SetStandardOutputLog(in boolean logInStandardOutput); + boolean GetStandardOutputLog(); + /*! + * Remove log file on success + */ + void SetRemoveLogOnSuccess(in boolean removeLogOnSuccess); + boolean GetRemoveLogOnSuccess(); /*! * To set an enforced vertex */ @@ -178,11 +196,55 @@ module GHS3DPlugin GHS3DEnforcedMeshList GetEnforcedMeshes(); void ClearEnforcedMeshes(); + /*! * Set/get/unset an enforced vertex (private method for GUI) */ boolean p_SetEnforcedMesh(in SMESH::SMESH_IDSource theSource, in SMESH::ElementType elementType, in string name, in string groupName) raises (SALOME::SALOME_Exception); }; + + /*! + * GHS3DPlugin_Optimizer: interface of "MG-Tetra Optimization" algorithm + */ + interface GHS3DPlugin_Optimizer : SMESH::SMESH_3D_Algo + { + }; + + enum PThreadsMode { SAFE, AGGRESSIVE, NONE }; + enum Mode { NO, YES, ONLY }; + + /*! + * Parameters of "MG-Tetra Optimization" algorithm + * + * params inherited from GHS3DPlugin_Hypothesis: + * - create new nodes + * - optimization level + * - init and max memory + * - work dir + * - verbosity + * - log to file + * - keep work files + * - remove log file + * - advanced options + */ + interface GHS3DPlugin_OptimizerHypothesis: GHS3DPlugin_Hypothesis + { + void SetOptimization( in Mode optMode ); + Mode GetOptimization(); + + void SetSplitOverConstrained( in Mode ovcMode ); + Mode GetSplitOverConstrained(); + + void SetSmoothOffSlivers( in boolean toSmooth ); + boolean GetSmoothOffSlivers(); + + void SetPThreadsMode( in PThreadsMode mode ); + PThreadsMode GetPThreadsMode(); + + void SetMaximalNumberOfThreads( in short nb ); + short GetMaximalNumberOfThreads(); + }; + }; #endif