Salome HOME
Merge branch 'master' into gni/adaptation
[modules/smesh.git] / idl / HOMARD_Hypothesis.idl
1 // Copyright (C) 2011-2020  CEA/DEN, EDF R&D
2 //
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, or (at your option) any later version.
7 //
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.
12 //
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
16 //
17 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
18 //
19
20 // Remarques :
21 // L'ordre de description des fonctions est le meme dans tous les fichiers
22 // HOMARD_aaaa.idl, HOMARD_aaaa.hxx, HOMARD_aaaa.cxx, HOMARD_aaaa_i.hxx, HOMARD_aaaa_i.cxx :
23 // 1. Les generalites : Name, Delete, DumpPython, Dump, Restore
24 // 2. Les caracteristiques
25 // 3. Le lien avec les autres structures
26 //
27 // Quand les 2 fonctions Setxxx et Getxxx sont presentes, Setxxx est decrit en premier
28 //
29
30 #ifndef _HOMARD_HYPOTHESIS_IDL
31 #define _HOMARD_HYPOTHESIS_IDL
32
33 #include "SALOME_Component.idl"
34 #include "SALOME_Exception.idl"
35 #include "SALOMEDS.idl"
36
37 #include "HOMARD_Cas.idl"
38
39 module ADAPT
40 {
41   typedef sequence<string> listeZonesHypo ;
42   typedef sequence<string> listeIters ;
43   typedef sequence<string> listeComposantsHypo ;
44   typedef sequence<long>   listeTypes ;
45   typedef sequence<string> listeFieldInterpsHypo ;
46
47   struct InfosHypo
48   {
49       string FieldName;
50       long UsCmpI;
51       long UsField;
52       long TypeThR;
53       double ThreshR;
54       long TypeThC;
55       double ThreshC;
56   };
57
58   interface HOMARD_Hypothesis : Engines::EngineComponent
59   {
60 // Generalites
61     void     SetName(in string Name)                       raises (SALOME::SALOME_Exception);
62     string   GetName()                                     raises (SALOME::SALOME_Exception);
63
64     long     Delete()                                      raises (SALOME::SALOME_Exception);
65
66     string   GetDumpPython()                               raises (SALOME::SALOME_Exception);
67
68 // Caracteristiques
69     void     SetUnifRefinUnRef(in long RaffDera)           raises (SALOME::SALOME_Exception);
70     listeTypes GetAdapRefinUnRef()                         raises (SALOME::SALOME_Exception);
71     long     GetAdapType()                                 raises (SALOME::SALOME_Exception);
72     long     GetRefinType()                                raises (SALOME::SALOME_Exception);
73     long     GetUnRefType()                                raises (SALOME::SALOME_Exception);
74
75     void     SetField(in string FieldName)                 raises (SALOME::SALOME_Exception);
76     string   GetFieldName()                                raises (SALOME::SALOME_Exception);
77     void     SetUseField(in long UsField)                  raises (SALOME::SALOME_Exception);
78     InfosHypo GetField()                                   raises (SALOME::SALOME_Exception);
79
80     void     SetUseComp(in long UsCmpI)                    raises (SALOME::SALOME_Exception);
81     void     AddComp(in string NomComp)                    raises (SALOME::SALOME_Exception);
82     void     SupprComp(in string NomComp)                  raises (SALOME::SALOME_Exception);
83     void     SupprComps()                                  raises (SALOME::SALOME_Exception);
84     listeComposantsHypo GetComps()                         raises (SALOME::SALOME_Exception);
85
86     void     SetRefinThr(in long TypeThR, in double ThreshR)
87                                                            raises (SALOME::SALOME_Exception);
88     long     GetRefinThrType()                             raises (SALOME::SALOME_Exception);
89     void     SetUnRefThr(in long TypeThC, in double ThreshC)
90                                                            raises (SALOME::SALOME_Exception);
91     long     GetUnRefThrType()                             raises (SALOME::SALOME_Exception);
92
93     void     SetNivMax(in long NivMax)                     raises (SALOME::SALOME_Exception);
94     long     GetNivMax()                                   raises (SALOME::SALOME_Exception);
95
96     void     SetDiamMin(in double DiamMin)                 raises (SALOME::SALOME_Exception);
97     double   GetDiamMin()                                  raises (SALOME::SALOME_Exception);
98
99     void     SetAdapInit(in long AdapInit)                 raises (SALOME::SALOME_Exception);
100     long     GetAdapInit()                                 raises (SALOME::SALOME_Exception);
101
102     void     SetExtraOutput(in long ExtraOutput)           raises (SALOME::SALOME_Exception);
103     long     GetExtraOutput()                              raises (SALOME::SALOME_Exception);
104
105     void     AddGroup(in string LeGroupe)                  raises (SALOME::SALOME_Exception);
106     void     SupprGroup(in string LeGroupe)                raises (SALOME::SALOME_Exception);
107     void     SupprGroups()                                 raises (SALOME::SALOME_Exception);
108     void     SetGroups(in ListGroupType ListGroup)         raises (SALOME::SALOME_Exception);
109     ListGroupType GetGroups()                              raises (SALOME::SALOME_Exception);
110
111     void     SetTypeFieldInterp(in long TypeFieldInterp)   raises (SALOME::SALOME_Exception);
112     long     GetTypeFieldInterp()                          raises (SALOME::SALOME_Exception);
113     void     AddFieldInterp(in string FieldInterp)         raises (SALOME::SALOME_Exception);
114     void     AddFieldInterpType(in string FieldInterp, in long TypeInterp)
115                                                            raises (SALOME::SALOME_Exception);
116     void     SupprFieldInterp(in string FieldInterp)       raises (SALOME::SALOME_Exception);
117     void     SupprFieldInterps()                           raises (SALOME::SALOME_Exception);
118     listeFieldInterpsHypo GetFieldInterps()                raises (SALOME::SALOME_Exception);
119
120 // Liens avec les autres structures
121     void     SetCaseCreation(in string NomCas)             raises (SALOME::SALOME_Exception);
122     string   GetCaseCreation()                             raises (SALOME::SALOME_Exception);
123
124     void     LinkIteration(in string NomIteration)         raises (SALOME::SALOME_Exception);
125     void     UnLinkIteration(in string NomIteration)       raises (SALOME::SALOME_Exception);
126     listeIters GetIterations()                             raises (SALOME::SALOME_Exception);
127
128     void     AddZone(in string NomZone, in long TypeUse)   raises (SALOME::SALOME_Exception);
129     void     AddZone0(in string NomZone, in long TypeUse)  raises (SALOME::SALOME_Exception);
130     void     SupprZone(in string NomZone)                  raises (SALOME::SALOME_Exception);
131     void     SupprZones()                                  raises (SALOME::SALOME_Exception);
132     listeZonesHypo GetZones()                              raises (SALOME::SALOME_Exception);
133
134   };
135 };
136 #endif