Salome HOME
idl pour HOMARD
authorGérald NICOLAS <gerald.nicolas@edf.fr>
Wed, 20 May 2020 14:05:25 +0000 (16:05 +0200)
committerGérald NICOLAS <gerald.nicolas@edf.fr>
Wed, 20 May 2020 14:05:25 +0000 (16:05 +0200)
idl/CMakeLists.txt
idl/HOMARD_Boundary.idl [new file with mode: 0644]
idl/HOMARD_Cas.idl [new file with mode: 0644]
idl/HOMARD_Gen.idl [new file with mode: 0644]
idl/HOMARD_Hypothesis.idl [new file with mode: 0644]
idl/HOMARD_Iteration.idl [new file with mode: 0644]
idl/HOMARD_YACS.idl [new file with mode: 0644]
idl/HOMARD_Zone.idl [new file with mode: 0644]

index 7ab17aef9e3072621894161b00327c97cacf4eff..e870d89afd0389d5463e2f7bef0ce7cb5cdb3d8d 100644 (file)
@@ -36,6 +36,13 @@ SET(SalomeIDLSMESH_IDLSOURCES
   SMESH_Pattern.idl
   SMESH_MeshEditor.idl
   SMESH_Measurements.idl
+  HOMARD_Boundary.idl
+  HOMARD_Cas.idl
+  HOMARD_Gen.idl
+  HOMARD_Hypothesis.idl
+  HOMARD_Iteration.idl
+  HOMARD_YACS.idl
+  HOMARD_Zone.idl
 )
 
 SET(_idl_include_dirs
diff --git a/idl/HOMARD_Boundary.idl b/idl/HOMARD_Boundary.idl
new file mode 100644 (file)
index 0000000..d1a9e40
--- /dev/null
@@ -0,0 +1,99 @@
+// Copyright (C) 2011-2020  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, 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
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+
+// Remarques :
+// L'ordre de description des fonctions est le meme dans tous les fichiers
+// HOMARD_aaaa.idl, HOMARD_aaaa.hxx, HOMARD_aaaa.cxx, HOMARD_aaaa_i.hxx, HOMARD_aaaa_i.cxx :
+// 1. Les generalites : Name, Delete, DumpPython, Dump, Restore
+// 2. Les caracteristiques
+// 3. Le lien avec les autres structures
+//
+// Quand les 2 fonctions Setxxx et Getxxx sont presentes, Setxxx est decrit en premier
+//
+
+#ifndef _HOMARD_Boundary_IDL
+#define _HOMARD_Boundary_IDL
+
+#include "SALOME_Component.idl"
+#include "SALOME_Exception.idl"
+#include "SALOMEDS.idl"
+
+#include "HOMARD_Cas.idl"
+#include "HOMARD_Zone.idl"
+
+
+module HOMARD
+{
+  interface HOMARD_Boundary : Engines::EngineComponent
+  {
+// Generalites
+    void     SetName(in string Name)                       raises (SALOME::SALOME_Exception);
+    string   GetName()                                     raises (SALOME::SALOME_Exception);
+
+    long     Delete()                                      raises (SALOME::SALOME_Exception);
+
+    string   GetDumpPython()                               raises (SALOME::SALOME_Exception);
+
+// Caracteristiques
+    void     SetType (in long Type)                        raises (SALOME::SALOME_Exception);
+    long     GetType()                                     raises (SALOME::SALOME_Exception);
+
+    void     SetDataFile(in string DataFile)               raises (SALOME::SALOME_Exception);
+    string   GetDataFile()                                 raises (SALOME::SALOME_Exception);
+
+    void     SetMeshName(in string MeshName)               raises (SALOME::SALOME_Exception);
+    string   GetMeshName()                                 raises (SALOME::SALOME_Exception);
+
+    void     SetCylinder (in double Xcentre, in double Ycentre, in double Zcentre,
+                          in double Xaxe, in double Yaxe, in double Zaxe, in double rayon)
+                                                           raises (SALOME::SALOME_Exception);
+
+    void     SetSphere (in double Xcentre, in double Ycentre, in double Zcentre, in double rayon)
+                                                           raises (SALOME::SALOME_Exception);
+
+    void     SetConeR (in double Xcentre1, in double Ycentre1, in double Zcentre1, in double Rayon1,
+                       in double Xcentre2, in double Ycentre2, in double Zcentre2, in double Rayon2)
+                                                           raises (SALOME::SALOME_Exception);
+
+    void     SetConeA(in double Xaxe,in double Yaxe,in double Zaxe,in double Angle,
+                      in double Xcentre,in double Ycentre,in double ZCentre)
+                                                           raises (SALOME::SALOME_Exception);
+
+    void     SetTorus (in double Xcentre, in double Ycentre, in double Zcentre,
+                          in double Xaxe, in double Yaxe, in double Zaxe, in double rayonRev, in double rayonPri)
+                                                           raises (SALOME::SALOME_Exception);
+
+
+    HOMARD::double_array GetCoords()                       raises (SALOME::SALOME_Exception);
+
+    void     SetLimit (in double Xincr, in double Yincr, in double Zincr)
+                                                           raises (SALOME::SALOME_Exception);
+    HOMARD::double_array GetLimit()                        raises (SALOME::SALOME_Exception);
+
+    void       AddGroup(in string LeGroupe)                raises (SALOME::SALOME_Exception);
+    void       SetGroups(in ListGroupType ListGroup)       raises (SALOME::SALOME_Exception);
+    ListGroupType GetGroups()                              raises (SALOME::SALOME_Exception);
+
+// Liens avec les autres iterations
+    void     SetCaseCreation(in string NomCas)             raises (SALOME::SALOME_Exception);
+    string   GetCaseCreation()                             raises (SALOME::SALOME_Exception);
+
+  };
+};
+#endif
diff --git a/idl/HOMARD_Cas.idl b/idl/HOMARD_Cas.idl
new file mode 100644 (file)
index 0000000..7e8c1b8
--- /dev/null
@@ -0,0 +1,107 @@
+// Copyright (C) 2011-2020  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, 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
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+
+// Remarques :
+// L'ordre de description des fonctions est le meme dans tous les fichiers
+// HOMARD_aaaa.idl, HOMARD_aaaa.hxx, HOMARD_aaaa.cxx, HOMARD_aaaa_i.hxx, HOMARD_aaaa_i.cxx :
+// 1. Les generalites : Name, Delete, DumpPython, Dump, Restore
+// 2. Les caracteristiques
+// 3. Le lien avec les autres structures
+//
+// Quand les 2 fonctions Setxxx et Getxxx sont presentes, Setxxx est decrit en premier
+//
+
+#ifndef _HOMARD_CAS_IDL
+#define _HOMARD_CAS_IDL
+
+#include "SALOME_Component.idl"
+#include "SALOME_Exception.idl"
+#include "SALOMEDS.idl"
+
+#include "HOMARD_Iteration.idl"
+#include "HOMARD_YACS.idl"
+
+module HOMARD
+{
+ typedef sequence<double> extrema ;
+ typedef sequence<string> ListGroupType ;
+ typedef sequence<string> ListBoundaryGroupType ;
+
+
+ interface HOMARD_Cas : Engines::EngineComponent
+  {
+// Generalites
+    void     SetName(in string Name)                       raises (SALOME::SALOME_Exception);
+    string   GetName()                                     raises (SALOME::SALOME_Exception);
+
+    long     Delete(in long Option)                        raises (SALOME::SALOME_Exception);
+
+    string   GetDumpPython()                               raises (SALOME::SALOME_Exception);
+
+// Caracteristiques
+    void     SetDirName(in string NomDir)                  raises (SALOME::SALOME_Exception);
+    string   GetDirName()                                  raises (SALOME::SALOME_Exception);
+
+    long     GetState()                                    raises (SALOME::SALOME_Exception);
+
+    long     GetNumberofIter()                             raises (SALOME::SALOME_Exception);
+
+    void     SetConfType(in long ConfType)                 raises (SALOME::SALOME_Exception);
+    long     GetConfType()                                 raises (SALOME::SALOME_Exception);
+
+    void     SetExtType(in long ExtType)                   raises (SALOME::SALOME_Exception);
+    long     GetExtType()                                  raises (SALOME::SALOME_Exception);
+
+    void     SetBoundingBox(in extrema LesExtremes)        raises (SALOME::SALOME_Exception);
+    extrema  GetBoundingBox()                              raises (SALOME::SALOME_Exception);
+
+    void     AddGroup(in string Group)                     raises (SALOME::SALOME_Exception);
+    void     SetGroups(in ListGroupType ListGroup)         raises (SALOME::SALOME_Exception);
+    ListGroupType GetGroups()                              raises (SALOME::SALOME_Exception);
+
+    void     AddBoundary(in string BoundaryName)           raises (SALOME::SALOME_Exception);
+    void     AddBoundaryGroup(in string BoundaryName, in string Group)
+                                                           raises (SALOME::SALOME_Exception);
+    ListBoundaryGroupType GetBoundaryGroup()               raises (SALOME::SALOME_Exception);
+    void     SupprBoundaryGroup()                          raises (SALOME::SALOME_Exception);
+
+    void     SetPyram(in long Pyram)                       raises (SALOME::SALOME_Exception);
+    long     GetPyram()                                    raises (SALOME::SALOME_Exception);
+
+    void     MeshInfo(in long Qual, in long Diam, in long Conn, in long Tail, in long Inte)
+                                                           raises (SALOME::SALOME_Exception);
+
+// Liens avec les autres structures
+    string   GetIter0Name ()                               raises (SALOME::SALOME_Exception);
+    HOMARD_Iteration GetIter0 ()                           raises (SALOME::SALOME_Exception);
+
+    HOMARD_Iteration NextIteration(in string IterName)     raises (SALOME::SALOME_Exception);
+
+    HOMARD_Iteration LastIteration()                       raises (SALOME::SALOME_Exception);
+
+    void     AddIteration (in string IterName)             raises (SALOME::SALOME_Exception);
+
+// YACS
+    HOMARD_YACS CreateYACSSchema(in string YACSName, in string ScriptFile, in string DirName, in string MeshFile)
+                                                           raises (SALOME::SALOME_Exception);
+
+
+  };
+};
+#endif
diff --git a/idl/HOMARD_Gen.idl b/idl/HOMARD_Gen.idl
new file mode 100644 (file)
index 0000000..6571e5b
--- /dev/null
@@ -0,0 +1,233 @@
+// Copyright (C) 2011-2020  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, 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
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+
+#ifndef __HOMARD_GEN__
+#define __HOMARD_GEN__
+
+#include "SALOME_Component.idl"
+#include "SALOME_Exception.idl"
+#include "SALOMEDS.idl"
+
+#include "HOMARD_Cas.idl"
+#include "HOMARD_Hypothesis.idl"
+#include "HOMARD_Iteration.idl"
+#include "HOMARD_Zone.idl"
+#include "HOMARD_Boundary.idl"
+#include "HOMARD_YACS.idl"
+
+module HOMARD
+{
+  typedef sequence<string> listeHypotheses;
+  typedef sequence<string> listeZones;
+  typedef sequence<string> listeIterations;
+  typedef sequence<string> listeCases;
+  typedef sequence<string> listeBoundarys;
+  typedef sequence<string> listeYACSs;
+
+  interface HOMARD_Gen : Engines::EngineComponent, SALOMEDS::Driver
+  {
+//
+// A. Les methodes qui suivent sont celles que l'on retrouvera dans
+//    le fichier resources/HOMARDCatalog.xml.in pour definir le composant HOMARD dans YACS
+//    A priori, ce sont les seules sont l'utilisateur doit connaitre l'existence.
+//    ATTENTION : si les noms des arguments changent dans les Createxxxx, il faudra les changer
+//                dans YACSDriver pour assurer la coherence
+//
+// A.1. Les creations
+//
+    HOMARD_Boundary   CreateBoundaryCAO (in string BoundaryName, in string FileName)
+    raises(SALOME::SALOME_Exception);
+    HOMARD_Boundary   CreateBoundaryDi (in string BoundaryName, in string MeshName, in string FileName)
+    raises(SALOME::SALOME_Exception);
+    HOMARD_Boundary   CreateBoundaryCylinder (in string BoundaryName,
+                                      in double Xcentre, in double Ycentre, in double Zcentre,
+                                      in double Xaxis, in double Yaxis, in double Zaxis,
+                                      in double Radius)
+    raises (SALOME::SALOME_Exception);
+    HOMARD_Boundary   CreateBoundarySphere (in string BoundaryName,
+                                      in double Xcentre, in double Ycentre, in double Zcentre,
+                                      in double Radius)
+    raises(SALOME::SALOME_Exception);
+    HOMARD_Boundary   CreateBoundaryConeR (in string BoundaryName,
+                                      in double Xcentre1, in double Ycentre1, in double Zcentre1, in double Radius1,
+                                      in double Xcentre2, in double Ycentre2, in double Zcentre2, in double Radius2)
+    raises(SALOME::SALOME_Exception);
+    HOMARD_Boundary   CreateBoundaryConeA (in string BoundaryName,
+                                      in double Xaxis, in double Yaxis, in double Zaxis, in double Angle,
+                                      in double Xcentre, in double Ycentre, in double Zcentre)
+    raises(SALOME::SALOME_Exception);
+    HOMARD_Boundary   CreateBoundaryTorus (in string BoundaryName,
+                                      in double Xcentre, in double Ycentre, in double Zcentre,
+                                      in double Xaxis, in double Yaxis, in double Zaxis,
+                                      in double RadiusRev, in double RadiusPri)
+    raises (SALOME::SALOME_Exception);
+    HOMARD_Cas        CreateCase(in string CaseName, in string MeshName, in string FileName )
+    raises(SALOME::SALOME_Exception);
+    HOMARD_Cas        CreateCaseFromIteration(in string CaseName, in string DirNameStart )
+    raises(SALOME::SALOME_Exception);
+    HOMARD_Cas        CreateCaseFromCaseLastIteration(in string CaseName, in string DirNameStart )
+    raises(SALOME::SALOME_Exception);
+    HOMARD_Cas        CreateCaseFromCaseIteration(in string CaseName, in string DirNameStart, in long Number )
+    raises(SALOME::SALOME_Exception);
+    HOMARD_Hypothesis CreateHypothesis(in string HypoName )
+    raises(SALOME::SALOME_Exception);
+    HOMARD_Zone       CreateZoneBox (in string ZoneName,
+                                     in double Xmini, in double Xmaxi,
+                                     in double Ymini, in double Ymaxi,
+                                     in double Zmini, in double Zmaxi)
+    raises(SALOME::SALOME_Exception);
+    HOMARD_Zone       CreateZoneBox2D (in string ZoneName,
+                                       in double Umini, in double Umaxi,
+                                       in double Vmini, in double Vmaxi,
+                                       in long Orient)
+    raises(SALOME::SALOME_Exception);
+    HOMARD_Zone       CreateZoneCylinder (in string ZoneName,
+                                          in double Xcentre, in double Ycentre, in double Zcentre,
+                                          in double Xaxis, in double Yaxis, in double Zaxis,
+                                          in double Radius, in double Height)
+    raises(SALOME::SALOME_Exception);
+    HOMARD_Zone       CreateZoneDisk (in string ZoneName,
+                                      in double Ucentre, in double Vcentre,
+                                      in double Radius, in long Orient)
+    raises(SALOME::SALOME_Exception);
+    HOMARD_Zone       CreateZoneDiskWithHole (in string ZoneName,
+                                              in double Ucentre, in double Vcentre,
+                                              in double Radius, in double InternalRadius,
+                                              in long Orient)
+    raises(SALOME::SALOME_Exception);
+    HOMARD_Zone       CreateZonePipe (in string ZoneName,
+                                      in double Xcentre, in double Ycentre, in double Zcentre,
+                                      in double Xaxis, in double Yaxis, in double Zaxis,
+                                      in double Radius, in double Height, in double InternalRadius)
+    raises(SALOME::SALOME_Exception);
+    HOMARD_Zone       CreateZoneSphere (in string ZoneName,
+                                        in double Xcentre, in double Ycentre, in double Zcentre,
+                                        in double Radius)
+    raises(SALOME::SALOME_Exception);
+//
+// A.2. Les informations
+//
+    HOMARD_Boundary   GetBoundary(in string BoundaryName)  raises (SALOME::SALOME_Exception);
+    HOMARD_Cas        GetCase(in string CaseName)          raises (SALOME::SALOME_Exception);
+    HOMARD_Hypothesis GetHypothesis(in string HypoName)    raises (SALOME::SALOME_Exception);
+    HOMARD_Iteration  GetIteration(in string IterName)     raises (SALOME::SALOME_Exception);
+    HOMARD_YACS       GetYACS(in string YACSName)          raises (SALOME::SALOME_Exception);
+    HOMARD_Zone       GetZone(in string ZoneName)          raises (SALOME::SALOME_Exception);
+
+    listeBoundarys  GetAllBoundarysName()                  raises (SALOME::SALOME_Exception);
+    listeCases      GetAllCasesName()                      raises (SALOME::SALOME_Exception);
+    listeHypotheses GetAllHypothesesName()                 raises (SALOME::SALOME_Exception);
+    listeIterations GetAllIterationsName()                 raises (SALOME::SALOME_Exception);
+    listeYACSs      GetAllYACSsName()                      raises (SALOME::SALOME_Exception);
+    listeZones      GetAllZonesName()                      raises (SALOME::SALOME_Exception);
+
+    void MeshInfo(in string CaseName, in string MeshName, in string FileName,  in string DirName, in long Qual, in long Diam, in long Conn, in long Tail, in long Inte )
+    raises(SALOME::SALOME_Exception);
+
+    HOMARD_Iteration LastIteration(in string CaseName)     raises (SALOME::SALOME_Exception);
+//
+// A.3. L'etude
+//
+    void UpdateStudy()      raises (SALOME::SALOME_Exception);
+//
+// A.4. Les caracteristiques generales
+//
+    void SetLanguageShort (in string LanguageShort)        raises (SALOME::SALOME_Exception);
+    string GetLanguageShort ()                             raises (SALOME::SALOME_Exception);
+//
+// B. Les methodes qui suivent n'apparaissent pas dans le composant HOMARD dans YACS
+//    L'utilisateur ne devrait pas les connaitre (ni s'en servir, a fortiori)
+//
+    HOMARD_Iteration CreateIteration(in string IterName, in string PreviousIterName )
+    raises(SALOME::SALOME_Exception);
+//
+    void InvalideBoundary (in string BoundaryName)         raises (SALOME::SALOME_Exception);
+    void InvalideHypo (in string HypoName)                 raises (SALOME::SALOME_Exception);
+    void InvalideIter (in string IterName)                 raises (SALOME::SALOME_Exception);
+    void InvalideIterOption (in string IterName, in long Option)
+    raises(SALOME::SALOME_Exception);
+    void InvalideYACS (in string YacsName)                 raises (SALOME::SALOME_Exception);
+    void InvalideZone (in string ZoneName)                 raises (SALOME::SALOME_Exception);
+
+    long DeleteBoundary (in string BoundaryName)           raises (SALOME::SALOME_Exception);
+    long DeleteCase(in string CaseName, in long Option)
+    raises(SALOME::SALOME_Exception);
+    long DeleteHypo(in string HypoName)                    raises (SALOME::SALOME_Exception);
+    long DeleteIteration(in string IterName, in long Option)
+    raises(SALOME::SALOME_Exception);
+    long DeleteIterationOption(in string IterName, in long Option1, in long Option2)
+    raises(SALOME::SALOME_Exception);
+    long DeleteYACS(in string YacsName, in long Option)    raises (SALOME::SALOME_Exception);
+    long DeleteZone (in string ZoneName)                   raises (SALOME::SALOME_Exception);
+//
+    void AssociateIterHypo(in string IterName, in string HypoName)
+    raises(SALOME::SALOME_Exception);
+
+//
+    void AssociateHypoZone(in string HypoName, in string ZoneName, in long TypeUse)
+    raises(SALOME::SALOME_Exception);
+    void DissociateHypoZone(in string HypoName, in string ZoneName)
+    raises(SALOME::SALOME_Exception);
+
+    long Compute (in string IterName, in long CleanOption, in long modeHOMARD, in long Option1, in long Option2)
+    raises(SALOME::SALOME_Exception);
+
+//
+    string CreateDirNameIter(in string NomDir, in long option )
+    raises(SALOME::SALOME_Exception);
+
+    string VerifieDir (in string NomDir)                   raises (SALOME::SALOME_Exception);
+
+//
+    void PublishFileUnderIteration(in string IterName, in string FileName, in string Comment)
+    raises(SALOME::SALOME_Exception);
+    void PublishBoundaryUnderCase(in string CaseName, in string BoundaryName)
+    raises(SALOME::SALOME_Exception);
+    void PublishResultInSmesh(in string FileName, in long Option)
+    raises(SALOME::SALOME_Exception);
+    void PublishMeshIterInSmesh (in string IterName)       raises(SALOME::SALOME_Exception);
+
+//
+
+//
+//  La creation des schemas YACS
+    HOMARD_YACS CreateYACSSchema(in string YACSName, in string CaseName, in string ScriptFile, in string DirName, in string MeshFile)
+    raises(SALOME::SALOME_Exception);
+    long YACSWrite (in string YACSName)                    raises (SALOME::SALOME_Exception);
+    long YACSWriteOnFile (in string YACSName, in string YACSFile)
+    raises(SALOME::SALOME_Exception);
+
+//
+//  Les preferences
+    void SetPublisMesh (in long PublisMeshIN, in long PublisMeshOUT)
+    raises (SALOME::SALOME_Exception);
+    long GetPublisMeshIN ()                                raises (SALOME::SALOME_Exception);
+    long GetPublisMeshOUT ()                               raises (SALOME::SALOME_Exception);
+    void SetYACSMaximum(in long YACSMaxIter, in long YACSMaxNode, in long YACSMaxElem)
+    raises (SALOME::SALOME_Exception);
+    long GetYACSMaxIter()                                  raises (SALOME::SALOME_Exception);
+    long GetYACSMaxNode()                                  raises (SALOME::SALOME_Exception);
+    long GetYACSMaxElem()                                  raises (SALOME::SALOME_Exception);
+    void SetYACSConvergenceType(in long TypeTest)          raises (SALOME::SALOME_Exception);
+    long GetYACSConvergenceType()                          raises (SALOME::SALOME_Exception);
+  };
+};
+
+#endif
+
diff --git a/idl/HOMARD_Hypothesis.idl b/idl/HOMARD_Hypothesis.idl
new file mode 100644 (file)
index 0000000..7a95111
--- /dev/null
@@ -0,0 +1,136 @@
+// Copyright (C) 2011-2020  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, 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
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+
+// Remarques :
+// L'ordre de description des fonctions est le meme dans tous les fichiers
+// HOMARD_aaaa.idl, HOMARD_aaaa.hxx, HOMARD_aaaa.cxx, HOMARD_aaaa_i.hxx, HOMARD_aaaa_i.cxx :
+// 1. Les generalites : Name, Delete, DumpPython, Dump, Restore
+// 2. Les caracteristiques
+// 3. Le lien avec les autres structures
+//
+// Quand les 2 fonctions Setxxx et Getxxx sont presentes, Setxxx est decrit en premier
+//
+
+#ifndef _HOMARD_HYPOTHESIS_IDL
+#define _HOMARD_HYPOTHESIS_IDL
+
+#include "SALOME_Component.idl"
+#include "SALOME_Exception.idl"
+#include "SALOMEDS.idl"
+
+#include "HOMARD_Cas.idl"
+
+module HOMARD
+{
+  typedef sequence<string> listeZonesHypo ;
+  typedef sequence<string> listeIters ;
+  typedef sequence<string> listeComposantsHypo ;
+  typedef sequence<long>   listeTypes ;
+  typedef sequence<string> listeFieldInterpsHypo ;
+
+  struct InfosHypo
+  {
+      string FieldName;
+      long UsCmpI;
+      long UsField;
+      long TypeThR;
+      double ThreshR;
+      long TypeThC;
+      double ThreshC;
+  };
+
+  interface HOMARD_Hypothesis : Engines::EngineComponent
+  {
+// Generalites
+    void     SetName(in string Name)                       raises (SALOME::SALOME_Exception);
+    string   GetName()                                     raises (SALOME::SALOME_Exception);
+
+    long     Delete()                                      raises (SALOME::SALOME_Exception);
+
+    string   GetDumpPython()                               raises (SALOME::SALOME_Exception);
+
+// Caracteristiques
+    void     SetUnifRefinUnRef(in long RaffDera)           raises (SALOME::SALOME_Exception);
+    listeTypes GetAdapRefinUnRef()                         raises (SALOME::SALOME_Exception);
+    long     GetAdapType()                                 raises (SALOME::SALOME_Exception);
+    long     GetRefinType()                                raises (SALOME::SALOME_Exception);
+    long     GetUnRefType()                                raises (SALOME::SALOME_Exception);
+
+    void     SetField(in string FieldName)                 raises (SALOME::SALOME_Exception);
+    string   GetFieldName()                                raises (SALOME::SALOME_Exception);
+    void     SetUseField(in long UsField)                  raises (SALOME::SALOME_Exception);
+    InfosHypo GetField()                                   raises (SALOME::SALOME_Exception);
+
+    void     SetUseComp(in long UsCmpI)                    raises (SALOME::SALOME_Exception);
+    void     AddComp(in string NomComp)                    raises (SALOME::SALOME_Exception);
+    void     SupprComp(in string NomComp)                  raises (SALOME::SALOME_Exception);
+    void     SupprComps()                                  raises (SALOME::SALOME_Exception);
+    listeComposantsHypo GetComps()                         raises (SALOME::SALOME_Exception);
+
+    void     SetRefinThr(in long TypeThR, in double ThreshR)
+                                                           raises (SALOME::SALOME_Exception);
+    long     GetRefinThrType()                             raises (SALOME::SALOME_Exception);
+    void     SetUnRefThr(in long TypeThC, in double ThreshC)
+                                                           raises (SALOME::SALOME_Exception);
+    long     GetUnRefThrType()                             raises (SALOME::SALOME_Exception);
+
+    void     SetNivMax(in long NivMax)                     raises (SALOME::SALOME_Exception);
+    long     GetNivMax()                                   raises (SALOME::SALOME_Exception);
+
+    void     SetDiamMin(in double DiamMin)                 raises (SALOME::SALOME_Exception);
+    double   GetDiamMin()                                  raises (SALOME::SALOME_Exception);
+
+    void     SetAdapInit(in long AdapInit)                 raises (SALOME::SALOME_Exception);
+    long     GetAdapInit()                                 raises (SALOME::SALOME_Exception);
+
+    void     SetExtraOutput(in long ExtraOutput)           raises (SALOME::SALOME_Exception);
+    long     GetExtraOutput()                              raises (SALOME::SALOME_Exception);
+
+    void     AddGroup(in string LeGroupe)                  raises (SALOME::SALOME_Exception);
+    void     SupprGroup(in string LeGroupe)                raises (SALOME::SALOME_Exception);
+    void     SupprGroups()                                 raises (SALOME::SALOME_Exception);
+    void     SetGroups(in ListGroupType ListGroup)         raises (SALOME::SALOME_Exception);
+    ListGroupType GetGroups()                              raises (SALOME::SALOME_Exception);
+
+    void     SetTypeFieldInterp(in long TypeFieldInterp)   raises (SALOME::SALOME_Exception);
+    long     GetTypeFieldInterp()                          raises (SALOME::SALOME_Exception);
+    void     AddFieldInterp(in string FieldInterp)         raises (SALOME::SALOME_Exception);
+    void     AddFieldInterpType(in string FieldInterp, in long TypeInterp)
+                                                           raises (SALOME::SALOME_Exception);
+    void     SupprFieldInterp(in string FieldInterp)       raises (SALOME::SALOME_Exception);
+    void     SupprFieldInterps()                           raises (SALOME::SALOME_Exception);
+    listeFieldInterpsHypo GetFieldInterps()                raises (SALOME::SALOME_Exception);
+
+// Liens avec les autres structures
+    void     SetCaseCreation(in string NomCas)             raises (SALOME::SALOME_Exception);
+    string   GetCaseCreation()                             raises (SALOME::SALOME_Exception);
+
+    void     LinkIteration(in string NomIteration)         raises (SALOME::SALOME_Exception);
+    void     UnLinkIteration(in string NomIteration)       raises (SALOME::SALOME_Exception);
+    listeIters GetIterations()                             raises (SALOME::SALOME_Exception);
+
+    void     AddZone(in string NomZone, in long TypeUse)   raises (SALOME::SALOME_Exception);
+    void     AddZone0(in string NomZone, in long TypeUse)  raises (SALOME::SALOME_Exception);
+    void     SupprZone(in string NomZone)                  raises (SALOME::SALOME_Exception);
+    void     SupprZones()                                  raises (SALOME::SALOME_Exception);
+    listeZonesHypo GetZones()                              raises (SALOME::SALOME_Exception);
+
+  };
+};
+#endif
diff --git a/idl/HOMARD_Iteration.idl b/idl/HOMARD_Iteration.idl
new file mode 100644 (file)
index 0000000..f33918c
--- /dev/null
@@ -0,0 +1,130 @@
+// Copyright (C) 2011-2020  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, 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
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+
+// Remarques :
+// L'ordre de description des fonctions est le meme dans tous les fichiers
+// HOMARD_aaaa.idl, HOMARD_aaaa.hxx, HOMARD_aaaa.cxx, HOMARD_aaaa_i.hxx, HOMARD_aaaa_i.cxx :
+// 1. Les generalites : Name, Delete, DumpPython, Dump, Restore
+// 2. Les caracteristiques
+// 3. Le lien avec les autres structures
+//
+// Quand les 2 fonctions Setxxx et Getxxx sont presentes, Setxxx est decrit en premier
+//
+
+#ifndef _HOMARD_ITERATION_IDL
+#define _HOMARD_ITERATION_IDL
+
+#include "SALOME_Component.idl"
+#include "SALOME_Exception.idl"
+#include "SALOMEDS.idl"
+
+module HOMARD
+{
+  typedef sequence<string> listeIterFilles ;
+  typedef sequence<string> listeFieldInterpsIter ;
+  typedef sequence<string> listeFieldInterpTSRsIter ;
+
+  interface HOMARD_Iteration : Engines::EngineComponent
+  {
+// Generalites
+    void     SetName(in string Name)                       raises (SALOME::SALOME_Exception);
+    string   GetName()                                     raises (SALOME::SALOME_Exception);
+
+    long     Delete(in long Option)                        raises (SALOME::SALOME_Exception);
+
+    string   GetDumpPython()                               raises (SALOME::SALOME_Exception);
+
+// Caracteristiques
+    void     SetDirNameLoc(in string NomDir)               raises (SALOME::SALOME_Exception);
+    string   GetDirNameLoc()                               raises (SALOME::SALOME_Exception);
+
+    string   GetDirName()                                  raises (SALOME::SALOME_Exception);
+
+    void     SetNumber(in long NumIter)                    raises (SALOME::SALOME_Exception);
+    long     GetNumber()                                   raises (SALOME::SALOME_Exception);
+
+    void     SetState(in long State)                       raises (SALOME::SALOME_Exception);
+    long     GetState()                                    raises (SALOME::SALOME_Exception);
+
+    void     SetMeshName(in string NomMesh)                raises (SALOME::SALOME_Exception);
+    string   GetMeshName()                                 raises (SALOME::SALOME_Exception);
+
+    void     SetMeshFile(in string MeshFile)               raises (SALOME::SALOME_Exception);
+    string   GetMeshFile()                                 raises (SALOME::SALOME_Exception);
+
+    void     SetFieldFile(in string FieldFile)             raises (SALOME::SALOME_Exception);
+    string   GetFieldFile()                                raises (SALOME::SALOME_Exception);
+
+// Instants pour le champ de pilotage
+    void     SetTimeStep(in long TimeStep)                 raises (SALOME::SALOME_Exception);
+    void     SetTimeStepRank(in long TimeStep, in long Rank)
+                                                           raises (SALOME::SALOME_Exception);
+    void     SetTimeStepRankLast()                         raises (SALOME::SALOME_Exception);
+    long     GetTimeStep()                                 raises (SALOME::SALOME_Exception);
+    long     GetRank()                                     raises (SALOME::SALOME_Exception);
+
+// Instants pour un champ a interpoler
+    void     SetFieldInterpTimeStep(in string FieldInterp, in long TimeStep)
+                                                           raises (SALOME::SALOME_Exception);
+    void     SetFieldInterpTimeStepRank(in string FieldInterp, in long TimeStep, in long Rank)
+                                                           raises (SALOME::SALOME_Exception);
+    listeFieldInterpTSRsIter GetFieldInterpsTimeStepRank() raises (SALOME::SALOME_Exception);
+    void     SetFieldInterp(in string FieldInterp)         raises (SALOME::SALOME_Exception);
+    listeFieldInterpsIter GetFieldInterps()                raises (SALOME::SALOME_Exception);
+    void     SupprFieldInterps()                           raises (SALOME::SALOME_Exception);
+
+// Fichier des messages
+    void     SetLogFile(in string LogFile)                 raises (SALOME::SALOME_Exception);
+    string   GetLogFile()                                  raises (SALOME::SALOME_Exception);
+
+    long     Compute(in long etatMenage, in long Option)   raises (SALOME::SALOME_Exception);
+
+    void     MeshInfo(in long Qual, in long Diam, in long Conn, in long Tail, in long Inte)
+                                                           raises (SALOME::SALOME_Exception);
+    void     MeshInfoOption(in long Qual, in long Diam, in long Conn, in long Tail, in long Inte, in long Option)
+                                                           raises (SALOME::SALOME_Exception);
+
+    void     SetFileInfo(in string FileInfo)               raises (SALOME::SALOME_Exception);
+    string   GetFileInfo()                                 raises (SALOME::SALOME_Exception);
+
+// Liens avec les autres iterations
+    HOMARD_Iteration NextIteration(in string NomIter)      raises (SALOME::SALOME_Exception);
+
+    void     LinkNextIteration(in string NomIter)          raises (SALOME::SALOME_Exception);
+    void     UnLinkNextIteration(in string NomIter)        raises (SALOME::SALOME_Exception);
+    listeIterFilles GetIterations()                        raises (SALOME::SALOME_Exception);
+
+    void     SetIterParentName(in string NomIterParent)    raises (SALOME::SALOME_Exception);
+    string   GetIterParentName()                           raises (SALOME::SALOME_Exception);
+    HOMARD_Iteration GetIterParent()                       raises (SALOME::SALOME_Exception);
+
+// Liens avec les autres structures
+    void     SetCaseName(in string NomCas)                 raises (SALOME::SALOME_Exception);
+    string   GetCaseName()                                 raises (SALOME::SALOME_Exception);
+
+    void     AssociateHypo(in string NomHypo)              raises (SALOME::SALOME_Exception);
+    void     SetHypoName(in string NomHypo)                raises (SALOME::SALOME_Exception);
+    string   GetHypoName()                                 raises (SALOME::SALOME_Exception);
+
+// Divers
+    void     SetInfoCompute(in long MessInfo)              raises (SALOME::SALOME_Exception);
+    long     GetInfoCompute()                              raises (SALOME::SALOME_Exception);
+  };
+};
+#endif
diff --git a/idl/HOMARD_YACS.idl b/idl/HOMARD_YACS.idl
new file mode 100644 (file)
index 0000000..29e27cb
--- /dev/null
@@ -0,0 +1,87 @@
+// Copyright (C) 2011-2020  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, 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
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+
+// Remarques :
+// L'ordre de description des fonctions est le meme dans tous les fichiers
+// HOMARD_aaaa.idl, HOMARD_aaaa.hxx, HOMARD_aaaa.cxx, HOMARD_aaaa_i.hxx, HOMARD_aaaa_i.cxx :
+// 1. Les generalites : Name, Delete, DumpPython, Dump, Restore
+// 2. Les caracteristiques
+// 3. Le lien avec les autres structures
+//
+// Quand les 2 fonctions Setxxx et Getxxx sont presentes, Setxxx est decrit en premier
+//
+
+#ifndef _HOMARD_YACS_IDL
+#define _HOMARD_YACS_IDL
+
+#include "SALOME_Component.idl"
+#include "SALOME_Exception.idl"
+#include "SALOMEDS.idl"
+
+module HOMARD
+{
+  interface HOMARD_YACS : Engines::EngineComponent
+  {
+// Generalites
+    void     SetName(in string Name)                       raises (SALOME::SALOME_Exception);
+    string   GetName()                                     raises (SALOME::SALOME_Exception);
+
+    long     Delete(in long Option)                        raises (SALOME::SALOME_Exception);
+
+    string   GetDumpPython()                               raises (SALOME::SALOME_Exception);
+
+// Caracteristiques
+    void     SetType (in long Type)                        raises (SALOME::SALOME_Exception);
+    long     GetType()                                     raises (SALOME::SALOME_Exception);
+
+    void     SetMaxIter (in long MaxIter)                  raises (SALOME::SALOME_Exception);
+    long     GetMaxIter()                                  raises (SALOME::SALOME_Exception);
+    void     SetMaxNode (in long MaxNode)                  raises (SALOME::SALOME_Exception);
+    long     GetMaxNode()                                  raises (SALOME::SALOME_Exception);
+    void     SetMaxElem (in long MaxElem)                  raises (SALOME::SALOME_Exception);
+    long     GetMaxElem()                                  raises (SALOME::SALOME_Exception);
+
+    void     SetTestConvergence (in long TypeTest, in double VRef)
+                                                           raises (SALOME::SALOME_Exception);
+    long     GetTestConvergenceType()                      raises (SALOME::SALOME_Exception);
+    double   GetTestConvergenceVRef()                      raises (SALOME::SALOME_Exception);
+
+    void     SetDirName(in string NomDir)                  raises (SALOME::SALOME_Exception);
+    string   GetDirName()                                  raises (SALOME::SALOME_Exception);
+
+    void     SetMeshFile(in string MeshFile)               raises (SALOME::SALOME_Exception);
+    string   GetMeshFile()                                 raises (SALOME::SALOME_Exception);
+
+    void     SetScriptFile(in string ScriptFile)           raises (SALOME::SALOME_Exception);
+    string   GetScriptFile()                               raises (SALOME::SALOME_Exception);
+
+    void     SetXMLFile(in string XMLFile)                 raises (SALOME::SALOME_Exception);
+    string   GetXMLFile()                                  raises (SALOME::SALOME_Exception);
+
+    long     Write()                                       raises (SALOME::SALOME_Exception);
+    long     WriteOnFile( in string YACSFile )             raises (SALOME::SALOME_Exception);
+
+// Liens avec les autres structures
+    void     SetCaseName(in string NomCas)                 raises (SALOME::SALOME_Exception);
+    string   GetCaseName()                                 raises (SALOME::SALOME_Exception);
+
+// Divers
+  };
+};
+#endif
diff --git a/idl/HOMARD_Zone.idl b/idl/HOMARD_Zone.idl
new file mode 100644 (file)
index 0000000..7a5d3ea
--- /dev/null
@@ -0,0 +1,83 @@
+// Copyright (C) 2011-2020  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, 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
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+
+// Remarques :
+// L'ordre de description des fonctions est le meme dans tous les fichiers
+// HOMARD_aaaa.idl, HOMARD_aaaa.hxx, HOMARD_aaaa.cxx, HOMARD_aaaa_i.hxx, HOMARD_aaaa_i.cxx :
+// 1. Les generalites : Name, Delete, DumpPython, Dump, Restore
+// 2. Les caracteristiques
+// 3. Le lien avec les autres structures
+//
+// Quand les 2 fonctions Setxxx et Getxxx sont presentes, Setxxx est decrit en premier
+//
+
+#ifndef _HOMARD_Zone_IDL
+#define _HOMARD_Zone_IDL
+
+#include "SALOME_Component.idl"
+#include "SALOME_Exception.idl"
+#include "SALOMEDS.idl"
+
+module HOMARD
+{
+  typedef sequence<double    > double_array ;
+  typedef sequence<string    > listeHypo ;
+
+  interface HOMARD_Zone : Engines::EngineComponent
+  {
+// Generalites
+    void     SetName(in string Name)                       raises (SALOME::SALOME_Exception);
+    string   GetName()                                     raises (SALOME::SALOME_Exception);
+
+    long     Delete()                                      raises (SALOME::SALOME_Exception);
+
+    string   GetDumpPython()                               raises (SALOME::SALOME_Exception);
+
+// Caracteristiques
+    void     SetType (in long Type)                        raises (SALOME::SALOME_Exception);
+    long     GetType()                                     raises (SALOME::SALOME_Exception);
+
+    void     SetBox    (in double Xmini, in double Xmaxi, in double Ymini,
+                        in double Ymaxi, in double Zmini, in double Zmaxi)
+                                                           raises (SALOME::SALOME_Exception);
+    void     SetCylinder (in double Xcentre, in double Ycentre, in double Zcentre,
+                          in double Xaxis, in double Yaxis, in double Zaxis,
+                          in double Rayon, in double Haut)
+                                                           raises (SALOME::SALOME_Exception);
+    void     SetPipe( in double Xcentre, in double Ycentre, in double ZCentre,
+                      in double Xaxis, in double Yaxis, in double Zaxis,
+                      in double Rayon, in double Haut, in double Rayonint )
+                                                           raises (SALOME::SALOME_Exception);
+    void     SetSphere (in double Xcentre, in double Ycentre, in double Zcentre, in double rayon)
+                                                           raises (SALOME::SALOME_Exception);
+
+    double_array GetCoords()                               raises (SALOME::SALOME_Exception);
+
+    void     SetLimit (in double Xincr, in double Yincr, in double Zincr)
+                                                           raises (SALOME::SALOME_Exception);
+    double_array GetLimit()                                raises (SALOME::SALOME_Exception);
+
+// Liens avec les autres structures
+    void     AddHypo(in string NomHypo)                    raises (SALOME::SALOME_Exception);
+    listeHypo GetHypo()                                    raises (SALOME::SALOME_Exception);
+    void     SupprHypo(in string NomHypo)                  raises (SALOME::SALOME_Exception);
+
+  };
+};
+#endif