Salome HOME
Update copyrights
[plugins/ghs3dplugin.git] / src / GHS3DPlugin / GHS3DPlugin_Hypothesis_i.hxx
index 6b1539c1443810332c7dc345c76100aaa47106b8..286054307cdeee10cb3ff78ed31b7a60c1166d2d 100644 (file)
@@ -1,9 +1,9 @@
-// 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
@@ -45,7 +45,6 @@ class GHS3DPLUGIN_EXPORT GHS3DPlugin_Hypothesis_i:
  public:
   // Constructor
   GHS3DPlugin_Hypothesis_i (PortableServer::POA_ptr thePOA,
-                            int                     theStudyId,
                             ::SMESH_Gen*            theGenImpl);
   // Destructor
   virtual ~GHS3DPlugin_Hypothesis_i();
@@ -55,17 +54,24 @@ class GHS3DPLUGIN_EXPORT GHS3DPlugin_Hypothesis_i:
    */
   void SetToMeshHoles(CORBA::Boolean toMesh);
   CORBA::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(CORBA::Boolean toMakeGroups);
+  CORBA::Boolean GetToMakeGroupsOfDomains();
   /*!
    * Maximal size of memory to be used by the algorithm (in Megabytes)
    */
-  void SetMaximumMemory(CORBA::Short MB) throw ( SALOME::SALOME_Exception );
-  CORBA::Short GetMaximumMemory();
+  void SetMaximumMemory(CORBA::Float MB) throw ( SALOME::SALOME_Exception );
+  CORBA::Float GetMaximumMemory();
   /*!
    * Initial size of memory to be used by the algorithm (in Megabytes) in
    * automatic memory adjustment mode. Default is zero
    */
-  void SetInitialMemory(CORBA::Short MB) throw ( SALOME::SALOME_Exception );
-  CORBA::Short GetInitialMemory();
+  void SetInitialMemory(CORBA::Float MB) throw ( SALOME::SALOME_Exception );
+  CORBA::Float GetInitialMemory();
   /*!
    * Optimization level: 0-none, 1-light, 2-medium, 3-strong. Default is medium
    */
@@ -120,19 +126,31 @@ class GHS3DPLUGIN_EXPORT GHS3DPlugin_Hypothesis_i:
   /*!
    * To set hiden/undocumented/advanced options
    */
-  void SetTextOption(const char* option);
+  void SetAdvancedOption(const char* option);
+  char* GetAdvancedOption();
+  void SetTextOption(const char* option); // obsolete
   char* GetTextOption();
   /*!
   * To define the volumic gradation
   */
   void SetGradation(CORBA::Double gradation);
   CORBA::Double GetGradation();
+  /*!
+  * Print log in standard output
+  */
+  void SetStandardOutputLog(CORBA::Boolean logInStandardOutput);
+  CORBA::Boolean GetStandardOutputLog();
+  /*!
+  * Remove log file on success
+  */
+  void SetRemoveLogOnSuccess(CORBA::Boolean removeLogOnSuccess);
+  CORBA::Boolean GetRemoveLogOnSuccess();
   /*!
    * To set an enforced vertex
    */
   bool p_SetEnforcedVertex(CORBA::Double size, CORBA::Double x = 0, CORBA::Double y = 0, CORBA::Double z = 0,
-                          const char* theVertexName = "", const char* theVertexEntry = "", const char* theGroupName = "",
-                          CORBA::Boolean isCompound = false) 
+                           const char* theVertexName = "", const char* theVertexEntry = "", const char* theGroupName = "",
+                           CORBA::Boolean isCompound = false) 
     throw (SALOME::SALOME_Exception);
   bool SetEnforcedVertex(CORBA::Double x, CORBA::Double y, CORBA::Double z, CORBA::Double size) throw (SALOME::SALOME_Exception);
   bool SetEnforcedVertexNamed(CORBA::Double x, CORBA::Double y, CORBA::Double z, CORBA::Double size, const char* theVertexName) throw (SALOME::SALOME_Exception);
@@ -167,6 +185,16 @@ class GHS3DPLUGIN_EXPORT GHS3DPlugin_Hypothesis_i:
   // Verify whether hypothesis supports given entity type 
   CORBA::Boolean IsDimSupported( SMESH::Dimension type );
   
+
+  // Methods for copying mesh definition to other geometry
+
+  // Return geometry this hypothesis depends on. Return false if there is no geometry parameter
+  virtual bool getObjectsDependOn( std::vector< std::string > & entryArray,
+                                   std::vector< int >         & subIDArray ) const;
+
+  // Set new geometry instead of that returned by getObjectsDependOn()
+  virtual bool setObjectsDependOn( std::vector< std::string > & entryArray,
+                                   std::vector< int >         & subIDArray );
 };
 
 #endif