1 // Copyright (C) 2011 CEA/DEN, EDF R&D
3 // This library is free software; you can redistribute it and/or
4 // modify it under the terms of the GNU Lesser General Public
5 // License as published by the Free Software Foundation; either
6 // version 2.1 of the License.
8 // This library is distributed in the hope that it will be useful,
9 // but WITHOUT ANY WARRANTY; without even the implied warranty of
10 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 // Lesser General Public License for more details.
13 // You should have received a copy of the GNU Lesser General Public
14 // License along with this library; if not, write to the Free Software
15 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
20 #ifndef __HOMARD_GEN__
21 #define __HOMARD_GEN__
23 #include "SALOME_Component.idl"
24 #include "SALOME_Exception.idl"
25 #include "SALOMEDS.idl"
27 #include "HOMARD_Cas.idl"
28 #include "HOMARD_Hypothesis.idl"
29 #include "HOMARD_Iteration.idl"
30 #include "HOMARD_Zone.idl"
31 #include "HOMARD_Boundary.idl"
35 typedef sequence<string> listeHypotheses;
36 typedef sequence<string> listeZones;
37 typedef sequence<string> listeIterations;
38 typedef sequence<string> listeCases;
39 typedef sequence<string> listeBoundarys;
41 interface HOMARD_Gen : Engines::EngineComponent, SALOMEDS::Driver
43 HOMARD_Cas CreateCase(in string nomCas, in string MeshName, in string FileName )
44 raises (SALOME::SALOME_Exception);
45 HOMARD_Hypothesis CreateHypothesis(in string nomHypothesis )
46 raises (SALOME::SALOME_Exception);
47 HOMARD_Iteration CreateIteration(in string nomIter, in string nomIterParent )
48 raises (SALOME::SALOME_Exception);
49 HOMARD_Zone CreateZoneBox (in string nomZone,
50 in double Xmini, in double Xmaxi,
51 in double Ymini, in double Ymaxi,
52 in double Zmini, in double Zmaxi)
53 raises (SALOME::SALOME_Exception);
54 HOMARD_Zone CreateZoneSphere (in string nomZone,
55 in double Xcentre, in double Ycentre, in double Zcentre,
57 raises (SALOME::SALOME_Exception);
58 HOMARD_Zone CreateZoneCylinder (in string nomZone,
59 in double Xcentre, in double Ycentre, in double Zcentre,
60 in double Xaxe, in double Yaxe, in double Zaxe,
61 in double Rayon, in double Haut)
62 raises (SALOME::SALOME_Exception);
63 HOMARD_Zone CreateZonePipe (in string nomZone,
64 in double Xcentre, in double Ycentre, in double Zcentre,
65 in double Xaxe, in double Yaxe, in double Zaxe,
66 in double Rayon, in double Haut, in double Rayonint)
67 raises (SALOME::SALOME_Exception);
68 HOMARD_Zone CreateZoneBox2D (in string nomZone,
69 in double Umini, in double Umaxi,
70 in double Vmini, in double Vmaxi,
72 raises (SALOME::SALOME_Exception);
73 HOMARD_Zone CreateZoneDisk (in string nomZone,
74 in double Ucentre, in double Vcentre,
75 in double Rayon, in long Orient)
76 raises (SALOME::SALOME_Exception);
77 HOMARD_Zone CreateZoneDiskWithHole (in string nomZone,
78 in double Ucentre, in double Vcentre,
79 in double Rayon, in double Rayonint,
81 raises (SALOME::SALOME_Exception);
82 HOMARD_Boundary CreateBoundaryDi (in string nomBoundary, in string MeshName, in string FileName);
83 HOMARD_Boundary CreateBoundaryCylinder (in string nomBoundary,
84 in double Xcentre, in double Ycentre, in double Zcentre,
85 in double Xaxis, in double Yaxis, in double Zaxis,
87 HOMARD_Boundary CreateBoundarySphere (in string nomBoundary,
88 in double Xcentre, in double Ycentre, in double Zcentre,
90 void AssociateIterIter(in string nomIterParent, in string nomIter)
91 raises (SALOME::SALOME_Exception);
92 void AssociateIterHypo(in string nomIter, in string nomHypothesis)
93 raises (SALOME::SALOME_Exception);
94 void AssociateHypoZone(in string nomZone, in string nomHypothesis)
95 raises (SALOME::SALOME_Exception);
96 void DissociateHypoZone(in string nomZone, in string nomHypothesis)
97 raises (SALOME::SALOME_Exception);
99 void InvalideBoundary (in string nomBoundary) raises (SALOME::SALOME_Exception);
100 void InvalideZone (in string nomZone) raises (SALOME::SALOME_Exception);
101 void InvalideHypo (in string nomHypo) raises (SALOME::SALOME_Exception);
102 void InvalideIter (in string nomIter) raises (SALOME::SALOME_Exception);
104 boolean Compute (in string nomIter, in long etatMenage)
105 raises (SALOME::SALOME_Exception);
107 boolean VerifieDir (in string nomIter) raises (SALOME::SALOME_Exception);
109 string GetCaseName(in string nomIter) raises (SALOME::SALOME_Exception);
111 void PublishFileUnderIteration(in string NomIter, in string NomFich, in string Commentaire)
112 raises (SALOME::SALOME_Exception);
113 void PublishResultInSmesh(in string NomFich, in long IconeType)
114 raises (SALOME::SALOME_Exception);
115 HOMARD_Cas GetCas(in string nomCas) raises (SALOME::SALOME_Exception);
116 HOMARD_Boundary GetBoundary(in string nomBoundary) raises (SALOME::SALOME_Exception);
117 HOMARD_Zone GetZone(in string nomZone) raises (SALOME::SALOME_Exception);
118 HOMARD_Hypothesis GetHypothesis(in string nomHypo) raises (SALOME::SALOME_Exception);
119 HOMARD_Iteration GetIteration(in string nomIter) raises (SALOME::SALOME_Exception);
121 listeCases GetAllCases() raises (SALOME::SALOME_Exception);
122 listeBoundarys GetAllBoundarys() raises (SALOME::SALOME_Exception);
123 listeHypotheses GetAllHypotheses() raises (SALOME::SALOME_Exception);
124 listeZones GetAllZones() raises (SALOME::SALOME_Exception);
125 listeIterations GetAllIterations() raises (SALOME::SALOME_Exception);
127 void SetCurrentStudy(in SALOMEDS::Study theStudy) raises (SALOME::SALOME_Exception);
128 SALOMEDS::Study GetCurrentStudy() raises (SALOME::SALOME_Exception);