b311480e |
1 | -- Created on: 1994-12-22 |
2 | -- Created by: Christian CAILLET |
3 | -- Copyright (c) 1994-1999 Matra Datavision |
973c2be1 |
4 | -- Copyright (c) 1999-2014 OPEN CASCADE SAS |
b311480e |
5 | -- |
973c2be1 |
6 | -- This file is part of Open CASCADE Technology software library. |
b311480e |
7 | -- |
d5f74e42 |
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 |
973c2be1 |
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. |
b311480e |
13 | -- |
973c2be1 |
14 | -- Alternatively, this file may be used under the terms of Open CASCADE |
15 | -- commercial license or contractual agreement. |
7fd59977 |
16 | |
17 | class StepType from StepSelect inherits Signature from IFSelect |
18 | |
19 | ---Purpose : StepType is a Signature specific to Step definitions : it |
20 | -- considers the type as defined in STEP Schemas, the same which |
21 | -- is used in files. |
22 | -- For a Complex Type, if its definition is known, StepType |
23 | -- produces the list of basic types, separated by commas, the |
24 | -- whole between brackets : "(TYPE1,TYPE2..)". |
25 | -- If its precise definition is not known (simply it is known as |
26 | -- Complex, it can be recognised, but the list is produced at |
27 | -- Write time only), StepType produces : "(..COMPLEX TYPE..)" |
28 | |
29 | uses CString, Transient, AsciiString from TCollection, |
30 | Protocol from Interface, InterfaceModel, |
31 | Protocol from StepData, WriterLib from StepData |
32 | |
33 | raises InterfaceError |
34 | |
35 | is |
36 | |
6e33d3ce |
37 | Create returns StepType; |
7fd59977 |
38 | ---Purpose : Creates a Signature for Step Type. Protocol is undefined here, |
39 | -- hence no Signature may yet be produced. The StepType signature |
40 | -- requires a Protocol before working |
41 | |
42 | SetProtocol (me : mutable; proto : Protocol from Interface) |
43 | ---Purpose : Sets the StepType signature to work with a Protocol : this |
44 | -- initialises the library |
45 | raises InterfaceError; |
46 | -- Error if the Protocol is not from StepData |
47 | |
48 | Value (me; ent : any Transient; model : InterfaceModel) returns CString; |
49 | ---Purpose : Returns the Step Type defined from the Protocol (see above). |
50 | -- If <ent> is not recognised, produces "..NOT FROM SCHEMA <name>.." |
51 | |
52 | fields |
53 | |
54 | theproto : Protocol from StepData; |
55 | thelib : WriterLib from StepData is protected; |
56 | |
57 | end StepType; |