File indexing completed on 2025-12-15 10:19:46
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016 #ifndef _BinMDF_ADriver_HeaderFile
0017 #define _BinMDF_ADriver_HeaderFile
0018
0019 #include <Standard.hxx>
0020
0021 #include <Standard_Transient.hxx>
0022 #include <BinObjMgt_RRelocationTable.hxx>
0023 #include <BinObjMgt_SRelocationTable.hxx>
0024 class Message_Messenger;
0025 class TDF_Attribute;
0026 class BinObjMgt_Persistent;
0027
0028
0029 class BinMDF_ADriver;
0030 DEFINE_STANDARD_HANDLE(BinMDF_ADriver, Standard_Transient)
0031
0032
0033 class BinMDF_ADriver : public Standard_Transient
0034 {
0035
0036 public:
0037
0038
0039
0040 Standard_EXPORT virtual Handle(TDF_Attribute) NewEmpty() const = 0;
0041
0042
0043
0044 Standard_EXPORT virtual const Handle(Standard_Type)& SourceType() const;
0045
0046
0047 const TCollection_AsciiString& TypeName() const;
0048
0049
0050
0051
0052 Standard_EXPORT virtual Standard_Boolean Paste (const BinObjMgt_Persistent& aSource, const Handle(TDF_Attribute)& aTarget, BinObjMgt_RRelocationTable& aRelocTable) const = 0;
0053
0054
0055
0056
0057 Standard_EXPORT virtual void Paste (const Handle(TDF_Attribute)& aSource, BinObjMgt_Persistent& aTarget, BinObjMgt_SRelocationTable& aRelocTable) const = 0;
0058
0059
0060 const Handle(Message_Messenger)& MessageDriver() const { return myMessageDriver; }
0061
0062 DEFINE_STANDARD_RTTIEXT(BinMDF_ADriver,Standard_Transient)
0063
0064 protected:
0065
0066
0067 Standard_EXPORT BinMDF_ADriver(const Handle(Message_Messenger)& theMsgDriver, const Standard_CString theName = NULL);
0068
0069 TCollection_AsciiString myTypeName;
0070
0071 Handle(Message_Messenger) myMessageDriver;
0072
0073
0074 };
0075
0076
0077 #include <BinMDF_ADriver.lxx>
0078
0079
0080
0081
0082
0083 #endif