File indexing completed on 2026-09-13 09:18:08
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016 #ifndef _TDataStd_BooleanArray_HeaderFile
0017 #define _TDataStd_BooleanArray_HeaderFile
0018
0019 #include <Standard.hxx>
0020
0021 #include <NCollection_Array1.hxx>
0022 #include <NCollection_HArray1.hxx>
0023 #include <Standard_Integer.hxx>
0024 #include <TDF_Attribute.hxx>
0025 #include <Standard_OStream.hxx>
0026 #include <Standard_GUID.hxx>
0027 class TDF_Label;
0028 class TDF_RelocationTable;
0029
0030
0031 class TDataStd_BooleanArray : public TDF_Attribute
0032 {
0033
0034 public:
0035
0036
0037
0038 Standard_EXPORT static const Standard_GUID& GetID();
0039
0040
0041 Standard_EXPORT static occ::handle<TDataStd_BooleanArray> Set(const TDF_Label& label,
0042 const int lower,
0043 const int upper);
0044
0045
0046 Standard_EXPORT static occ::handle<TDataStd_BooleanArray> Set(const TDF_Label& label,
0047 const Standard_GUID& theGuid,
0048 const int lower,
0049 const int upper);
0050
0051
0052 Standard_EXPORT void Init(const int lower, const int upper);
0053
0054
0055
0056
0057 Standard_EXPORT void SetValue(const int index, const bool value);
0058
0059
0060 Standard_EXPORT void SetID(const Standard_GUID& theGuid) override;
0061
0062
0063 Standard_EXPORT void SetID() override;
0064
0065
0066 Standard_EXPORT bool Value(const int Index) const;
0067
0068 bool operator()(const int Index) const { return Value(Index); }
0069
0070
0071 Standard_EXPORT int Lower() const;
0072
0073
0074 Standard_EXPORT int Upper() const;
0075
0076
0077 Standard_EXPORT int Length() const;
0078
0079 Standard_EXPORT const occ::handle<NCollection_HArray1<uint8_t>>& InternalArray() const;
0080
0081 Standard_EXPORT void SetInternalArray(const occ::handle<NCollection_HArray1<uint8_t>>& values);
0082
0083 Standard_EXPORT TDataStd_BooleanArray();
0084
0085 Standard_EXPORT const Standard_GUID& ID() const override;
0086
0087 Standard_EXPORT void Restore(const occ::handle<TDF_Attribute>& with) override;
0088
0089 Standard_EXPORT occ::handle<TDF_Attribute> NewEmpty() const override;
0090
0091 Standard_EXPORT void Paste(const occ::handle<TDF_Attribute>& into,
0092 const occ::handle<TDF_RelocationTable>& RT) const override;
0093
0094 Standard_EXPORT Standard_OStream& Dump(Standard_OStream& OS) const override;
0095
0096
0097 Standard_EXPORT void DumpJson(Standard_OStream& theOStream, int theDepth = -1) const override;
0098
0099 DEFINE_STANDARD_RTTIEXT(TDataStd_BooleanArray, TDF_Attribute)
0100
0101 private:
0102 occ::handle<NCollection_HArray1<uint8_t>> myValues;
0103 int myLower;
0104 int myUpper;
0105 Standard_GUID myID;
0106 };
0107
0108 #endif