Salome HOME
Join modifications from BR_Dev_For_4_0 tag V4_1_1.
[modules/geom.git] / src / NMTDS / NMTDS_Iterator.cdl
1 -- Copyright (C) 2006 SAMTECH
2 -- 
3 -- This library is free software; you can redistribute it and/or
4 -- modify it under the terms of the GNU Lesser General Public
5 -- License as published by the Free Software Foundation; either 
6 -- version 2.1 of the License.
7 -- 
8 -- This library is distributed in the hope that it will be useful 
9 -- but WITHOUT ANY WARRANTY; without even the implied warranty of 
10 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
11 -- Lesser General Public License for more details.
12 --
13 -- You should have received a copy of the GNU Lesser General Public  
14 -- License along with this library; if not, write to the Free Software 
15 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
16 --
17 -- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
18 --  
19 -- File:        NMTDS_Iterator.cdl
20 -- Created:     Sun May 07 14:58:16 2006
21 -- Author:      Peter KURNEV
22 --              <peter@PREFEX>
23
24
25
26 class Iterator from NMTDS 
27      
28         ---Purpose: 
29
30 uses  
31     DataMapOfIntegerListOfInteger from TColStd,
32     ShapeEnum from TopAbs, 
33     ShapesDataStructure  from NMTDS,
34     PShapesDataStructure from NMTDS,
35     ListOfPassKeyBoolean from NMTDS,
36     ListIteratorOfListOfPassKeyBoolean from NMTDS,
37     PassKeyBoolean from NMTDS 
38     
39 --raises
40
41 is 
42     Create   
43         returns Iterator from NMTDS;
44     ---C++: alias "Standard_EXPORT virtual ~NMTDS_Iterator();" 
45     
46    
47     SetDS(me:out; 
48             pDS:PShapesDataStructure from NMTDS); 
49      
50     DS(me) 
51       returns ShapesDataStructure from NMTDS; 
52     ---C++:return const & 
53      
54     Initialize(me: out;  
55             aType1: ShapeEnum from TopAbs;
56             aType2: ShapeEnum from TopAbs); 
57     More(me)  
58         returns Boolean from Standard; 
59          
60     Next(me: out); 
61      
62     Current(me; aIndex1:out Integer from Standard;
63                 aIndex2:out Integer from Standard;
64                 aWithSubShape: out Boolean from Standard); 
65         
66     Prepare(me:out) 
67         is virtual; 
68       
69     Intersect(me:out) 
70         is virtual protected; 
71         
72     ExpectedLength(me) 
73         returns Integer from Standard;  
74          
75     BlockLength(me) 
76         returns Integer from Standard;  
77      
78     SDVertices(me) 
79         returns DataMapOfIntegerListOfInteger from TColStd; 
80     ---C++:return const &  
81      
82     FillMVSD(myclass; 
83         aMVSD1:DataMapOfIntegerListOfInteger from TColStd; 
84         aMVSD2:out DataMapOfIntegerListOfInteger from TColStd); 
85  
86 fields
87     myDS       :PShapesDataStructure from NMTDS     is protected; 
88     myLists    :ListOfPassKeyBoolean from NMTDS [6] is protected;  
89     myIterator :ListIteratorOfListOfPassKeyBoolean from NMTDS is protected; 
90     myEmptyList:ListOfPassKeyBoolean from NMTDS is protected; 
91     myLength   :Integer from Standard is protected; 
92     --
93     myMVSD     :DataMapOfIntegerListOfInteger from TColStd is protected;     
94
95 end Iterator;