0024157: Parallelization of assembly part of BO
[occt.git] / src / DNaming / DNaming_RevolutionDriver.cdl
1 -- Created on: 2009-06-17
2 -- Created by: Sergey ZARITCHNY <sergey.zaritchny@opencascade.com>
3 -- Copyright (c) 2009-2012 OPEN CASCADE SAS
4 --
5 -- The content of this file is subject to the Open CASCADE Technology Public
6 -- License Version 6.5 (the "License"). You may not use the content of this file
7 -- except in compliance with the License. Please obtain a copy of the License
8 -- at http://www.opencascade.org and read it completely before using this file.
9 --
10 -- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
11 -- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
12 --
13 -- The Original Code and all software distributed under the License is
14 -- distributed on an "AS IS" basis, without warranty of any kind, and the
15 -- Initial Developer hereby disclaims all such warranties, including without
16 -- limitation, any warranties of merchantability, fitness for a particular
17 -- purpose or non-infringement. Please see the License for the specific terms
18 -- and conditions governing the rights and limitations under the License.
19
20
21
22 class RevolutionDriver from DNaming inherits Driver from TFunction
23
24         ---Purpose: 
25 uses
26      Label       from TDF, 
27      Logbook     from TFunction,
28      Function    from TFunction,
29      ExtendedString from TCollection,
30      MakeRevol   from BRepPrimAPI, 
31      Shape       from TopoDS
32 is
33     Create returns mutable RevolutionDriver from DNaming;
34     ---Purpose: Constructor
35
36     ---Purpose: validation
37     --          ==========
38
39     Validate(me; theLog : in out Logbook from TFunction)
40     is redefined;
41     ---Purpose: Validates labels of a function in <log>.
42     --          In regeneration mode this method must be called (by the
43     --          solver) even if the function is not executed, to build
44     --          the valid label scope.
45
46     ---Purpose: execution of function
47     --          ======================
48
49     MustExecute (me; theLog : Logbook from TFunction)
50     ---Purpose: Analyse in <log> if the loaded function must be executed
51     --          (i.e.arguments are modified) or not.
52     --          If the Function label itself is modified, the function must
53     --          be executed.
54     returns Boolean from Standard
55     is redefined;
56
57     Execute (me; theLog : in out Logbook from TFunction)
58     ---Purpose: Execute the function and push in <log> the impacted
59     --          labels (see method SetImpacted).
60     returns Integer from Standard
61     is redefined;
62  
63     LoadNamingDS(me; theResultLabel : Label from TDF; mkRevol : in out MakeRevol from BRepPrimAPI; 
64                      Basis : Shape from TopoDS; Context : Shape from TopoDS)  
65     is private;      
66
67
68 end RevolutionDriver;