Salome HOME
untabify
[modules/geom.git] / src / NMTDS / NMTDS_ShapesDataStructure.cdl
1 --  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
2 --
3 --  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 --  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
5 --
6 --  This library is free software; you can redistribute it and/or
7 --  modify it under the terms of the GNU Lesser General Public
8 --  License as published by the Free Software Foundation; either
9 --  version 2.1 of the License.
10 --
11 --  This library is distributed in the hope that it will be useful,
12 --  but WITHOUT ANY WARRANTY; without even the implied warranty of
13 --  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14 --  Lesser General Public License for more details.
15 --
16 --  You should have received a copy of the GNU Lesser General Public
17 --  License along with this library; if not, write to the Free Software
18 --  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
19 --
20 --  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
21 --
22 --  File:       NMTDS_ShapesDataStructure.cdl
23 --  Created:    Mon Dec  1 10:17:05 2003
24 --  Author:     Peter KURNEV
25 --
26 class ShapesDataStructure from NMTDS  
27     inherits ShapesDataStructure from BooleanOperations  
28
29         ---Purpose: 
30
31 uses  
32     Box from Bnd,
33     IndexedMapOfInteger from TColStd,
34     Shape from TopoDS, 
35     IndexedDataMapOfShapeAncestorsSuccessors from BooleanOperations,
36     CArray1OfIndexRange from NMTDS, 
37     IndexedDataMapOfIntegerIndexedDataMapOfShapeInteger from NMTDS
38 --raises
39
40 is 
41     Create 
42         returns ShapesDataStructure from NMTDS; 
43          
44     SetCompositeShape(me:out; 
45             aS:Shape from TopoDS);   
46          
47     Init(me:out);
48      
49     Ranges(me) 
50         returns CArray1OfIndexRange from NMTDS; 
51     ---C++: return const & 
52      
53     CompositeShape(me) 
54         returns Shape from TopoDS; 
55     ---C++: return const &  
56      
57     ShapeRangeIndex(me; 
58         aId:Integer from Standard) 
59         returns  Integer from Standard;
60      
61     Rank (me; 
62           anIndex:Integer from Standard) 
63           returns Integer from Standard    
64         is redefined;                   
65          
66     ShapeIndex  (me;  
67             aS:Shape from TopoDS; 
68             iRank:Integer from Standard) 
69         returns Integer from Standard  
70         is redefined;   
71
72 -- Modified to Add new methods Thu Sep 14 14:35:18 2006 
73 -- Contribution of Samtech www.samcef.com BEGIN 
74     FillMap (me;  
75             aS  :Shape from TopoDS; 
76             aMSA: out IndexedDataMapOfShapeAncestorsSuccessors from BooleanOperations;  
77             aMS : out IndexedDataMapOfShapeAncestorsSuccessors from BooleanOperations);  
78      
79     FillSubshapes (me;  
80             aS  :Shape from TopoDS; 
81             aMSA:out IndexedDataMapOfShapeAncestorsSuccessors from BooleanOperations;  
82             aMS :out IndexedDataMapOfShapeAncestorsSuccessors from BooleanOperations); 
83 -- Contribution of Samtech www.samcef.com END 
84
85     GetAllSuccessors(me; 
86         anIndex:Integer from Standard; 
87         aScrs  :out IndexedMapOfInteger from TColStd);   
88
89     ComputeBoxEx(me; 
90         anIndex:Integer from Standard; 
91         aBox:out Box from Bnd);   
92
93 fields
94     myCompositeShape:  Shape from TopoDS is protected; 
95     myRanges        :  CArray1OfIndexRange from NMTDS is protected; 
96     myShapeIndexMap :  IndexedDataMapOfIntegerIndexedDataMapOfShapeInteger from NMTDS is protected;  
97      
98 end ShapesDataStructure;
99