0025255: API to control storage with triangulation in BinTools
[occt.git] / src / BinMNaming / BinMNaming_NamedShapeDriver.cdl
1 -- Created on: 2004-04-08
2 -- Created by: Sergey ZARITCHNY <szy@opencascade.com>
3 -- Copyright (c) 2004-2014 OPEN CASCADE SAS
4 --
5 -- This file is part of Open CASCADE Technology software library.
6 --
7 -- This library is free software; you can redistribute it and/or modify it under
8 -- the terms of the GNU Lesser General Public License version 2.1 as published
9 -- by the Free Software Foundation, with special exception defined in the file
10 -- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
11 -- distribution for complete text of the license and disclaimer of any warranty.
12 --
13 -- Alternatively, this file may be used under the terms of Open CASCADE
14 -- commercial license or contractual agreement.
15
16 class NamedShapeDriver from BinMNaming inherits ADriver from BinMDF
17
18         ---Purpose: NamedShape  Attribute Driver.
19
20 uses
21     SRelocationTable from BinObjMgt,
22     RRelocationTable from BinObjMgt,
23     Persistent       from BinObjMgt,
24     MessageDriver    from CDM,
25     Attribute        from TDF, 
26     ShapeSet         from BinTools,
27     LocationSet      from BinTools
28
29 is
30     Create (theMessageDriver:MessageDriver from CDM)
31         returns NamedShapeDriver from BinMNaming;
32
33     NewEmpty (me)  returns Attribute from TDF;
34
35     Paste(me; Source     : Persistent from BinObjMgt;
36               Target     : Attribute from TDF;
37               RelocTable : out RRelocationTable from BinObjMgt)
38         returns Boolean from Standard;
39
40     Paste(me; Source     : Attribute from TDF;
41               Target     : in out Persistent from BinObjMgt;
42               RelocTable : out SRelocationTable from BinObjMgt);
43     
44     ReadShapeSection (me: mutable; theIS: in out IStream from Standard);
45       ---Purpose: Input the shapes from Bin Document file
46
47     WriteShapeSection (me: mutable; theOS: in out OStream from Standard);
48       ---Purpose: Output the shapes into Bin Document file
49
50     Clear (me:mutable);
51       ---Purpose: Clear myShapeSet 
52        
53     SetWithTriangles(me: mutable; isWithTriangles : Boolean from Standard);  
54     ---C++: inline 
55     ---Purpose: set whether to store triangulation  
56        
57     SetFormatNb(me: mutable; theFormat : Integer from Standard);  
58     ---C++: inline 
59     ---Purpose: set the format of topology  
60     --          First : does not write CurveOnSurface UV Points into the file
61     --                  on reading calls Check() method.
62     --          Second: stores CurveOnSurface UV Points.
63
64     GetFormatNb(me) returns Integer from Standard; 
65     ---Purpose: get the format of topology  
66     ---C++: inline 
67     
68     GetShapesLocations(me: mutable) returns LocationSet from BinTools; 
69     ---Purpose: get the format of topology  
70     ---C++: return &
71     ---C++: inline 
72     
73 fields
74      
75     myShapeSet          : ShapeSet from BinTools; 
76     myFormatNb          : Integer  from Standard;
77 end NamedShapeDriver;