Salome HOME
aa7e939821fd89340d43ac1e14008ec382a3a8e6
[modules/geom.git] / src / GEOMAlgo / GEOMAlgo.cdl
1 --  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
2 --
3 --  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 --  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
5 --
6 --  This library is free software; you can redistribute it and/or
7 --  modify it under the terms of the GNU Lesser General Public
8 --  License as published by the Free Software Foundation; either
9 --  version 2.1 of the License.
10 --
11 --  This library is distributed in the hope that it will be useful,
12 --  but WITHOUT ANY WARRANTY; without even the implied warranty of
13 --  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14 --  Lesser General Public License for more details.
15 --
16 --  You should have received a copy of the GNU Lesser General Public
17 --  License along with this library; if not, write to the Free Software
18 --  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
19 --
20 --  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
21 --
22 -- File:        GEOMAlgo.cdl
23 -- Created:     Sat Dec 04 12:36:22 2004
24 -- Author:      Peter KURNEV
25 --              <peter@PREFEX>
26 --
27 package GEOMAlgo 
28
29         ---Purpose: 
30
31 uses  
32     TCollection, 
33     
34     TColgp, 
35     Geom,     
36     Bnd, 
37     gp,   
38     GeomAdaptor,
39     TopAbs,
40     TopoDS, 
41     TopTools, 
42     IntTools, 
43     BOPTools, 
44     BOP, 
45     
46     TColStd, 
47     BOPTColStd,  
48     BRepAlgo, 
49     NMTDS, 
50     NMTTools 
51     
52 is   
53     --
54     -- enumerations 
55     --
56     enumeration State is 
57         ST_UNKNOWN, 
58         ST_IN,
59         ST_OUT,
60         ST_ON, 
61         ST_ONIN, 
62         ST_ONOUT, 
63         ST_INOUT    
64     end State; 
65     --
66     enumeration KindOfShape is 
67         KS_UNKNOWN, 
68         KS_SPHERE,
69         KS_CYLINDER,
70         KS_BOX,
71         KS_TORUS,
72         KS_CONE,
73         KS_ELLIPSE,
74         KS_PLANE,
75         KS_CIRCLE, 
76         KS_LINE, 
77         KS_DEGENERATED 
78     end KindOfShape;   
79     --  
80     enumeration KindOfName is 
81         KN_UNKNOWN, 
82         KN_SPHERE,
83         KN_CYLINDER,
84         KN_TORUS,
85         KN_CONE,
86         KN_ELLIPSE, 
87         KN_CIRCLE,
88         KN_PLANE,
89         KN_LINE, 
90         KN_BOX, 
91         KN_SEGMENT, 
92         KN_ARCCIRCLE, 
93         KN_POLYGON, 
94         KN_POLYHEDRON,
95         KN_DISKCIRCLE, 
96         KN_DISKELLIPSE, 
97         KN_RECTANGLE, 
98         KN_TRIANGLE, 
99         KN_QUADRANGLE, 
100         KN_ARCELLIPSE            
101     end KindOfName;   
102     --
103     enumeration KindOfBounds is  
104         KB_UNKNOWN, 
105         KB_TRIMMED, 
106         KB_INFINITE
107     end KindOfBounds;  
108     --
109     enumeration KindOfClosed is  
110         KC_UNKNOWN, 
111         KC_CLOSED, 
112         KC_NOTCLOSED
113     end KindOfClosed;  
114     --
115     deferred class HAlgo;
116     deferred class Clsf;
117     class ClsfSurf; 
118     class ClsfBox; 
119     class FinderShapeOn2; 
120     class PassKeyShapeMapHasher; 
121     -- 
122     --  classes 
123     --  
124     deferred class Algo;  
125     deferred class ShapeAlgo;  
126     -- 
127     class ShapeInfo;
128     class ShapeInfoFiller;
129     -- 
130     --  gluer                
131     class Gluer; 
132     class Gluer1;  
133     class GlueAnalyser; 
134     class CoupleOfShapes; 
135     class PassKey;  
136     class PassKeyMapHasher; 
137     class PassKeyShape;  
138     
139     class SurfaceTools; 
140     class Tools;  
141     --       
142     --  finder on 
143     deferred class ShapeSolid;
144     class WireSolid; 
145     class ShellSolid; 
146     class VertexSolid; 
147     class SolidSolid; 
148     class FinderShapeOn; 
149     -- 
150     class FinderShapeOn1;
151     class StateCollector; 
152     --  adds
153     deferred class HAlgo;
154     deferred class Clsf;
155     class ClsfSurf; 
156     class ClsfBox;  
157     --modified by NIZNHY-PKV Mon Jan 29 10:27:44 2007f
158     class ClsfSolid;  
159     --modified by NIZNHY-PKV Mon Jan 29 10:27:46 2007t
160     class FinderShapeOn2; 
161     class PassKeyShapeMapHasher;
162     --
163     -- Builder/Splitter 
164     deferred class BuilderShape; 
165      
166     class Builder; 
167     class Splitter; 
168     class Tools3D; 
169     class BuilderTools; 
170     class ShapeSet;  
171      
172     deferred class BuilderArea;
173     class BuilderFace; 
174     class BuilderSolid;  
175     
176     class WireSplitter; 
177     class WireEdgeSet; 
178     class WESCorrector; 
179     -- 
180     --  Pointers
181     --     
182     pointer PWireEdgeSet to WireEdgeSet from GEOMAlgo;  
183     --     
184     -- 
185     --  Instantiations  
186     class DataMapOfShapeShapeSet instantiates 
187         DataMap from TCollection(Shape from TopoDS, 
188                                  ShapeSet from GEOMAlgo, 
189                                  ShapeMapHasher from TopTools); 
190          
191     class DataMapOfShapeReal instantiates 
192         DataMap from TCollection(Shape from TopoDS, 
193                                  Real from Standard, 
194                                  ShapeMapHasher from TopTools);          
195                                   
196     
197     class DataMapOfRealListOfShape instantiates  
198         DataMap from TCollection(Real from Standard, 
199                                  ListOfShape from TopTools,  
200                                  MapRealHasher from TColStd);      
201     --
202     --  instantiations
203     
204      
205     class IndexedDataMapOfShapeBox  
206         instantiates IndexedDataMap from TCollection    (Shape from TopoDS,
207                                                          Box from Bnd,
208                                                          ShapeMapHasher from TopTools);
209     class IndexedDataMapOfIntegerShape  
210         instantiates IndexedDataMap from TCollection    (Integer from Standard,
211                                                          Shape from TopoDS,
212                                                          MapIntegerHasher from TColStd); 
213                                                           
214     class ListOfCoupleOfShapes  
215         instantiates List from TCollection  (CoupleOfShapes from GEOMAlgo);
216
217
218     class IndexedDataMapOfShapeState
219         instantiates IndexedDataMap from TCollection    (Shape from TopoDS,
220                                                          State from TopAbs,  
221                                                          ShapeMapHasher from TopTools);
222     class ListOfPnt
223         instantiates List from TCollection  (Pnt from gp);
224
225     class DataMapOfPassKeyInteger
226         instantiates DataMap from TCollection (PassKey from GEOMAlgo, 
227                                                Integer from Standard, 
228                                                PassKeyMapHasher from GEOMAlgo); 
229      
230     class IndexedDataMapOfPassKeyShapeListOfShape
231         instantiates IndexedDataMap from TCollection (PassKeyShape from GEOMAlgo, 
232                                                       ListOfShape from TopTools, 
233                                                       PassKeyShapeMapHasher from GEOMAlgo); 
234
235     class IndexedDataMapOfShapeShapeInfo
236         instantiates IndexedDataMap from TCollection    (Shape from TopoDS,
237                                                          ShapeInfo from GEOMAlgo,
238                                                          ShapeMapHasher from TopTools);
239
240     class DataMapOfPassKeyShapeShape   
241         instantiates DataMap from TCollection (PassKeyShape from GEOMAlgo, 
242                                                Shape from TopoDS, 
243                                                PassKeyShapeMapHasher from GEOMAlgo); 
244
245     class DataMapOfShapeShapeSet instantiates 
246         DataMap from TCollection(Shape from TopoDS, 
247                                  ShapeSet from GEOMAlgo, 
248                                  ShapeMapHasher from TopTools); 
249          
250     class DataMapOfShapeReal instantiates 
251         DataMap from TCollection(Shape from TopoDS, 
252                                  Real from Standard, 
253                                  ShapeMapHasher from TopTools);          
254                                   
255     
256     class DataMapOfRealListOfShape instantiates  
257         DataMap from TCollection(Real from Standard, 
258                                  ListOfShape from TopTools,  
259                                  MapRealHasher from TColStd);      
260     
261 end GEOMAlgo;