b311480e |
1 | -- Created on: 1999-06-24 |
2 | -- Created by: Sergey ZARITCHNY |
3 | -- Copyright (c) 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 CopyLabel from TDF |
18 | |
ff8178ef |
19 | ---Purpose: This class gives copy of source label hierarchy |
7fd59977 |
20 | |
21 | uses |
22 | |
23 | Boolean from Standard, |
24 | Label from TDF, |
25 | Attribute from TDF, |
26 | DataSet from TDF, |
27 | RelocationTable from TDF, |
28 | AttributeMap from TDF, |
29 | LabelMap from TDF, |
30 | IDFilter from TDF |
31 | |
32 | |
33 | is |
34 | |
35 | Create returns CopyLabel from TDF; |
36 | ---Purpose: Empty constructor |
37 | |
38 | Create(aSource, aTarget : Label from TDF) |
39 | returns CopyLabel from TDF; |
40 | ---Purpose: CopyTool |
41 | |
42 | Load(me : in out; aSource, aTarget : Label from TDF); |
43 | ---Purpose: Loads src and tgt labels |
44 | |
45 | UseFilter(me : in out; aFilter : IDFilter from TDF); |
46 | ---Purpose: Sets filter |
47 | |
48 | ExternalReferences(myclass; Lab : Label from TDF; |
49 | aExternals:in out AttributeMap from TDF; |
50 | aFilter : IDFilter from TDF) |
51 | returns Boolean from Standard; |
52 | ---Purpose: Check external references and if exist fills the aExternals Map |
53 | |
54 | ExternalReferences(myclass; aRefLab, Lab : Label from TDF; |
55 | aExternals : in out AttributeMap from TDF; |
56 | aFilter : IDFilter from TDF; |
57 | aDataSet : in out DataSet from TDF) ; |
58 | ---Purpose: Check external references and if exist fills the aExternals Map |
59 | |
60 | Perform(me:in out); |
61 | ---Purpose: performs algorithm of selfcontained copy |
62 | |
63 | IsDone(me) |
64 | returns Boolean from Standard; |
65 | ---C++: inline |
66 | |
67 | RelocationTable(me) |
68 | returns RelocationTable from TDF; |
69 | ---Purpose: returns relocation table |
70 | ---C++: return const& |
71 | |
72 | fields |
73 | |
74 | myRT : RelocationTable from TDF; |
75 | mySL : Label from TDF; -- source label |
76 | myTL : Label from TDF; -- target label |
77 | myFilter : IDFilter from TDF; |
78 | myMapOfExt : AttributeMap from TDF; -- map of attribute with external reference |
79 | myIsDone : Boolean from Standard; |
80 | |
81 | end CopyLabel; |