0025166: STEP Reader - allow GEOMETRIC_SET entity to accept non-geometric children
[occt.git] / src / StepToTopoDS / StepToTopoDS_Builder.cdl
1 -- Created on: 1994-12-16
2 -- Created by: Frederic MAUPAS
3 -- Copyright (c) 1994-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 Builder from StepToTopoDS
18     inherits Root from StepToTopoDS
19     
20     ---Purpose:
21     --         
22
23
24 uses
25
26     ManifoldSolidBrep           from StepShape,
27     BrepWithVoids               from StepShape,
28     FacetedBrep                 from StepShape,
29     FacetedBrepAndBrepWithVoids from StepShape,
30     ShellBasedSurfaceModel      from StepShape,
31     EdgeBasedWireframeModel     from StepShape,
32     FaceBasedSurfaceModel       from StepShape,
33     GeometricSet                from StepShape,
34     Shape                       from TopoDS,
35     BuilderError                from StepToTopoDS,
36     TransientProcess            from Transfer,
37     NMTool                      from StepToTopoDS,
38     ActorRead                   from STEPControl,
39     ActorOfTransientProcess     from Transfer
40     
41     raises NotDone from StdFail
42     
43 is 
44
45     Create returns Builder from StepToTopoDS;
46     
47     Create (S  : ManifoldSolidBrep from StepShape;
48             TP : TransientProcess  from Transfer )
49         returns Builder from StepToTopoDS;
50      
51     Create (S  : BrepWithVoids from StepShape;
52             TP : TransientProcess  from Transfer )
53         returns Builder from StepToTopoDS;
54
55     Create ( S : FacetedBrep from StepShape;
56             TP : TransientProcess  from Transfer )
57         returns Builder from StepToTopoDS;
58
59     Create (S  : FacetedBrepAndBrepWithVoids from StepShape;
60             TP : TransientProcess  from Transfer )
61         returns Builder from StepToTopoDS;
62
63     Create (S      : ShellBasedSurfaceModel from StepShape;
64             TP     : TransientProcess  from Transfer;
65             NMTool : in out NMTool from StepToTopoDS )
66         returns Builder from StepToTopoDS;
67
68     Create ( S : GeometricSet from StepShape;
69             TP : TransientProcess  from Transfer )
70         returns Builder from StepToTopoDS;
71
72     Init (me : in out;
73           S  : ManifoldSolidBrep from StepShape;
74           TP : TransientProcess  from Transfer );
75
76     Init (me : in out;
77           S  : BrepWithVoids from StepShape;
78           TP : TransientProcess  from Transfer );
79
80     Init (me : in out;
81           S  : FacetedBrep from StepShape;
82           TP : TransientProcess  from Transfer );
83
84     Init (me : in out;
85           S  : FacetedBrepAndBrepWithVoids from StepShape;
86           TP : TransientProcess  from Transfer );
87           
88     Init (me     : in out;
89            S     : ShellBasedSurfaceModel from StepShape;
90           TP     : TransientProcess  from Transfer;
91           NMTool : in out NMTool from StepToTopoDS );
92           
93     Init (me : in out;
94           S  : EdgeBasedWireframeModel from StepShape;
95           TP : TransientProcess  from Transfer );
96           
97     Init (me : in out;
98           S  : FaceBasedSurfaceModel from StepShape;
99           TP : TransientProcess  from Transfer );
100           
101     Init (me : in out;
102           S  : GeometricSet from StepShape;
103           TP : TransientProcess  from Transfer;
104           RA : ActorOfTransientProcess from Transfer = NULL;
105           isManifold : Boolean = Standard_False );
106           
107     Value (me) returns Shape from TopoDS
108         raises NotDone
109         is static;
110         ---C++: return const&
111     
112     Error (me) returns BuilderError from StepToTopoDS
113         is static;
114
115 fields
116
117     myError  : BuilderError from StepToTopoDS;    
118     
119     myResult : Shape from TopoDS;
120     
121 end Builder;