7fd59977 |
1 | // File : XmlTObjDrivers_ReferenceDriver.hxx |
2 | // Created : Wed Nov 24 11:19:22 2004 |
3 | // Author : Edward AGAPOV |
4 | // Copyright: Open CASCADE 2007 |
5 | // The original implementation Copyright: (C) RINA S.p.A |
6 | |
7 | |
8 | #ifndef XmlTObjDrivers_ReferenceDriver_HeaderFile |
9 | #define XmlTObjDrivers_ReferenceDriver_HeaderFile |
10 | |
11 | #include <TObj_Common.hxx> |
12 | #include <XmlMDF_ADriver.hxx> |
13 | |
14 | class XmlTObjDrivers_ReferenceDriver : public XmlMDF_ADriver |
15 | { |
16 | |
17 | public: |
18 | |
19 | Standard_EXPORT XmlTObjDrivers_ReferenceDriver |
20 | (const Handle(CDM_MessageDriver)& theMessageDriver); |
21 | // constructor |
22 | |
23 | Standard_EXPORT Handle(TDF_Attribute) NewEmpty() const; |
24 | // Creates a new attribute |
25 | |
26 | Standard_EXPORT Standard_Boolean Paste |
27 | (const XmlObjMgt_Persistent& Source, |
28 | const Handle(TDF_Attribute)& Target, |
29 | XmlObjMgt_RRelocationTable& RelocTable) const; |
30 | // Translate the contents of <aSource> and put it |
31 | // into <aTarget>, using the relocation table |
32 | // <aRelocTable> to keep the sharings. |
33 | |
34 | Standard_EXPORT void Paste |
35 | (const Handle(TDF_Attribute)& Source, |
36 | XmlObjMgt_Persistent& Target, |
37 | XmlObjMgt_SRelocationTable& RelocTable) const; |
38 | // Translate the contents of <aSource> and put it |
39 | // into <aTarget>, using the relocation table |
40 | // <aRelocTable> to keep the sharings. |
41 | // Store master and referred labels as entry, the other model referred |
42 | // as entry in model-container |
43 | // The reference pointing nowhere is not stored |
44 | |
45 | public: |
46 | // CASCADE RTTI |
47 | DEFINE_STANDARD_RTTI(XmlTObjDrivers_ReferenceDriver) |
48 | }; |
49 | |
50 | // Define handle class |
51 | DEFINE_STANDARD_HANDLE(XmlTObjDrivers_ReferenceDriver,XmlMDF_ADriver) |
52 | |
53 | #endif |
54 | |
55 | #ifdef _MSC_VER |
56 | #pragma once |
57 | #endif |