1 // Copyright (C) 2011-2013 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 // L'ordre de description des fonctions est le meme dans tous les fichiers
21 // HOMARD_aaaa.idl, HOMARD_aaaa.hxx, HOMARD_aaaa.cxx, HOMARD_aaaa_i.hxx, HOMARD_aaaa_i.cxx :
22 // 1. Les generalites : Name, Delete, DumpPython, Dump, Restore
23 // 2. Les caracteristiques
24 // 3. Le lien avec les autres structures
26 // Quand les 2 fonctions Setxxx et Getxxx sont presentes, Setxxx est decrit en premier
29 #ifndef _HOMARD_HYPOTHESIS_I_HXX_
30 #define _HOMARD_HYPOTHESIS_I_HXX_
32 #include <SALOMEconfig.h>
33 #include CORBA_SERVER_HEADER(HOMARD_Gen)
34 #include CORBA_SERVER_HEADER(HOMARD_Hypothesis)
36 #include "SALOME_Component_i.hxx"
37 #include "SALOME_NamingService.hxx"
38 #include "Utils_CorbaException.hxx"
42 class HOMARD_Hypothesis;
44 class HOMARD_Hypothesis_i:
45 public virtual Engines_Component_i,
46 public virtual POA_HOMARD::HOMARD_Hypothesis,
47 public virtual PortableServer::ServantBase
50 HOMARD_Hypothesis_i( CORBA::ORB_ptr orb, HOMARD::HOMARD_Gen_var gen_i );
51 HOMARD_Hypothesis_i();
53 virtual ~HOMARD_Hypothesis_i();
56 void SetName( const char* Name );
61 char* GetDumpPython();
63 std::string Dump() const;
64 bool Restore( const std::string& stream );
67 void SetAdapRefinUnRef( CORBA::Long TypeAdap, CORBA::Long TypeRaff, CORBA::Long TypeDera );
68 HOMARD::listeTypes* GetAdapRefinUnRef();
69 CORBA::Long GetAdapType();
70 CORBA::Long GetRefinType();
71 CORBA::Long GetUnRefType();
73 void SetField( const char* FieldName );
75 void SetUseField(CORBA::Long UsField);
76 HOMARD::InfosHypo* GetField();
78 void SetUseComp(CORBA::Long UsCmpI);
79 void AddComp( const char* NomComposant );
81 HOMARD::listeComposantsHypo* GetListComp();
83 void SetRefinThr(CORBA::Long TypeThR, CORBA::Double ThreshR);
84 CORBA::Long GetRefinThrType();
85 void SetUnRefThr(CORBA::Long TypeThC, CORBA::Double ThreshC);
86 CORBA::Long GetUnRefThrType();
88 void SetNivMax( CORBA::Long NivMax );
89 CORBA::Long GetNivMax();
91 void SetDiamMin( CORBA::Double DiamMin );
92 CORBA::Double GetDiamMin();
94 void SetAdapInit( CORBA::Long AdapInit );
95 CORBA::Long GetAdapInit();
97 void SetLevelOutput( CORBA::Long LevelOutput );
98 CORBA::Long GetLevelOutput();
100 void AddGroup( const char* Group);
101 void SetGroups(const HOMARD::ListGroupType& ListGroup);
102 HOMARD::ListGroupType* GetGroups();
104 void SetTypeFieldInterp( CORBA::Long TypeFieldInterp );
105 CORBA::Long GetTypeFieldInterp();
106 void AddFieldInterp( const char* FieldInterp );
107 void SupprFieldInterp();
108 HOMARD::listFieldInterpHypo* GetListFieldInterp();
110 // Liens avec les autres structures
111 void SetCaseCreation( const char* NomCaseCreation );
112 char* GetCaseCreation();
114 void LinkIteration( const char* NomIteration );
115 void UnLinkIteration( const char* NomIteration );
116 HOMARD::listeIters* GetIterations();
118 void AddZone( const char* NomZone, CORBA::Long TypeUse );
119 void AddZone0( const char* NomZone, CORBA::Long TypeUse );
120 void SupprZone( const char* NomZone );
121 HOMARD::listeZonesHypo* GetZones();
124 ::HOMARD_Hypothesis* myHomardHypothesis;
127 HOMARD::HOMARD_Gen_var _gen_i;