0024023: Revamp the OCCT Handle -- ambiguity
[occt.git] / src / BOPDS / BOPDS_CommonBlock.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 class CommonBlock from BOPDS 
16     inherits TShared from MMgt   
17         ---Purpose: 
18      
19         ---Purpose:  
20         -- The class BOPDS_CommonBlock is to store  
21         -- the information about pave blocks that have  
22         --  geometry coincidence (in  terms of a tolerance)  with
23         --  a) other pave block(s) 
24         --  b) face(s)
25
26 uses 
27     ListOfInteger from BOPCol,  
28     BaseAllocator from BOPCol,
29     PaveBlock from BOPDS,
30     ListOfPaveBlock from BOPDS
31
32 --raises
33
34 is 
35     Create 
36         returns CommonBlock from BOPDS; 
37         ---Purpose:  
38         --- Empty contructor  
39         ---  
40          
41     Create (theAllocator: BaseAllocator from BOPCol) 
42         returns CommonBlock from BOPDS;      
43         ---Purpose:  
44         ---  Contructor    
45         ---  <theAllocator> - the allocator to manage the memory     
46         ---  
47         
48     AddPaveBlock(me:mutable; 
49             aPB : PaveBlock from BOPDS); 
50         ---Purpose: 
51         --- Modifier   
52         --- Adds the pave block <aPB> to the list of pave blocks    
53         --- of the common block 
54         
55     AddPaveBlocks(me:mutable; 
56             aLPB:ListOfPaveBlock from BOPDS);
57         ---Purpose: 
58         --- Modifier   
59         --- Adds the list of pave blocks <aLPB>  
60         --- to the list of pave blocks  
61         --- of the common block 
62         
63     AddFace(me:mutable; 
64             aF : Integer from Standard); 
65         ---Purpose: 
66         --- Modifier   
67         --- Adds the index of the face <aF>  
68         --- to the list of indices of faces  
69         --- of the common block 
70         
71     AddFaces (me:mutable; 
72             aLF:ListOfInteger from BOPCol); 
73         ---Purpose: 
74         --- Modifier   
75         --- Adds the list of indices of faces <aLF>  
76         --- to the list of indices of faces 
77         --- of the common block  
78          
79     PaveBlocks(me) 
80         returns ListOfPaveBlock from BOPDS; 
81     ---C++:  return const &  
82         ---Purpose: 
83         --- Selector   
84         --- Returns the list of pave blocks  
85         --- of the common block  
86         
87     Faces (me) 
88         returns ListOfInteger from BOPCol; 
89     ---C++:  return const &  
90         ---Purpose: 
91         --- Selector   
92         --- Returns the list of indices of faces  
93         --- of the common block   
94         
95     PaveBlock1  (me) 
96         returns  PaveBlock from BOPDS; 
97     ---C++:  return const &     
98         ---Purpose: 
99         --- Selector   
100         --- Returns the first pave block  
101         --- of the common block   
102         
103     PaveBlockOnEdge  (me:mutable;  
104             theIndex: Integer from Standard) 
105         returns  PaveBlock from BOPDS; 
106     ---C++:  return  &     
107         ---Purpose: 
108         --- Selector   
109         --- Returns the pave block that belongs 
110         --- to the edge with index <theIx>       
111         
112     IsPaveBlockOnFace  (me;  
113             theIndex: Integer from Standard) 
114         returns  Boolean from Standard; 
115         ---Purpose: 
116         --- Query   
117         --- Returns true if the common block contains 
118         --  a pave block that belongs  
119         --- to the face with index <theIx> 
120
121     IsPaveBlockOnEdge  (me;  
122             theIndex: Integer from Standard) 
123         returns  Boolean from Standard;   
124         ---Purpose: 
125         --- Query   
126         --- Returns true if the common block contains 
127         --  a pave block that belongs  
128         --- to the edge with index <theIx> 
129
130     Contains(me; 
131             thePB:PaveBlock from BOPDS) 
132         returns Boolean from Standard; 
133         ---Purpose: 
134         --- Query   
135         --- Returns true if the common block contains 
136         --  a pave block that is equal  to <thePB>  
137
138     Contains(me; 
139             theF: Integer from Standard) 
140         returns Boolean from Standard;
141         ---Purpose: 
142         --- Query   
143         --- Returns true if the common block contains 
144         --  the face with index equal  to <theF>   
145         
146     SetEdge(me:mutable; 
147             theEdge:Integer from Standard); 
148         ---Purpose: 
149         --- Modifier   
150         --- Assign the index <theEdge> as the edge index  
151         --- to all pave blocks of the common block 
152
153     Edge(me) 
154         returns Integer from Standard; 
155         ---Purpose: 
156         --- Selector   
157         --- Returns the index of the edge  
158         --- of  all pave blocks of the common block 
159     
160     Dump(me); 
161     
162 fields 
163     myPaveBlocks: ListOfPaveBlock from BOPDS  is protected;  
164     myFaces     : ListOfInteger   from BOPCol is protected;  
165             
166 end CommonBlock;
167
168
169
170
171
172
173
174