Salome HOME
Restore icons in old studies created before renaming MG algos
[plugins/ghs3dplugin.git] / idl / GHS3DPlugin_Algorithm.idl
index 91304710b3b3b05eb16270ba5998a64fe0efe8f1..a697472db2abb9dabf0c9cfdee386adbd32902eb 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2004-2014  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
@@ -54,7 +54,7 @@ module GHS3DPlugin
   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
   {
@@ -62,7 +62,7 @@ module GHS3DPlugin
   };
 
   /*!
-   * Parameters of "Tetrahedron (GHS3D)" algorithm
+   * Parameters of "MG-Tetra" algorithm
    */
   interface GHS3DPlugin_Hypothesis : SMESH::SMESH_Hypothesis
   {
@@ -82,15 +82,15 @@ module GHS3DPlugin
      * Maximal size of memory to be used by the algorithm (in Megabytes).
      * Negative value means not to use this option
      */
-    void SetMaximumMemory(in double MB) raises (SALOME::SALOME_Exception);
-    double 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 double MB) raises (SALOME::SALOME_Exception);
-    double 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
      */
@@ -145,7 +145,9 @@ 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
@@ -200,6 +202,49 @@ module GHS3DPlugin
     */
     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