0021762: Integration of new Boolean Operation algorithm to OCCT.
[occt.git] / src / BOPAlgo / BOPAlgo_BOP.cdl
CommitLineData
4e57c75e 1-- Created by: Peter KURNEV
2-- Copyright (c) 1999-2012 OPEN CASCADE SAS
3--
4-- The content of this file is subject to the Open CASCADE Technology Public
5-- License Version 6.5 (the "License"). You may not use the content of this file
6-- except in compliance with the License. Please obtain a copy of the License
7-- at http://www.opencascade.org and read it completely before using this file.
8--
9-- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
10-- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
11--
12-- The Original Code and all software distributed under the License is
13-- distributed on an "AS IS" basis, without warranty of any kind, and the
14-- Initial Developer hereby disclaims all such warranties, including without
15-- limitation, any warranties of merchantability, fitness for a particular
16-- purpose or non-infringement. Please see the License for the specific terms
17-- and conditions governing the rights and limitations under the License.
18
19class BOP from BOPAlgo
20 inherits Builder from BOPAlgo
21---Purpose:
22
23uses
24 Shape from TopoDS,
25 BaseAllocator from BOPCol,
26 ListOfShape from BOPCol,
27 MapOfShape from BOPCol,
28 IndexedDataMapOfShapeListOfShape from BOPCol,
29 Operation from BOPAlgo,
30 PaveFiller from BOPAlgo
31
32--raises
33
34is
35 Create
36 ---Purpose: Empty constructor
37 returns BOP from BOPAlgo;
38 ---C++: alias "Standard_EXPORT virtual ~BOPAlgo_BOP();"
39
40 Create (theAllocator: BaseAllocator from BOPCol)
41 returns BOP from BOPAlgo;
42
43 Clear(me:out)
44 is redefined;
45 ---Purpose: Clears internal fields and arguments
46
47 AddArgument (me:out;
48 theShape: Shape from TopoDS)
49 ---Purpose: Adds Object argument of the operation
50 is redefined;
51
52 AddTool (me:out;
53 theShape: Shape from TopoDS)
54 ---Purpose: Adds Tool argument of the operation
55 is virtual;
56
57 Object(me)
58 returns Shape from TopoDS;
59 ---C++: return const &
60
61 Tool(me)
62 returns Shape from TopoDS;
63 ---C++: return const &
64
65 SetOperation(me:out;
66 theOperation: Operation from BOPAlgo);
67
68 Operation(me)
69 returns Operation from BOPAlgo;
70 --
71 -- protected methods
72 --
73 CheckData(me:out)
74 is redefined protected;
75
76 Prepare(me:out)
77 is redefined protected;
78 ---Purpose: Provides preparing actions
79
80 PerformInternal(me:out;
81 thePF:PaveFiller from BOPAlgo)
82 is redefined protected;
83 ---Purpose: Performs calculations using prepared Filler
84 -- object theDSF
85
86 BuildShape(me:out)
87 is protected;
88
89 BuildRC(me:out)
90 is protected;
91
92 BuildSolid(me:out)
93 is protected;
94
95 BuildSection(me:out)
96 is protected;
97
98 IsBoundSplits(me:out;
99 theS:Shape from TopoDS;
100 theMEF:out IndexedDataMapOfShapeListOfShape from BOPCol)
101 returns Boolean from Standard
102 is protected;
103
104fields
105 myNbArgs : Integer from Standard is protected;
106 myOperation : Operation from BOPAlgo is protected;
107 myArgs : Shape from TopoDS[2] is protected;
108 myDims : Integer from Standard[2] is protected;
109 --
110 myRC : Shape from TopoDS is protected;
111 myTools : ListOfShape from BOPCol is protected;
112 myMapTools : MapOfShape from BOPCol is protected;
113
114end BOP;