]> SALOME platform Git repositories - modules/geom.git/blob - src/GEOMAlgo/GEOMAlgo_Gluer.hxx
Salome HOME
aeb5d8b54d43a3ad3a2952406c01b303c892e952
[modules/geom.git] / src / GEOMAlgo / GEOMAlgo_Gluer.hxx
1 // File generated by CPPExt (Value)\r
2 //\r
3 //                     Copyright (C) 1991 - 2000 by  \r
4 //                      Matra Datavision SA.  All rights reserved.\r
5 //  \r
6 //                     Copyright (C) 2001 - 2004 by\r
7 //                     Open CASCADE SA.  All rights reserved.\r
8 // \r
9 // This file is part of the Open CASCADE Technology software.\r
10 //\r
11 // This software may be distributed and/or modified under the terms and\r
12 // conditions of the Open CASCADE Public License as defined by Open CASCADE SA\r
13 // and appearing in the file LICENSE included in the packaging of this file.\r
14 //  \r
15 // This software is distributed on an "AS IS" basis, without warranty of any\r
16 // kind, and Open CASCADE SA hereby disclaims all such warranties,\r
17 // including without limitation, any warranties of merchantability, fitness\r
18 // for a particular purpose or non-infringement. Please see the License for\r
19 // the specific terms and conditions governing rights and limitations under the\r
20 // License.\r
21 \r
22 #ifndef _GEOMAlgo_Gluer_HeaderFile\r
23 #define _GEOMAlgo_Gluer_HeaderFile\r
24 \r
25 #ifndef _Standard_HeaderFile\r
26 #include <Standard.hxx>\r
27 #endif\r
28 #ifndef _Standard_Macro_HeaderFile\r
29 #include <Standard_Macro.hxx>\r
30 #endif\r
31 \r
32 #ifndef _Standard_Boolean_HeaderFile\r
33 #include <Standard_Boolean.hxx>\r
34 #endif\r
35 #ifndef _Standard_Real_HeaderFile\r
36 #include <Standard_Real.hxx>\r
37 #endif\r
38 #ifndef _TopTools_DataMapOfShapeListOfShape_HeaderFile\r
39 #include <TopTools_DataMapOfShapeListOfShape.hxx>\r
40 #endif\r
41 #ifndef _TopTools_DataMapOfShapeShape_HeaderFile\r
42 #include <TopTools_DataMapOfShapeShape.hxx>\r
43 #endif\r
44 #ifndef _Standard_Integer_HeaderFile\r
45 #include <Standard_Integer.hxx>\r
46 #endif\r
47 #ifndef _TopTools_ListOfShape_HeaderFile\r
48 #include <TopTools_ListOfShape.hxx>\r
49 #endif\r
50 #ifndef _GEOMAlgo_ShapeAlgo_HeaderFile\r
51 #include <GEOMAlgo_ShapeAlgo.hxx>\r
52 #endif\r
53 #ifndef _TopAbs_ShapeEnum_HeaderFile\r
54 #include <TopAbs_ShapeEnum.hxx>\r
55 #endif\r
56 class TopTools_ListOfShape;\r
57 class TopoDS_Shape;\r
58 class TopoDS_Edge;\r
59 class GEOMAlgo_PassKeyShape;\r
60 class TopoDS_Face;\r
61 class TopoDS_Vertex;\r
62 class TopTools_DataMapOfShapeListOfShape;\r
63 class TopTools_DataMapOfShapeShape;\r
64 class TopTools_MapOfShape;\r
65 class TopoDS_Compound;\r
66 \r
67 \r
68 \r
69 class GEOMAlgo_Gluer  : public GEOMAlgo_ShapeAlgo {\r
70 public:\r
71 \r
72   void* operator new(size_t,void* anAddress) \r
73   {\r
74     return anAddress;\r
75   }\r
76   void* operator new(size_t size) \r
77   {\r
78     return Standard::Allocate(size); \r
79   }\r
80   void  operator delete(void *anAddress) \r
81   {\r
82     if (anAddress) Standard::Free((Standard_Address&)anAddress); \r
83   }\r
84 \r
85   \r
86   Standard_EXPORT   GEOMAlgo_Gluer();\r
87 Standard_EXPORT virtual ~GEOMAlgo_Gluer();\r
88   \r
89   Standard_EXPORT     void SetCheckGeometry(const Standard_Boolean aFlag) ;\r
90   \r
91   Standard_EXPORT     Standard_Boolean CheckGeometry() const;\r
92   \r
93   Standard_EXPORT   virtual  void Perform() ;\r
94   \r
95   Standard_EXPORT     Standard_Integer AloneShapes() const;\r
96   \r
97   Standard_EXPORT    const TopTools_ListOfShape& Modified(const TopoDS_Shape& S) ;\r
98   \r
99   Standard_EXPORT    const TopTools_ListOfShape& Generated(const TopoDS_Shape& S) ;\r
100   \r
101   Standard_EXPORT     Standard_Boolean IsDeleted(const TopoDS_Shape& S) ;\r
102   \r
103   Standard_EXPORT    const TopTools_DataMapOfShapeListOfShape& Images() const;\r
104   \r
105   Standard_EXPORT    const TopTools_DataMapOfShapeShape& Origins() const;\r
106   \r
107   Standard_EXPORT     void MakeSubShapes(const TopoDS_Shape& aS,TopTools_MapOfShape& aM,TopoDS_Compound& aC) ;\r
108   \r
109   Standard_EXPORT     void SetKeepNonSolids(const Standard_Boolean bFlag) ;\r
110   \r
111   Standard_EXPORT     Standard_Boolean KeepNonSolids() const;\r
112 \r
113 \r
114 \r
115 \r
116 \r
117 protected:\r
118 \r
119   \r
120   Standard_EXPORT   virtual  void CheckData() ;\r
121   \r
122   Standard_EXPORT   virtual  void CheckResult() ;\r
123   \r
124   Standard_EXPORT     void MakeVertices() ;\r
125   \r
126   Standard_EXPORT     void MakeEdges() ;\r
127   \r
128   Standard_EXPORT     void MakeFaces() ;\r
129   \r
130   Standard_EXPORT     void MakeShapes(const TopAbs_ShapeEnum aType) ;\r
131   \r
132   Standard_EXPORT     void MakeShells() ;\r
133   \r
134   Standard_EXPORT     void MakeSolids() ;\r
135   \r
136   Standard_EXPORT     void InnerTolerance() ;\r
137   \r
138   Standard_EXPORT     void EdgePassKey(const TopoDS_Edge& aE,GEOMAlgo_PassKeyShape& aPK) ;\r
139   \r
140   Standard_EXPORT     void FacePassKey(const TopoDS_Face& aF,GEOMAlgo_PassKeyShape& aPK) ;\r
141   \r
142   Standard_EXPORT     void MakeVertex(const TopTools_ListOfShape& aLV,TopoDS_Vertex& aNewV) ;\r
143   \r
144   Standard_EXPORT     void MakeEdge(const TopoDS_Edge& aEdge,TopoDS_Edge& aNewEdge) ;\r
145   \r
146   Standard_EXPORT     void MakeFace(const TopoDS_Face& aFace,TopoDS_Face& aNewEdge) ;\r
147   \r
148   Standard_EXPORT     Standard_Boolean IsToReverse(const TopoDS_Face& aFR,const TopoDS_Face& aF) ;\r
149   \r
150   Standard_EXPORT     Standard_Boolean HasNewSubShape(const TopoDS_Shape& aS) const;\r
151 \r
152 \r
153 Standard_Boolean myCheckGeometry;\r
154 Standard_Real myTol;\r
155 TopTools_DataMapOfShapeListOfShape myImages;\r
156 TopTools_DataMapOfShapeShape myOrigins;\r
157 Standard_Integer myNbAlone;\r
158 TopTools_ListOfShape myGenerated;\r
159 Standard_Boolean myKeepNonSolids;\r
160 \r
161 \r
162 private:\r
163 \r
164 \r
165 \r
166 \r
167 \r
168 };\r
169 \r
170 \r
171 \r
172 \r
173 \r
174 // other Inline functions and methods (like "C++: function call" methods)\r
175 \r
176 \r
177 #endif\r