summaryrefslogtreecommitdiff
path: root/inc/IntTools_Array1OfRange.hxx
blob: aa34f1ca3a2ea6b4d6baac617e7f1b167685c169 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
// This file is generated by WOK (CPPExt).
// Please do not edit this file; modify original file instead.
// The copyright and license terms as defined for the original file apply to 
// this header file considered to be the "object code" form of the original source.

#ifndef _IntTools_Array1OfRange_HeaderFile
#define _IntTools_Array1OfRange_HeaderFile

#ifndef _Standard_HeaderFile
#include <Standard.hxx>
#endif
#ifndef _Standard_Macro_HeaderFile
#include <Standard_Macro.hxx>
#endif

#ifndef _Standard_Integer_HeaderFile
#include <Standard_Integer.hxx>
#endif
#ifndef _Standard_Address_HeaderFile
#include <Standard_Address.hxx>
#endif
#ifndef _Standard_Boolean_HeaderFile
#include <Standard_Boolean.hxx>
#endif
class Standard_RangeError;
class Standard_DimensionMismatch;
class Standard_OutOfRange;
class Standard_OutOfMemory;
class IntTools_Range;



class IntTools_Array1OfRange  {
public:

  void* operator new(size_t,void* anAddress) 
  {
    return anAddress;
  }
  void* operator new(size_t size) 
  {
    return Standard::Allocate(size); 
  }
  void  operator delete(void *anAddress) 
  {
    if (anAddress) Standard::Free((Standard_Address&)anAddress); 
  }

  
  Standard_EXPORT   IntTools_Array1OfRange(const Standard_Integer Low,const Standard_Integer Up);
  
  Standard_EXPORT   IntTools_Array1OfRange(const IntTools_Range& Item,const Standard_Integer Low,const Standard_Integer Up);
  
  Standard_EXPORT     void Init(const IntTools_Range& V) ;
  
  Standard_EXPORT     void Destroy() ;
~IntTools_Array1OfRange()
{
  Destroy();
}
  
        Standard_Boolean IsAllocated() const;
  
  Standard_EXPORT    const IntTools_Array1OfRange& Assign(const IntTools_Array1OfRange& Other) ;
   const IntTools_Array1OfRange& operator =(const IntTools_Array1OfRange& Other) 
{
  return Assign(Other);
}
  
        Standard_Integer Length() const;
  
        Standard_Integer Lower() const;
  
        Standard_Integer Upper() const;
  
        void SetValue(const Standard_Integer Index,const IntTools_Range& Value) ;
  
       const IntTools_Range& Value(const Standard_Integer Index) const;
     const IntTools_Range& operator ()(const Standard_Integer Index) const
{
  return Value(Index);
}
  
        IntTools_Range& ChangeValue(const Standard_Integer Index) ;
      IntTools_Range& operator ()(const Standard_Integer Index) 
{
  return ChangeValue(Index);
}





protected:





private:

  
  Standard_EXPORT   IntTools_Array1OfRange(const IntTools_Array1OfRange& AnArray);


Standard_Integer myLowerBound;
Standard_Integer myUpperBound;
Standard_Address myStart;
Standard_Boolean isAllocated;


};

#define Array1Item IntTools_Range
#define Array1Item_hxx <IntTools_Range.hxx>
#define TCollection_Array1 IntTools_Array1OfRange
#define TCollection_Array1_hxx <IntTools_Array1OfRange.hxx>

#include <TCollection_Array1.lxx>

#undef Array1Item
#undef Array1Item_hxx
#undef TCollection_Array1
#undef TCollection_Array1_hxx


// other Inline functions and methods (like "C++: function call" methods)


#endif