0025354: Intersection operation
[occt.git] / src / BOPAlgo / BOPAlgo.cdl
1 -- Created by: Peter KURNEV
2 -- Copyright (c) 1999-2014 OPEN CASCADE SAS
3 --
4 -- This file is part of Open CASCADE Technology software library.
5 --
6 -- This library is free software; you can redistribute it and/or modify it under
7 -- the terms of the GNU Lesser General Public License version 2.1 as published
8 -- by the Free Software Foundation, with special exception defined in the file
9 -- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
10 -- distribution for complete text of the license and disclaimer of any warranty.
11 --
12 -- Alternatively, this file may be used under the terms of Open CASCADE
13 -- commercial license or contractual agreement.
14
15 package BOPAlgo 
16 ---Purpose: 
17
18 uses
19     gp,  
20     Bnd, 
21     Message,
22     TopAbs, 
23     Geom,  
24     GeomAPI, 
25     BRepClass3d,
26     TopoDS, 
27     TopTools, 
28     IntTools,
29     IntSurf,
30     --
31     BOPDS, 
32     BOPCol, 
33     BOPTools 
34 is   
35     enumeration Operation is  
36       COMMON, 
37       FUSE, 
38       CUT,    
39       CUT21,
40       SECTION, 
41       UNKNOWN
42     end Operation;   
43      
44     enumeration CheckStatus is
45       CheckUnknown,
46       BadType,
47       SelfIntersect,
48       TooSmallEdge,
49       NonRecoverableFace,
50       IncompatibilityOfVertex,
51       IncompatibilityOfEdge,
52       IncompatibilityOfFace, 
53       OperationAborted,
54       GeomAbs_C0,
55       NotValid
56     end CheckStatus;
57
58     --
59     -- classes 
60     --   
61     deferred class Algo; 
62     deferred class BuilderShape; 
63     class PaveFiller;
64     class Builder; 
65     class BOP;   
66     class Section;   
67     --  
68     deferred class BuilderArea;
69     class BuilderFace;
70     class WireEdgeSet;
71     class WireSplitter;  
72     class ShellSplitter;  
73     class BuilderSolid; 
74     class Tools; 
75     class SectionAttribute; 
76     class CheckerSI; 
77     class ArgumentAnalyzer; 
78     class CheckResult; 
79     class MakerVolume;
80     --
81     --  pointers
82     --
83     pointer PPaveFiller to PaveFiller from BOPAlgo; 
84     pointer PWireEdgeSet to WireEdgeSet from BOPAlgo;  
85     pointer PSection to Section from BOPAlgo;   
86     pointer PBOP to BOP from BOPAlgo;  
87     pointer PBuilder to Builder from BOPAlgo;  
88     pointer PArgumentAnalyzer to ArgumentAnalyzer from BOPAlgo;  
89     -- 
90     imported ListOfCheckResult; 
91     
92 end BOPAlgo;