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 _StdPersistent_DataXtd_HeaderFile
0016 #define _StdPersistent_DataXtd_HeaderFile
0017
0018 #include <StdLPersistent_Void.hxx>
0019 #include <StdObject_gp_Vectors.hxx>
0020
0021 #include <TDataXtd_Shape.hxx>
0022 #include <TDataXtd_Point.hxx>
0023 #include <TDataXtd_Axis.hxx>
0024 #include <TDataXtd_Plane.hxx>
0025 #include <TDataXtd_Placement.hxx>
0026 #include <TDataXtd_Geometry.hxx>
0027 #include <TDataXtd_Position.hxx>
0028
0029
0030 class StdPersistent_DataXtd
0031 {
0032 class _void : private StdLPersistent_Void
0033 {
0034 public:
0035 template <class AttribClass>
0036 struct Instance : instance<AttribClass> {};
0037 };
0038
0039 public:
0040 typedef _void::Instance<TDataXtd_Shape> Shape;
0041 typedef _void::Instance<TDataXtd_Point> Point;
0042 typedef _void::Instance<TDataXtd_Axis> Axis;
0043 typedef _void::Instance<TDataXtd_Plane> Plane;
0044 typedef _void::Instance<TDataXtd_Placement> Placement;
0045
0046 class Geometry : public StdObjMgt_Attribute<TDataXtd_Geometry>::SingleInt
0047 {
0048 public:
0049
0050 Standard_EXPORT virtual void ImportAttribute();
0051 };
0052
0053 class Position : public StdObjMgt_Attribute<TDataXtd_Position>::Simple<gp_Pnt>
0054 {
0055 public:
0056
0057 Standard_EXPORT virtual void ImportAttribute();
0058 };
0059 };
0060
0061 template<>
0062 inline Standard_CString StdLPersistent_Void::instance<TDataXtd_Shape>::PName() const
0063 { return "PDataXtd_Shape"; }
0064
0065 template<>
0066 inline Standard_CString StdLPersistent_Void::instance<TDataXtd_Point>::PName() const
0067 { return "PDataXtd_Point"; }
0068
0069 template<>
0070 inline Standard_CString StdLPersistent_Void::instance<TDataXtd_Axis>::PName() const
0071 { return "PDataXtd_Axis"; }
0072
0073 template<>
0074 inline Standard_CString StdLPersistent_Void::instance<TDataXtd_Plane>::PName() const
0075 { return "PDataXtd_Plane"; }
0076
0077 template<>
0078 inline Standard_CString StdLPersistent_Void::instance<TDataXtd_Placement>::PName() const
0079 { return "PDataXtd_Placement"; }
0080
0081 template<>
0082 template<>
0083 inline Standard_CString StdObjMgt_Attribute<TDataXtd_Geometry>::Simple<Standard_Integer>::PName() const
0084 { return "PDataXtd_Geometry"; }
0085
0086 template<>
0087 template<>
0088 inline Standard_CString StdObjMgt_Attribute<TDataXtd_Position>::Simple<gp_Pnt>::PName() const
0089 { return "PDataXtd_Position"; }
0090
0091 #endif