12 #ifndef MLPACK_CORE_MATH_RANGE_HPP 13 #define MLPACK_CORE_MATH_RANGE_HPP 33 template<
typename T =
double>
61 inline T
Lo()
const {
return lo; }
63 inline T&
Lo() {
return lo; }
66 inline T
Hi()
const {
return hi; }
68 inline T&
Hi() {
return hi; }
73 inline T
Width()
const;
130 template<
typename TT>
168 inline bool Contains(
const T d)
const;
182 template<
typename Archive>
183 void serialize(Archive& ar,
const uint32_t version);
190 #include "range_impl.hpp" 192 #endif // MLPACK_CORE_MATH_RANGE_HPP T Hi() const
Get the upper bound.
T & Lo()
Modify the lower bound.
Linear algebra utility functions, generally performed on matrices or vectors.
T Mid() const
Gets the midpoint of this range.
bool operator>(const RangeType &rhs) const
Compare with another range.
bool operator<(const RangeType &rhs) const
Compare with another range.
bool operator!=(const RangeType &rhs) const
Compare with another range for strict equality.
T Width() const
Gets the span of the range (hi - lo).
void serialize(Archive &ar, const uint32_t version)
Serialize the range object.
RangeType< double > Range
3.0.0 TODO: break reverse-compatibility by changing RangeType to Range.
T Lo() const
Get the lower bound.
Simple real-valued range.
bool operator==(const RangeType &rhs) const
Compare with another range for strict equality.
RangeType operator|(const RangeType &rhs) const
Expands this range to include another range.
RangeType & operator &=(const RangeType &rhs)
Shrinks this range to be the overlap with another range; this makes an empty set if there is no overl...
RangeType operator &(const RangeType &rhs) const
Shrinks this range to be the overlap with another range; this makes an empty set if there is no overl...
bool Contains(const T d) const
Determines if a point is contained within the range.
RangeType & operator|=(const RangeType &rhs)
Expands this range to include another range.
RangeType()
The upper bound.
RangeType operator*(const T d) const
Scale the bounds by the given double.
RangeType & operator*=(const T d)
Scale the bounds by the given double.
T & Hi()
Modify the upper bound.