File indexing completed on 2025-01-18 10:05:00
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015 #ifndef _StdLPersistent_XLink_HeaderFile
0016 #define _StdLPersistent_XLink_HeaderFile
0017
0018 #include <StdObjMgt_Attribute.hxx>
0019 #include <StdLPersistent_HString.hxx>
0020
0021 #include <TDocStd_XLink.hxx>
0022
0023
0024 class StdLPersistent_XLink : public StdObjMgt_Attribute<TDocStd_XLink>
0025 {
0026 public:
0027
0028 inline void Read (StdObjMgt_ReadData& theReadData)
0029 { theReadData >> myDocEntry >> myLabEntry; }
0030
0031 inline void Write (StdObjMgt_WriteData& theWriteData) const
0032 { theWriteData << myDocEntry << myLabEntry; }
0033
0034 inline void PChildren(StdObjMgt_Persistent::SequenceOfPersistent& theChildren) const
0035 {
0036 theChildren.Append(myDocEntry);
0037 theChildren.Append(myLabEntry);
0038 }
0039
0040 inline Standard_CString PName() const { return "PDocStd_XLink"; }
0041
0042
0043 void Import (const Handle(TDocStd_XLink)& theAttribute) const
0044 {
0045 if (myDocEntry)
0046 theAttribute->DocumentEntry (myDocEntry->Value()->String());
0047
0048 if (myLabEntry)
0049 theAttribute->LabelEntry (myLabEntry->Value()->String());
0050 }
0051
0052 private:
0053 Handle(StdLPersistent_HString::Ascii) myDocEntry;
0054 Handle(StdLPersistent_HString::Ascii) myLabEntry;
0055 };
0056
0057 #endif