Version: 8.3.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
AdvancedEngine_IPipeTShape.hxx
Go to the documentation of this file.
1 // Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE
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 #ifndef _AdvancedEngine_IPipeTShape_HXX_
21 #define _AdvancedEngine_IPipeTShape_HXX_
22 
23 #include "GEOM_Function.hxx"
24 
25 #include <TColStd_HArray1OfReal.hxx>
26 
28 {
29 public:
30  AdvancedEngine_IPipeTShape(Handle(GEOM_Function) theFunction): _func(theFunction) {}
31 
32  void SetR1(double theR1) { _func->SetReal(TSHAPE_ARG_R1, theR1); }
33  double GetR1() { return _func->GetReal(TSHAPE_ARG_R1); }
34 
35  void SetW1(double theW1) { _func->SetReal(TSHAPE_ARG_W1, theW1); }
36  double GetW1() { return _func->GetReal(TSHAPE_ARG_W1); }
37 
38  void SetL1(double theL1) { _func->SetReal(TSHAPE_ARG_L1, theL1); }
39  double GetL1() { return _func->GetReal(TSHAPE_ARG_L1); }
40 
41  void SetR2(double theR2) { _func->SetReal(TSHAPE_ARG_R2, theR2); }
42  double GetR2() { return _func->GetReal(TSHAPE_ARG_R2); }
43 
44  void SetW2(double theW2) { _func->SetReal(TSHAPE_ARG_W2, theW2); }
45  double GetW2() { return _func->GetReal(TSHAPE_ARG_W2); }
46 
47  void SetL2(double theL2) { _func->SetReal(TSHAPE_ARG_L2, theL2); }
48  double GetL2() { return _func->GetReal(TSHAPE_ARG_L2); }
49 
50  void SetH(double theH) { _func->SetReal(TSHAPE_ARG_H, theH); }
51  double GetH() { return _func->GetReal(TSHAPE_ARG_H); }
52 
53  void SetW(double theW) { _func->SetReal(TSHAPE_ARG_W, theW); }
54  double GetW() { return _func->GetReal(TSHAPE_ARG_W); }
55 
56  void SetRF(double theRF) { _func->SetReal(TSHAPE_ARG_RF, theRF); }
57  double GetRF() { return _func->GetReal(TSHAPE_ARG_RF); }
58 
59  void SetHexMesh(int theHexMesh) { _func->SetInteger(TSHAPE_ARG_HEXMESH, theHexMesh); }
60  int GetHexMesh() { return _func->GetInteger(TSHAPE_ARG_HEXMESH); }
61 
62  void SetP1(const Handle(GEOM_Function)& theP1){_func->SetReference(TSHAPE_ARG_P1, theP1); }
63  Handle(GEOM_Function) GetP1() { return _func->GetReference(TSHAPE_ARG_P1); }
64 
65  void SetP2(const Handle(GEOM_Function)& theP2){_func->SetReference(TSHAPE_ARG_P2, theP2); }
66  Handle(GEOM_Function) GetP2() { return _func->GetReference(TSHAPE_ARG_P2); }
67 
68  void SetP3(const Handle(GEOM_Function)& theP3){_func->SetReference(TSHAPE_ARG_P3, theP3); }
69  Handle(GEOM_Function) GetP3() { return _func->GetReference(TSHAPE_ARG_P3); }
70 
71 private:
72  enum {
73  // main pipe
77 
78  // incident pipe
82 
83  // chamfer
86 
87  // fillet
89 
90  // partition
92 
93  // junction points
97  };
98 
99 private:
100  Handle(GEOM_Function) _func;
101 };
102 
103 #endif // _AdvancedEngine_IPipeTShape_HXX_