]> SALOME platform Git repositories - plugins/blsurfplugin.git/blob - src/BLSURFPlugin/BLSURFPlugin_Hypothesis_i.hxx
Salome HOME
5c7329df46880670a3e8ba790372b4a225a33846
[plugins/blsurfplugin.git] / src / BLSURFPlugin / BLSURFPlugin_Hypothesis_i.hxx
1 //  Copyright (C) 2007-2008  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.
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 // File    : BLSURFPlugin_Hypothesis.hxx
21 // Authors : Francis KLOSS (OCC) & Patrick LAUG (INRIA) & Lioka RAZAFINDRAZAKA (CEA)
22 // ---
23 //
24 #ifndef _BLSURFPlugin_Hypothesis_i_HXX_
25 #define _BLSURFPlugin_Hypothesis_i_HXX_
26
27 #include <SALOMEconfig.h>
28 #include CORBA_SERVER_HEADER(BLSURFPlugin_Algorithm)
29
30 #include "SMESH_Hypothesis_i.hxx"
31 #include "BLSURFPlugin_Hypothesis.hxx"
32
33 class SMESH_Gen;
34 class GEOM_Object;
35
36 // BLSURFPlugin parameters hypothesis
37
38 class BLSURFPlugin_Hypothesis_i:
39   public virtual POA_BLSURFPlugin::BLSURFPlugin_Hypothesis,
40   public virtual SMESH_Hypothesis_i
41 {
42  public:
43   // Constructor
44   BLSURFPlugin_Hypothesis_i (PortableServer::POA_ptr thePOA,
45                              int                     theStudyId,
46                              ::SMESH_Gen*            theGenImpl);
47   // Destructor
48   virtual ~BLSURFPlugin_Hypothesis_i();
49
50   void SetTopology(CORBA::Long theValue);
51   CORBA::Long GetTopology();
52
53   void SetPhysicalMesh(CORBA::Long theValue);
54   CORBA::Long GetPhysicalMesh();
55
56   void SetPhySize(CORBA::Double theValue);
57   CORBA::Double GetPhySize();
58
59   void SetPhyMin(CORBA::Double theMinSize);
60   CORBA::Double GetPhyMin();
61
62   void SetPhyMax(CORBA::Double theMaxSize);
63   CORBA::Double GetPhyMax();
64
65   void SetGeometricMesh(CORBA::Long theValue);
66   CORBA::Long GetGeometricMesh();
67
68   void SetAngleMeshS(CORBA::Double theValue);
69   CORBA::Double GetAngleMeshS();
70
71   void SetAngleMeshC(CORBA::Double angle);
72   CORBA::Double GetAngleMeshC();
73
74   void SetGeoMin(CORBA::Double theMinSize);
75   CORBA::Double GetGeoMin();
76
77   void SetGeoMax(CORBA::Double theMaxSize);
78   CORBA::Double GetGeoMax();
79
80   void SetGradation(CORBA::Double theValue);
81   CORBA::Double GetGradation();
82
83   void SetQuadAllowed(CORBA::Boolean theValue);
84   CORBA::Boolean GetQuadAllowed();
85
86   void SetDecimesh(CORBA::Boolean theValue);
87   CORBA::Boolean GetDecimesh();
88
89   void SetVerbosity(CORBA::Short theVal) throw (SALOME::SALOME_Exception);
90   CORBA::Short GetVerbosity();
91
92   void SetOptionValue(const char* optionName,
93                       const char* optionValue) throw (SALOME::SALOME_Exception);
94   char* GetOptionValue(const char* optionName) throw (SALOME::SALOME_Exception);
95
96   void UnsetOption(const char* optionName);
97
98   BLSURFPlugin::string_array* GetOptionValues();
99
100   void SetOptionValues(const BLSURFPlugin::string_array& options) throw (SALOME::SALOME_Exception);
101
102   void SetSizeMapEntry(const char* entry,const char* sizeMap )  throw (SALOME::SALOME_Exception);
103   
104   char* GetSizeMapEntry(const char* entry)  throw (SALOME::SALOME_Exception);
105
106   void UnsetEntry(const char* entry);
107
108   BLSURFPlugin::string_array* GetSizeMapEntries();
109
110   void SetSizeMapEntries(const BLSURFPlugin::string_array& options) throw (SALOME::SALOME_Exception);
111
112   void SetSizeMap(GEOM::GEOM_Object_ptr GeomObj, const char* sizeMap);
113
114   void UnsetSizeMap(GEOM::GEOM_Object_ptr GeomObj);
115
116   void ClearSizeMaps();
117
118   // Get implementation
119   ::BLSURFPlugin_Hypothesis* GetImpl();
120   
121   // Verify whether hypothesis supports given entity type 
122   CORBA::Boolean IsDimSupported( SMESH::Dimension type );
123 };
124
125 #endif