0024275: Cppcheck warnings on uninitialized class members
[occt.git] / src / TNaming / TNaming_NewShapeIterator.cdl
1 -- Created on: 1996-12-17
2 -- Created by: Remi Lequette
3 -- Copyright (c) 1996-1999 Matra Datavision
4 -- Copyright (c) 1999-2012 OPEN CASCADE SAS
5 --
6 -- The content of this file is subject to the Open CASCADE Technology Public
7 -- License Version 6.5 (the "License"). You may not use the content of this file
8 -- except in compliance with the License. Please obtain a copy of the License
9 -- at http://www.opencascade.org and read it completely before using this file.
10 --
11 -- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
12 -- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
13 --
14 -- The Original Code and all software distributed under the License is
15 -- distributed on an "AS IS" basis, without warranty of any kind, and the
16 -- Initial Developer hereby disclaims all such warranties, including without
17 -- limitation, any warranties of merchantability, fitness for a particular
18 -- purpose or non-infringement. Please see the License for the specific terms
19 -- and conditions governing the rights and limitations under the License.
20
21
22 class NewShapeIterator from TNaming 
23
24         ---Purpose: Iterates on all the descendants of a shape
25
26 uses
27     Shape       from TopoDS,
28     UsedShapes  from TNaming,
29     NamedShape  from TNaming,
30     Iterator    from TNaming,
31     Label       from TDF,
32     PtrNode     from TNaming    
33
34 raises
35      NoMoreObject from Standard,
36      NoSuchObject from Standard 
37
38 is
39
40     Create (aShape      : Shape     from TopoDS; 
41             Transaction : Integer    from Standard;
42             Shapes      : UsedShapes from TNaming)
43     returns NewShapeIterator from TNaming
44     is private;
45
46     Create (aShape      : Shape     from TopoDS; 
47             Shapes      : UsedShapes from TNaming)
48     returns NewShapeIterator from TNaming 
49     is private;  
50
51     Create (aShape      : Shape     from TopoDS; 
52             Transaction : Integer    from Standard;
53             access      : Label from TDF)
54     returns NewShapeIterator from TNaming;
55
56     Create (aShape : Shape     from TopoDS; 
57             access : Label from TDF)
58     returns NewShapeIterator from TNaming;
59     
60     Create (anIterator : NewShapeIterator from TNaming)
61     returns NewShapeIterator from TNaming;
62         ---Purpose: Iterates from the current Shape in <anIterator>
63
64     Create (anIterator  : Iterator from TNaming)
65     returns NewShapeIterator from TNaming;
66         ---Purpose: Iterates from the current Shape in <anIterator>
67         
68     More(me) returns Boolean;
69         ---C++: inline
70     
71     Next(me : in out)
72     raises
73        NoMoreObject from Standard;
74        
75     Label(me) returns Label from TDF
76     raises
77         NoSuchObject from Standard;
78
79     NamedShape(me) returns NamedShape from TNaming
80     raises
81         NoSuchObject from Standard;
82                 
83     Shape(me) returns Shape from TopoDS
84         ---C++: return const&
85         ---Purpose:  Warning! Can be a Null Shape if a descendant is deleted.
86     raises
87         NoSuchObject from Standard;
88         
89     IsModification(me) returns Boolean;
90         ---Purpose: True if the new  shape is a modification  (split,
91         --          fuse,etc...) of the old shape.
92     
93 fields
94     
95     myNode  : PtrNode from TNaming;     
96     myTrans : Integer from Standard; -- is < 0 means in Current Transaction.
97
98 friends
99
100     class Tool   from TNaming,
101     class Name   from TNaming,
102     class Naming from TNaming  
103     
104 end NewShapeIterator;
105
106
107