0022627: Change OCCT memory management defaults
[occt.git] / src / XCAFDoc / XCAFDoc_DocumentTool.cdl
1 -- File:        XCAFDoc_DocumentTool.cdl
2 -- Created:     Wed Aug 30 15:14:59 2000
3 -- Author:      data exchange team
4 --              <det@strelox.nnov.matra-dtv.fr>
5 ---Copyright:    Matra Datavision 2000
6
7
8 class DocumentTool from XCAFDoc inherits Attribute from TDF
9
10         ---Purpose: Defines sections structure of an XDE document.
11
12 uses
13     Label from TDF,
14     Document from TDocStd,
15     RelocationTable from TDF,
16     ShapeTool from XCAFDoc,
17     ColorTool from XCAFDoc,
18     LayerTool from XCAFDoc,
19     DimTolTool from XCAFDoc,
20     MaterialTool from XCAFDoc
21     
22 is
23     
24     GetID (myclass)   
25     ---C++: return const &  
26     returns GUID from Standard;    
27     
28     Set (myclass; L: Label from TDF; 
29                   IsAcces: Boolean from Standard = Standard_True)
30     ---Purpose: Create (if not exist) DocumentTool attribute 
31     --          on 0.1 label if <IsAcces> is true, else 
32     --          on <L> label.
33     --          This label will be returned by DocLabel();
34     --          If the attribute is already set it won't be reset on
35     --          <L> even if <IsAcces> is false.
36     --          ColorTool and ShapeTool attributes are also set by this method.
37     returns DocumentTool from XCAFDoc;
38     
39     IsXCAFDocument(myclass; Doc : Document from TDocStd)
40                     returns Boolean from Standard;
41     
42     
43     
44     ---Category: methods defining document structure
45     
46     DocLabel(myclass; acces: Label from TDF) returns Label from TDF;
47     ---Purpose: Returns label where the DocumentTool attribute is or
48     --          0.1 if DocumentTool is not yet set.
49
50     ShapesLabel (myclass; acces: Label from TDF) returns Label from TDF;
51     ---Purpose: Returns sub-label of DocLabel() with tag 1.
52     
53     ColorsLabel (myclass; acces: Label from TDF) returns Label from TDF;
54     ---Purpose: Returns sub-label of DocLabel() with tag 2.
55     
56     LayersLabel (myclass; acces: Label from TDF) returns Label from TDF;
57     ---Purpose: Returns sub-label of DocLabel() with tag 3.
58     
59     DGTsLabel (myclass; acces: Label from TDF) returns Label from TDF;
60     ---Purpose: Returns sub-label of DocLabel() with tag 4.
61     
62     MaterialsLabel (myclass; acces: Label from TDF) returns Label from TDF;
63     ---Purpose: Returns sub-label of DocLabel() with tag 5.
64     
65     
66     ShapeTool (myclass; acces: Label from TDF) returns ShapeTool from XCAFDoc;
67     ---Purpose: Creates (if it does not exist) ShapeTool attribute on ShapesLabel().
68     
69     ColorTool(myclass; acces: Label from TDF) returns ColorTool from XCAFDoc;
70     ---Purpose: Creates (if it does not exist) ColorTool attribute on ColorsLabel().
71     
72     LayerTool(myclass; acces: Label from TDF) returns LayerTool from XCAFDoc;
73     ---Purpose: Creates (if it does not exist) LayerTool attribute on LayersLabel().
74         
75     DimTolTool(myclass; acces: Label from TDF) returns DimTolTool from XCAFDoc;
76     ---Purpose: Creates (if it does not exist) DimTolTool attribute on DGTsLabel().
77         
78     MaterialTool(myclass; acces: Label from TDF) returns MaterialTool from XCAFDoc;
79     ---Purpose: Creates (if it does not exist) DimTolTool attribute on DGTsLabel().
80         
81     
82     Create 
83     returns mutable DocumentTool from XCAFDoc;
84
85     Init(me);
86     ---Purpose: to be called when reading this attribute from file
87     
88         ---Category: TDF_Attribute methods
89     --           =====================
90     
91     ID (me)
92         ---C++: return const & 
93     returns GUID from Standard;
94
95     Restore (me: mutable; with : Attribute from TDF);
96
97     NewEmpty (me)
98     returns mutable Attribute from TDF;
99
100     Paste (me; into : mutable Attribute from TDF;
101                RT   : mutable RelocationTable from TDF);    
102     
103 end DocumentTool;