0024166: Unable to create file with "Save" menu of voxeldemo Qt sample
[occt.git] / src / BOPDS / BOPDS_SubIterator.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 SubIterator from BOPDS
20
21 ---Purpose:
22 -- The class BOPDS_SubIterator is
23 -- 1.to compute intersections between two sub-sets of
24 -- BRep sub-shapes
25 -- of arguments of an operation (see the class BOPDS_DS)
26 -- in terms of theirs bounding boxes
27 -- 2.provides interface to iterare the pairs of
28 -- intersected sub-shapes of given type
29
30uses
31 ShapeEnum from TopAbs,
32 BaseAllocator from BOPCol,
33 ListOfInteger from BOPCol,
34 PListOfInteger from BOPCol,
35 DS from BOPDS,
36 PDS from BOPDS,
37 PassKeyBoolean from BOPDS,
38 ListOfPassKeyBoolean from BOPDS,
39 ListIteratorOfListOfPassKeyBoolean from BOPDS,
40 VectorOfListOfPassKeyBoolean from BOPDS
41
42
43--raises
44
45is
46 Create
47 returns SubIterator from BOPDS;
48 ---C++: alias "Standard_EXPORT virtual ~BOPDS_SubIterator();"
49 ---Purpose:
50 --- Empty contructor
51 ---
52
53 Create (theAllocator: BaseAllocator from BOPCol)
54 returns SubIterator from BOPDS;
55 ---Purpose:
56 --- Contructor
57 --- theAllocator - the allocator to manage the memory
58 ---
59
60 SetDS(me:out;
61 pDS:PDS from BOPDS);
62 ---Purpose:
63 --- Modifier
64 --- Sets the data structure <pDS> to process
65
66 DS(me)
67 returns DS from BOPDS;
68 ---C++:return const &
69 ---Purpose:
70 --- Selector
71 --- Returns the data structure
72
73 SetSubSet1(me:out;
74 theLI:ListOfInteger from BOPCol);
75 ---Purpose:
76 --- Modifier
77 --- Sets the first set of indices <theLI> to process
78
79 SubSet1(me)
80 returns ListOfInteger from BOPCol;
81 ---C++:return const &
82 ---Purpose:
83 --- Selector
84 --- Returns the first set of indices to process
85
86 SetSubSet2(me:out;
87 theLI:ListOfInteger from BOPCol);
88 ---Purpose:
89 --- Modifier
90 --- Sets the second set of indices <theLI> to process
91 SubSet2(me)
92 returns ListOfInteger from BOPCol;
93 ---C++:return const &
94 ---Purpose:
95 --- Selector
96 --- Returns the second set of indices to process
97
98 Initialize(me:out);
99 ---Purpose:
100 --- Initializes the iterator
101
102 More(me)
103 returns Boolean from Standard;
104 ---Purpose:
105 --- Returns true if still there are pairs
106 -- of intersected shapes
107
108 Next(me:out);
109 ---Purpose:
110 --- Moves iterations ahead
111
112 Value(me;
113 theIndex1:out Integer from Standard;
114 theIndex2:out Integer from Standard);
115 ---Purpose:
116 --- Returns indices (DS) of intersected shapes
117 --- theIndex1 - the index of the first shape
118 --- theIndex2 - the index of the second shape
119
120 Prepare(me:out)
121 is virtual;
122 ---Purpose:
123 --- Perform the intersection algorithm and prepare
124 --- the results to be used
125
126 Intersect(me:out)
127 is virtual protected;
128
129
130fields
131 myAllocator: BaseAllocator from BOPCol is protected;
132 myDS : PDS from BOPDS is protected;
133 myList : ListOfPassKeyBoolean from BOPDS is protected;
134 myIterator : ListIteratorOfListOfPassKeyBoolean from BOPDS is protected;
135 mySubSet1 : PListOfInteger from BOPCol is protected;
136 mySubSet2 : PListOfInteger from BOPCol is protected;
137
138end SubIterator;