0025367: IGES and BRep persistence - support unicode file names on Windows
[occt.git] / src / StepSelect / StepSelect_StepType.cdl
1 -- Created on: 1994-12-22
2 -- Created by: Christian CAILLET
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 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
37     Create returns StepType;
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;