File indexing completed on 2025-01-18 10:05:19
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _TDataStd_RealArray_HeaderFile
0018 #define _TDataStd_RealArray_HeaderFile
0019
0020 #include <Standard.hxx>
0021
0022 #include <TColStd_HArray1OfReal.hxx>
0023 #include <TDF_Attribute.hxx>
0024 #include <Standard_Integer.hxx>
0025 #include <Standard_Real.hxx>
0026 #include <Standard_OStream.hxx>
0027 #include <Standard_GUID.hxx>
0028
0029 class TDF_Label;
0030 class TDF_RelocationTable;
0031 class TDF_DeltaOnModification;
0032
0033
0034 class TDataStd_RealArray;
0035 DEFINE_STANDARD_HANDLE(TDataStd_RealArray, TDF_Attribute)
0036
0037
0038 class TDataStd_RealArray : public TDF_Attribute
0039 {
0040 friend class TDataStd_DeltaOnModificationOfRealArray;
0041 DEFINE_STANDARD_RTTIEXT(TDataStd_RealArray, TDF_Attribute)
0042 public:
0043
0044
0045
0046
0047 Standard_EXPORT static const Standard_GUID& GetID();
0048
0049
0050
0051
0052
0053
0054
0055 Standard_EXPORT static Handle(TDataStd_RealArray) Set (const TDF_Label& label, const Standard_Integer lower, const Standard_Integer upper, const Standard_Boolean isDelta = Standard_False);
0056
0057
0058
0059 Standard_EXPORT static Handle(TDataStd_RealArray) Set (const TDF_Label& label, const Standard_GUID& theGuid,
0060 const Standard_Integer lower, const Standard_Integer upper,
0061 const Standard_Boolean isDelta = Standard_False);
0062
0063
0064 Standard_EXPORT void Init (const Standard_Integer lower, const Standard_Integer upper);
0065
0066
0067 Standard_EXPORT void SetID( const Standard_GUID& theGuid) Standard_OVERRIDE;
0068
0069
0070 Standard_EXPORT void SetID() Standard_OVERRIDE;
0071
0072
0073
0074 Standard_EXPORT void SetValue (const Standard_Integer Index, const Standard_Real Value);
0075
0076
0077 Standard_EXPORT Standard_Real Value (const Standard_Integer Index) const;
0078
0079 Standard_Real operator () (const Standard_Integer Index) const
0080 {
0081 return Value(Index);
0082 }
0083
0084
0085 Standard_EXPORT Standard_Integer Lower() const;
0086
0087
0088 Standard_EXPORT Standard_Integer Upper() const;
0089
0090
0091
0092 Standard_EXPORT Standard_Integer Length() const;
0093
0094
0095
0096
0097
0098
0099
0100 Standard_EXPORT void ChangeArray (const Handle(TColStd_HArray1OfReal)& newArray, const Standard_Boolean isCheckItems = Standard_True);
0101
0102
0103 const Handle(TColStd_HArray1OfReal)& Array() const { return myValue; }
0104
0105 Standard_Boolean GetDelta() const { return myIsDelta; }
0106
0107
0108 void SetDelta (const Standard_Boolean isDelta) { myIsDelta = isDelta; }
0109
0110 Standard_EXPORT TDataStd_RealArray();
0111
0112 Standard_EXPORT const Standard_GUID& ID() const Standard_OVERRIDE;
0113
0114 Standard_EXPORT void Restore (const Handle(TDF_Attribute)& With) Standard_OVERRIDE;
0115
0116 Standard_EXPORT Handle(TDF_Attribute) NewEmpty() const Standard_OVERRIDE;
0117
0118
0119 Standard_EXPORT void Paste (const Handle(TDF_Attribute)& Into, const Handle(TDF_RelocationTable)& RT) const Standard_OVERRIDE;
0120
0121 Standard_EXPORT virtual Standard_OStream& Dump (Standard_OStream& anOS) const Standard_OVERRIDE;
0122
0123
0124
0125 Standard_EXPORT virtual Handle(TDF_DeltaOnModification) DeltaOnModification (const Handle(TDF_Attribute)& anOldAttribute) const Standard_OVERRIDE;
0126
0127
0128 Standard_EXPORT virtual void DumpJson (Standard_OStream& theOStream, Standard_Integer theDepth = -1) const Standard_OVERRIDE;
0129
0130 private:
0131
0132 void RemoveArray() { myValue.Nullify(); }
0133
0134 private:
0135
0136 Handle(TColStd_HArray1OfReal) myValue;
0137 Standard_Boolean myIsDelta;
0138 Standard_GUID myID;
0139
0140 };
0141
0142 #endif