File indexing completed on 2025-01-18 10:05:22
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _TNaming_NamedShape_HeaderFile
0018 #define _TNaming_NamedShape_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_Type.hxx>
0022
0023 #include <TNaming_PtrNode.hxx>
0024 #include <TNaming_Evolution.hxx>
0025 #include <Standard_Integer.hxx>
0026 #include <TDF_Attribute.hxx>
0027 #include <Standard_OStream.hxx>
0028 class Standard_GUID;
0029 class TopoDS_Shape;
0030 class TDF_DeltaOnModification;
0031 class TDF_DeltaOnRemoval;
0032 class TDF_RelocationTable;
0033 class TDF_DataSet;
0034 class TDF_AttributeDelta;
0035
0036
0037 class TNaming_NamedShape;
0038 DEFINE_STANDARD_HANDLE(TNaming_NamedShape, TDF_Attribute)
0039
0040
0041
0042
0043
0044
0045
0046
0047
0048 class TNaming_NamedShape : public TDF_Attribute
0049 {
0050
0051 public:
0052
0053
0054
0055
0056
0057 Standard_EXPORT static const Standard_GUID& GetID();
0058
0059 Standard_EXPORT TNaming_NamedShape();
0060
0061 Standard_EXPORT Standard_Boolean IsEmpty() const;
0062
0063
0064
0065 Standard_EXPORT TopoDS_Shape Get() const;
0066
0067
0068 TNaming_Evolution Evolution() const;
0069
0070
0071 Standard_Integer Version() const;
0072
0073
0074 void SetVersion (const Standard_Integer version);
0075
0076 Standard_EXPORT void Clear();
0077 ~TNaming_NamedShape()
0078 {
0079 Clear();
0080 }
0081
0082
0083 const Standard_GUID& ID() const Standard_OVERRIDE;
0084
0085
0086
0087 Standard_EXPORT virtual Handle(TDF_Attribute) BackupCopy() const Standard_OVERRIDE;
0088
0089
0090
0091 Standard_EXPORT virtual void Restore (const Handle(TDF_Attribute)& anAttribute) Standard_OVERRIDE;
0092
0093
0094
0095 Standard_EXPORT virtual Handle(TDF_DeltaOnModification) DeltaOnModification (const Handle(TDF_Attribute)& anOldAttribute) const Standard_OVERRIDE;
0096
0097
0098 Standard_EXPORT virtual void DeltaOnModification (const Handle(TDF_DeltaOnModification)& aDelta) Standard_OVERRIDE;
0099
0100
0101
0102 Standard_EXPORT virtual Handle(TDF_DeltaOnRemoval) DeltaOnRemoval() const Standard_OVERRIDE;
0103
0104
0105
0106 Standard_EXPORT virtual Handle(TDF_Attribute) NewEmpty() const Standard_OVERRIDE;
0107
0108
0109
0110
0111
0112
0113
0114
0115 Standard_EXPORT virtual void Paste (const Handle(TDF_Attribute)& intoAttribute, const Handle(TDF_RelocationTable)& aRelocTationable) const Standard_OVERRIDE;
0116
0117
0118
0119
0120 Standard_EXPORT virtual void References (const Handle(TDF_DataSet)& aDataSet) const Standard_OVERRIDE;
0121
0122 Standard_EXPORT virtual void BeforeRemoval() Standard_OVERRIDE;
0123
0124
0125 Standard_EXPORT virtual Standard_Boolean BeforeUndo (const Handle(TDF_AttributeDelta)& anAttDelta, const Standard_Boolean forceIt = Standard_False) Standard_OVERRIDE;
0126
0127
0128 Standard_EXPORT virtual Standard_Boolean AfterUndo (const Handle(TDF_AttributeDelta)& anAttDelta, const Standard_Boolean forceIt = Standard_False) Standard_OVERRIDE;
0129
0130
0131 Standard_EXPORT virtual Standard_OStream& Dump (Standard_OStream& anOS) const Standard_OVERRIDE;
0132
0133
0134 Standard_EXPORT virtual void DumpJson (Standard_OStream& theOStream, Standard_Integer theDepth = -1) const Standard_OVERRIDE;
0135
0136 friend class TNaming_Builder;
0137 friend class TNaming_Iterator;
0138 friend class TNaming_NewShapeIterator;
0139 friend class TNaming_OldShapeIterator;
0140
0141
0142 DEFINE_STANDARD_RTTIEXT(TNaming_NamedShape,TDF_Attribute)
0143
0144 protected:
0145
0146
0147
0148
0149 private:
0150
0151
0152
0153 Standard_EXPORT void Add (TNaming_PtrNode& Evolution);
0154
0155 TNaming_PtrNode myNode;
0156 TNaming_Evolution myEvolution;
0157 Standard_Integer myVersion;
0158
0159
0160 };
0161
0162
0163 #include <TNaming_NamedShape.lxx>
0164
0165
0166
0167
0168
0169 #endif