0024428: Implementation of LGPL license
[occt.git] / src / BOPAlgo / BOPAlgo_ArgumentAnalyzer.cdl
CommitLineData
4e57c75e 1-- Created on: 2004-09-03
2-- Created by: Oleg FEDYAEV
973c2be1 3-- Copyright (c) 2004-2014 OPEN CASCADE SAS
4e57c75e 4--
973c2be1 5-- This file is part of Open CASCADE Technology software library.
4e57c75e 6--
973c2be1 7-- This library is free software; you can redistribute it and / or modify it
8-- under the terms of the GNU Lesser General Public version 2.1 as published
9-- by the Free Software Foundation, with special exception defined in the file
10-- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
11-- distribution for complete text of the license and disclaimer of any warranty.
4e57c75e 12--
973c2be1 13-- Alternatively, this file may be used under the terms of Open CASCADE
14-- commercial license or contractual agreement.
4e57c75e 15
16class ArgumentAnalyzer from BOPAlgo
17 ---Purpose: check the validity of argument(s) for Boolean Operations
18
19uses
20 Shape from TopoDS,
21 Operation from BOPAlgo,
22 CheckStatus from BOPAlgo,
23 ShapeEnum from TopAbs,
24 ListOfCheckResult from BOPAlgo
25
26is
27 Create
28 returns ArgumentAnalyzer;
29 ---Purpose: empty constructor
30
31 SetShape1(me: in out; TheShape: Shape from TopoDS);
32 ---Purpose: sets object shape
33
34 SetShape2(me: in out; TheShape: Shape from TopoDS);
35 ---Purpose: sets tool shape
36
37 GetShape1(me)
38 returns Shape from TopoDS;
39 ---C++: return const &
40 ---Purpose: returns object shape;
41
42 GetShape2(me)
43 returns Shape from TopoDS;
44 ---C++: return const &
45 ---Purpose: returns tool shape
46
47 ---options
48 OperationType(me: in out)
49 returns Operation from BOPAlgo;
50 ---C++: return &
51 ---Purpose: returns ref
52
53 StopOnFirstFaulty(me: in out)
54 returns Boolean from Standard;
55 ---C++: return &
56 ---Purpose: returns ref
57
58 ArgumentTypeMode(me: in out)
59 returns Boolean from Standard;
60 ---C++: return &
61 ---C++: inline
62 ---Purpose: Returns (modifiable) mode
63 -- that means checking types of shapes.
64
65 Prepare(me: in out)
66 is protected;
67 ---Purpose: Prepares data;
68
69 SelfInterMode(me: in out)
70 returns Boolean from Standard;
71 ---C++: return &
72 ---C++: inline
73 ---Purpose: Returns (modifiable) mode that means
74 -- checking of self-intersection of shapes.
75
76 SmallEdgeMode(me: in out)
77 returns Boolean from Standard;
78 ---C++: return &
79 ---C++: inline
80 ---Purpose: Returns (modifiable) mode that means
81 -- checking of small edges.
82
83 RebuildFaceMode(me: in out)
84 returns Boolean from Standard;
85 ---C++: return &
86 ---C++: inline
87 ---Purpose: Returns (modifiable) mode that means
88 -- checking of possibility to split or rebuild faces.
89
90 TangentMode(me: in out)
91 returns Boolean from Standard;
92 ---C++: return &
93 ---C++: inline
94 ---Purpose: Returns (modifiable) mode that means
95 -- checking of tangency between subshapes.
96
97 MergeVertexMode(me: in out)
98 returns Boolean from Standard;
99 ---C++: return &
100 ---C++: inline
101 ---Purpose: Returns (modifiable) mode that means
102 -- checking of problem of merging vertices.
103
104 MergeEdgeMode(me: in out)
105 returns Boolean from Standard;
106 ---C++: return &
107 ---C++: inline
108 ---Purpose: Returns (modifiable) mode that means
109 -- checking of problem of merging edges.
110
0e09ee8e 111 ContinuityMode(me: in out)
112 returns Boolean from Standard;
113 ---C++: return &
114 ---C++: inline
115 ---Purpose: Returns (modifiable) mode that means
116 -- checking of problem of continuity of the shape.
117
4e57c75e 118 ---
119 Perform(me: out);
120 ---Purpose: performs analysis
121
122 HasFaulty(me)
123 returns Boolean from Standard;
124 ---Purpose: result of test
125
126 GetCheckResult(me)
127 returns ListOfCheckResult from BOPAlgo;
128 ---C++: return const &
129 ---Purpose: returns a result of test
130
131 --- protected
132 TestTypes(me: out)
133 is protected;
134
135 TestSelfInterferences(me: out)
136 is protected;
137
138 TestSmallEdge(me: out)
139 is protected;
140
141 TestRebuildFace(me: out)
142 is protected;
143
144 TestTangent(me: out)
145 is protected;
146
147 TestMergeSubShapes(me: out; theType: ShapeEnum from TopAbs)
148 is protected;
149
150 TestMergeVertex(me: out)
151 is protected;
152
153 TestMergeEdge(me: out)
154 is protected;
155
0e09ee8e 156 TestContinuity(me: out)
157 is protected;
158
159-- TestMergeFace(me: out)
160-- is protected;
4e57c75e 161
162
163fields
164
165 myShape1 : Shape from TopoDS;
166 myShape2 : Shape from TopoDS;
167 myStopOnFirst : Boolean from Standard;
168 myOperation : Operation from BOPAlgo;
169 myArgumentTypeMode : Boolean from Standard;
170 mySelfInterMode : Boolean from Standard;
171 mySmallEdgeMode : Boolean from Standard;
172 myRebuildFaceMode : Boolean from Standard;
173 myTangentMode : Boolean from Standard;
174 myMergeVertexMode : Boolean from Standard;
0e09ee8e 175 myMergeEdgeMode : Boolean from Standard;
176 myContinuityMode : Boolean from Standard;
4e57c75e 177 myEmpty1,myEmpty2 : Boolean from Standard;
178 myResult : ListOfCheckResult from BOPAlgo;
179
180
181end ArgumentAnalyzer;