Salome HOME
This commit was generated by cvs2git to create tag 'StableState1'.
[modules/geom.git] / src / GEOMAlgo / GEOMAlgo_Splitter.cdl
1 -- Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
2 -- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
3 -- 
4 -- This library is free software; you can redistribute it and/or
5 -- modify it under the terms of the GNU Lesser General Public
6 -- License as published by the Free Software Foundation; either 
7 -- version 2.1 of the License.
8 -- 
9 -- This library is distributed in the hope that it will be useful 
10 -- but WITHOUT ANY WARRANTY; without even the implied warranty of 
11 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
12 -- Lesser General Public License for more details.
13 --
14 -- You should have received a copy of the GNU Lesser General Public  
15 -- License along with this library; if not, write to the Free Software 
16 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
17 --
18 -- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
19 -- 
20 -- File:        GEOMAlgo_Splitter.cdl
21 -- Created:      
22 -- Author:      Peter KURNEV 
23 --              <pkv@irinox> 
24 -- Copyright:   
25
26 class Splitter from GEOMAlgo 
27         inherits Builder from GEOMAlgo 
28         
29         ---Purpose: Implementation of Gluing Operation Algorithm (GA)  
30
31 uses  
32     
33     ShapeEnum from TopAbs, 
34     Shape from TopoDS,
35     ListOfShape from TopTools, 
36     MapOfShape  from TopTools
37     
38 --raises
39
40 is
41  
42     Create 
43         ---Purpose:  Empty constructor     
44         returns Splitter from GEOMAlgo;  
45     ---C++: alias "Standard_EXPORT virtual ~GEOMAlgo_Splitter();" 
46
47     Clear(me:out) 
48         ---Purpose:  Clears internal fields and arguments             
49         is redefined;   
50          
51     AddTool (me:out;  
52             theShape: Shape from TopoDS) 
53         ---Purpose:  Adds Tool argument theShape of the operation                    
54         is virtual;
55
56     Tools(me) 
57         ---Purpose:  Returns the arguments of the operation       
58         returns ListOfShape from TopTools;  
59     ---C++: return const &   
60
61     SetLimit(me:out; 
62             aLimit:ShapeEnum from TopAbs); 
63          
64     Limit(me)  
65         returns ShapeEnum from TopAbs;   
66     -- 
67     --    Protected methods  
68     --  
69     BuildResult(me:out; 
70             theType: ShapeEnum from TopAbs) 
71     ---Purpose: Build the resulting shapes of type theType      
72         is redefined protected;   
73          
74     PostTreat(me:out)  
75     ---Purpose:  Provides post-tratment actions  
76         is redefined protected; 
77         
78     -- ===================================================== 
79     -- 
80     --  Debug  methods  
81     --
82     AddToolCompound (me:out;  
83             theShape: Shape from TopoDS); 
84     ---Purpose:  Adds Tool arguments of the operation as  
85     --           shapes of upper level of container shape theShape        
86     -- =====================================================
87  
88 fields 
89     myTools           : ListOfShape from TopTools is protected; 
90     myMapTools        : MapOfShape  from TopTools is protected;        
91     myLimit           : ShapeEnum   from TopAbs   is protected;   
92 end Splitter;
93