File indexing completed on 2025-01-18 10:04:59
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015 #ifndef _StdLPersistent_Value_HeaderFile
0016 #define _StdLPersistent_Value_HeaderFile
0017
0018 #include <StdObjMgt_Attribute.hxx>
0019 #include <StdLPersistent_HString.hxx>
0020
0021 #include <TDataStd_Integer.hxx>
0022 #include <TDF_TagSource.hxx>
0023 #include <TDF_Reference.hxx>
0024 #include <TDataStd_UAttribute.hxx>
0025 #include <TDataStd_Name.hxx>
0026 #include <TDataStd_Comment.hxx>
0027 #include <TDataStd_AsciiString.hxx>
0028
0029
0030 class StdLPersistent_Value
0031 {
0032 template <class AttribClass>
0033 class integer : public StdObjMgt_Attribute<AttribClass>::SingleInt
0034 {
0035 public:
0036
0037 Standard_EXPORT virtual void ImportAttribute();
0038 };
0039
0040 template <class AttribClass,
0041 class HStringClass = StdLPersistent_HString::Extended>
0042 class string : public StdObjMgt_Attribute<AttribClass>::SingleRef
0043 {
0044 public:
0045
0046 Standard_EXPORT virtual void ImportAttribute();
0047 };
0048
0049 public:
0050
0051 class TagSource : public integer <TDF_TagSource> {
0052 public:
0053 Standard_CString PName() const { return "PDF_TagSource"; }
0054 };
0055
0056 class Reference : public string <TDF_Reference> {
0057 public:
0058 Standard_CString PName() const { return "PDF_Reference"; }
0059 };
0060
0061 class Comment : public string <TDataStd_Comment> {
0062 public:
0063 Standard_CString PName() const { return "PDF_Comment"; }
0064 };
0065
0066 class UAttribute : public string <TDataStd_UAttribute>
0067 {
0068 public:
0069
0070 Standard_EXPORT virtual Handle(TDF_Attribute) CreateAttribute();
0071 Standard_CString PName() const { return "PDataStd_UAttribute"; }
0072 };
0073
0074 class Integer : public integer <TDataStd_Integer>
0075 {
0076 public:
0077
0078 Standard_EXPORT virtual Handle(TDF_Attribute) CreateAttribute();
0079 Standard_CString PName() const { return "PDataStd_Integer"; }
0080 };
0081
0082 class Name : public string <TDataStd_Name>
0083 {
0084 public:
0085
0086 Standard_EXPORT virtual Handle(TDF_Attribute) CreateAttribute();
0087 Standard_CString PName() const { return "PDataStd_Name"; }
0088 };
0089
0090 class AsciiString : public string <TDataStd_AsciiString, StdLPersistent_HString::Ascii>
0091 {
0092 public:
0093
0094 Standard_EXPORT virtual Handle(TDF_Attribute) CreateAttribute();
0095 Standard_CString PName() const { return "PDataStd_AsciiString"; }
0096 };
0097 };
0098
0099 template<>
0100 template<>
0101 inline Standard_CString StdObjMgt_Attribute<TDF_TagSource>::Simple<Standard_Integer>::PName() const
0102 { return "PDF_TagSource"; }
0103
0104 template<>
0105 template<>
0106 inline Standard_CString StdObjMgt_Attribute<TDF_Reference>::Simple<Handle(StdObjMgt_Persistent)>::PName() const
0107 { return "PDF_Reference"; }
0108
0109 template<>
0110 template<>
0111 inline Standard_CString StdObjMgt_Attribute<TDataStd_Comment>::Simple<Handle(StdObjMgt_Persistent)>::PName() const
0112 { return "PDataStd_Comment"; }
0113
0114 #endif