1 -- Created on: 1995-02-20
2 -- Created by: Christian CAILLET
3 -- Copyright (c) 1995-1999 Matra Datavision
4 -- Copyright (c) 1999-2014 OPEN CASCADE SAS
6 -- This file is part of Open CASCADE Technology software library.
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.
14 -- Alternatively, this file may be used under the terms of Open CASCADE
15 -- commercial license or contractual agreement.
17 class Controller from STEPControl inherits Controller from XSControl
19 ---Purpose : defines basic controller for STEP processor
24 Protocol from Interface,
25 InterfaceModel from Interface,
26 WorkLibrary from IFSelect,
27 ReturnStatus from IFSelect,
28 ActorOfTransientProcess from Transfer,
29 FinderProcess from Transfer,
30 ActorOfFinderProcess from Transfer,
32 WorkSession from XSControl
36 Create returns Controller from STEPControl;
37 ---Purpose : Initializes the use of STEP Norm (the first time) and
38 -- returns a Controller
40 NewModel (me) returns InterfaceModel from Interface;
41 ---Purpose : Creates a new empty Model ready to receive data of the Norm.
42 -- It is taken from STEP Template Model
44 ActorRead (me; model : InterfaceModel)
45 returns ActorOfTransientProcess from Transfer;
46 ---Purpose : Returns a new Actor for Read attached to the pair (norm,appli)
47 -- It is a PmsToTopoDSAct_Actor
49 -- Redefined Transfer for Write (using Actor) --
50 Customise (me: mutable; WS : in out WorkSession from XSControl) is redefined;
52 TransferWriteShape (me; shape : Shape from TopoDS;
53 FP : FinderProcess from Transfer;
54 model : InterfaceModel from Interface;
55 modetrans : Integer = 0) returns ReturnStatus
57 ---Purpose : Takes one Shape and transfers it to the InterfaceModel
58 -- (already created by NewModel for instance)
59 -- <modeshape> is to be interpreted by each kind of XstepAdaptor
60 -- Returns a status : 0 OK 1 No result 2 Fail -1 bad modeshape
61 -- -2 bad model (requires a StepModel)
62 -- modeshape : 1 Facetted BRep, 2 Shell, 3 Manifold Solid
64 -- for global initialisation
66 Init (myclass) returns Boolean;
67 ---Purpose : Standard Initialisation. It creates a Controller for STEP
68 -- and records it to various names, available to select it later
69 -- Returns True when done, False if could not be done