0024830: Remove redundant keyword 'mutable' in CDL declarations
[occt.git] / src / AIS / AIS_MultipleConnectedShape.cdl
1 -- Created on: 1997-04-22
2 -- Created by: Guest Design
3 -- Copyright (c) 1997-1999 Matra Datavision
4 -- Copyright (c) 1999-2014 OPEN CASCADE SAS
5 --
6 -- This file is part of Open CASCADE Technology software library.
7 --
8 -- This library is free software; you can redistribute it and/or modify it under
9 -- the terms of the GNU Lesser General Public License version 2.1 as published
10 -- by the Free Software Foundation, with special exception defined in the file
11 -- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
12 -- distribution for complete text of the license and disclaimer of any warranty.
13 --
14 -- Alternatively, this file may be used under the terms of Open CASCADE
15 -- commercial license or contractual agreement.
16
17 class MultipleConnectedShape from AIS inherits MultipleConnectedInteractive from AIS
18
19     
20         ---Purpose: Constructs an Interactive Object connected to a list of
21         -- Interactive Objects having a Shape. These include
22         -- AIS_Shape, and AIS_ConnectedShape.
23         -- Presentation of Hidden parts is calculated automatically.
24         -- You define the Interactive Object by gathering
25         -- together several other object presentations as in
26         -- AIS_MultipleConnectedInteractive.
27         
28 uses
29
30     PresentationManager3d  from PrsMgr,
31     Shape                from TopoDS,
32     Projector            from Prs3d,
33     Presentation         from Prs3d,
34     Selection            from SelectMgr,
35     Integer              from Standard,
36     Transformation       from Geom,
37     KindOfInteractive    from AIS
38     
39 raises
40     NotImplemented from Standard
41
42 is
43
44     Create (aShape : Shape from TopoDS) 
45     returns  MultipleConnectedShape  from  AIS;
46         ---Purpose: Initializes the shape aShape, a multiple connected
47         -- Interactive Object grouping different
48         -- projector-dependent representations of an entity.
49     Type(me) returns KindOfInteractive from AIS
50     is redefined virtual;
51
52     Signature(me) returns Integer from Standard
53     is redefined virtual;
54
55     AcceptShapeDecomposition(me) 
56     returns Boolean from Standard is redefined virtual;
57         ---Purpose: Returns true is shape decomposition is accepted.
58
59     Set(me:mutable;ashap : Shape from TopoDS) is static;
60         ---Purpose: Constructs the reference shape ashap.
61         ---C++: inline
62
63     Shape(me)  returns Shape from TopoDS ;
64         ---Purpose: Returns the shape which is constructed in Set.
65         ---C++: inline
66         ---C++: return const&
67
68
69     Compute(me:mutable;
70                 aProjector   :         Projector    from Prs3d;
71                 aPresentation: Presentation from Prs3d)
72     is redefined virtual protected;
73  
74     Compute(me:mutable;
75                 aProjector   :         Projector    from Prs3d;
76                 aTrsf        :         Transformation from Geom;
77                 aPresentation: Presentation from Prs3d)
78     is redefined virtual protected;
79  
80     ComputeSelection(me:mutable; aSelection : Selection from SelectMgr;
81                                  aMode      :        Integer   from Standard)
82     is redefined virtual protected;
83     
84     
85     
86     Compute(me:mutable;
87                 aProjector   :         Projector    from Prs3d;
88                 aPresentation: Presentation from Prs3d;
89                 aShape       :         Shape from TopoDS)
90     is private;
91      
92     Compute(me:mutable;
93             aPresentationManager :         PresentationManager3d from PrsMgr;
94             aPresentation        : Presentation          from Prs3d;
95             aMode                :         Integer               from Standard = 0)
96         ---Level: Internal 
97         ---Purpose: this method is redefined virtual;
98         --          when the instance is connected to another
99         --          InteractiveObject,this method doesn't
100         --          compute anything, but just uses the 
101         --          presentation of this last object, with
102         --          a transformation if there's one stored. 
103     is redefined virtual private;
104     
105 fields
106     myShape : Shape   from TopoDS; -- celle qui sert au compute Hidden lines et selection
107 end MultipleConnectedShape;