-// Copyright (C) 2004-2012 CEA/DEN, EDF R&D
+// Copyright (C) 2004-2019 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
// File : GHS3D_Algorithm.idl
// Author : Julia DOROVSKIKH
-// $Header$
//
#ifndef _GHS3D_Algorithm_IDL_
#define _GHS3D_Algorithm_IDL_
typedef sequence<GHS3DEnforcedMesh> GHS3DEnforcedMeshList;
/*!
- * GHS3DPlugin_GHS3D: interface of "Tetrahedron (GHS3D)" algorithm
+ * GHS3DPlugin_GHS3D: interface of "MG-Tetra" algorithm
*/
interface GHS3DPlugin_GHS3D : SMESH::SMESH_3D_Algo
{
};
/*!
- * Parameters of "Tetrahedron (GHS3D)" algorithm
+ * Parameters of "MG-Tetra" algorithm
*/
interface GHS3DPlugin_Hypothesis : SMESH::SMESH_Hypothesis
{
*/
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 float MB) raises (SALOME::SALOME_Exception);
+ float 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 float MB) raises (SALOME::SALOME_Exception);
+ float GetInitialMemory();
/*!
* Optimization level: 0-none, 1-light, 2-medium, 3-strong. Default is medium
*/
/*!
* 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
*/
*/
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