File indexing completed on 2026-09-28 09:20:23
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _HLRAlgo_WiresBlock_HeaderFile
0018 #define _HLRAlgo_WiresBlock_HeaderFile
0019
0020 #include <HLRAlgo_EdgesBlock.hxx>
0021
0022 #include <Standard.hxx>
0023 #include <Standard_Type.hxx>
0024
0025 #include <Standard_Transient.hxx>
0026 #include <NCollection_Array1.hxx>
0027 #include <Standard_Integer.hxx>
0028
0029
0030
0031
0032
0033
0034
0035 class HLRAlgo_WiresBlock : public Standard_Transient
0036 {
0037 public:
0038
0039 HLRAlgo_WiresBlock(const int NbWires)
0040 : myWires(1, NbWires)
0041 {
0042 }
0043
0044 int NbWires() const { return myWires.Upper(); }
0045
0046 void Set(const int I, const occ::handle<HLRAlgo_EdgesBlock>& W) { myWires(I) = W; }
0047
0048 occ::handle<HLRAlgo_EdgesBlock>& Wire(const int I)
0049 {
0050 return *((occ::handle<HLRAlgo_EdgesBlock>*)&myWires(I));
0051 }
0052
0053 void UpdateMinMax(const HLRAlgo_EdgesBlock::MinMaxIndices& theMinMaxes)
0054 {
0055 myMinMax = theMinMaxes;
0056 }
0057
0058 HLRAlgo_EdgesBlock::MinMaxIndices& MinMax() { return myMinMax; }
0059
0060 DEFINE_STANDARD_RTTIEXT(HLRAlgo_WiresBlock, Standard_Transient)
0061
0062 private:
0063 NCollection_Array1<occ::handle<Standard_Transient>> myWires;
0064 HLRAlgo_EdgesBlock::MinMaxIndices myMinMax;
0065 };
0066
0067 #endif