xref: /trunk/main/basegfx/inc/basegfx/range/b1irange.hxx (revision 914d351e5f5b84e4342a86d6ab8d4aca7308b9bd)
1 /**************************************************************
2  *
3  * Licensed to the Apache Software Foundation (ASF) under one
4  * or more contributor license agreements.  See the NOTICE file
5  * distributed with this work for additional information
6  * regarding copyright ownership.  The ASF licenses this file
7  * to you under the Apache License, Version 2.0 (the
8  * "License"); you may not use this file except in compliance
9  * with the License.  You may obtain a copy of the License at
10  *
11  *   http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing,
14  * software distributed under the License is distributed on an
15  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16  * KIND, either express or implied.  See the License for the
17  * specific language governing permissions and limitations
18  * under the License.
19  *
20  *************************************************************/
21 
22 
23 
24 #ifndef _BGFX_RANGE_B1IRANGE_HXX
25 #define _BGFX_RANGE_B1IRANGE_HXX
26 
27 #include <basegfx/range/basicrange.hxx>
28 #include <basegfx/basegfxdllapi.h>
29 
30 
31 namespace basegfx
32 {
33     class BASEGFX_DLLPUBLIC B1IRange
34     {
35         ::basegfx::BasicRange< sal_Int32, Int32Traits > maRange;
36 
37     public:
B1IRange()38         B1IRange()
39         {
40         }
41 
B1IRange(sal_Int32 nStartValue)42         explicit B1IRange(sal_Int32 nStartValue)
43         :   maRange(nStartValue)
44         {
45         }
46 
B1IRange(sal_Int32 nStartValue1,sal_Int32 nStartValue2)47         B1IRange(sal_Int32 nStartValue1, sal_Int32 nStartValue2)
48         :   maRange(nStartValue1)
49         {
50             expand(nStartValue2);
51         }
52 
B1IRange(const B1IRange & rRange)53         B1IRange(const B1IRange& rRange)
54         :   maRange(rRange.maRange)
55         {
56         }
57 
isEmpty() const58         bool isEmpty() const
59         {
60             return maRange.isEmpty();
61         }
62 
reset()63         void reset()
64         {
65             maRange.reset();
66         }
67 
operator ==(const B1IRange & rRange) const68         bool operator==( const B1IRange& rRange ) const
69         {
70             return (maRange == rRange.maRange);
71         }
72 
operator !=(const B1IRange & rRange) const73         bool operator!=( const B1IRange& rRange ) const
74         {
75             return (maRange != rRange.maRange);
76         }
77 
operator =(const B1IRange & rRange)78         B1IRange& operator=(const B1IRange& rRange)
79         {
80             maRange = rRange.maRange;
81             return *this;
82         }
83 
getMinimum() const84         sal_Int32 getMinimum() const
85         {
86             return maRange.getMinimum();
87         }
88 
getMaximum() const89         sal_Int32 getMaximum() const
90         {
91             return maRange.getMaximum();
92         }
93 
getRange() const94         Int32Traits::DifferenceType getRange() const
95         {
96             return maRange.getRange();
97         }
98 
getCenter() const99         double getCenter() const
100         {
101             return maRange.getCenter();
102         }
103 
isInside(sal_Int32 nValue) const104         bool isInside(sal_Int32 nValue) const
105         {
106             return maRange.isInside(nValue);
107         }
108 
isInside(const B1IRange & rRange) const109         bool isInside(const B1IRange& rRange) const
110         {
111             return maRange.isInside(rRange.maRange);
112         }
113 
overlaps(const B1IRange & rRange) const114         bool overlaps(const B1IRange& rRange) const
115         {
116             return maRange.overlaps(rRange.maRange);
117         }
118 
expand(sal_Int32 nValue)119         void expand(sal_Int32 nValue)
120         {
121             maRange.expand(nValue);
122         }
123 
expand(const B1IRange & rRange)124         void expand(const B1IRange& rRange)
125         {
126             maRange.expand(rRange.maRange);
127         }
128 
intersect(const B1IRange & rRange)129         void intersect(const B1IRange& rRange)
130         {
131             maRange.intersect(rRange.maRange);
132         }
133 
grow(sal_Int32 nValue)134         void grow(sal_Int32 nValue)
135         {
136             maRange.grow(nValue);
137         }
138     };
139 } // end of namespace basegfx
140 
141 #endif /* _BGFX_RANGE_B1IRANGE_HXX */
142