mlpack::math::Range Class Reference

Simple real-valued range. More...

List of all members.

Public Member Functions

 Range (const double lo, const double hi)
 Initializes to specified range.
 Range (const double point)
 Range ()
 The upper bound.
bool Contains (const Range &r) const
 Determines if another range overlaps with this one.
bool Contains (const double d) const
 Determines if a point is contained within the range.
double & Hi ()
 Modify the upper bound.
double Hi () const
 Get the upper bound.
double & Lo ()
 Modify the lower bound.
double Lo () const
 Get the lower bound.
double Mid () const
 Gets the midpoint of this range.
bool operator!= (const Range &rhs) const
 Compare with another range for strict equality.
Range operator& (const Range &rhs) const
 Shrinks this range to be the overlap with another range; this makes an empty set if there is no overlap.
Rangeoperator&= (const Range &rhs)
 Shrinks this range to be the overlap with another range; this makes an empty set if there is no overlap.
Range operator* (const double d) const
 Scale the bounds by the given double.
Rangeoperator*= (const double d)
 Scale the bounds by the given double.
bool operator< (const Range &rhs) const
 Compare with another range.
bool operator== (const Range &rhs) const
 Compare with another range for strict equality.
bool operator> (const Range &rhs) const
 Compare with another range.
Range operator| (const Range &rhs) const
 Expands this range to include another range.
Rangeoperator|= (const Range &rhs)
 Expands this range to include another range.
std::string ToString () const
 Returns a string representation of an object.
double Width () const
 Gets the span of the range (hi - lo).

Private Attributes

double hi
 The lower bound.
double lo

Friends

Range operator* (const double d, const Range &r)
 Scale the bounds by the given double.

Detailed Description

Simple real-valued range.

It contains an upper and lower bound.

Definition at line 31 of file range.hpp.


Constructor & Destructor Documentation

mlpack::math::Range::Range (  )  [inline]

The upper bound.

Initialize to an empty set (where lo > hi).

mlpack::math::Range::Range ( const double  point  )  [inline]
mlpack::math::Range::Range ( const double  lo,
const double  hi 
) [inline]

Initializes to specified range.

Parameters:
lo Lower bound of the range.
hi Upper bound of the range.

Member Function Documentation

bool mlpack::math::Range::Contains ( const Range r  )  const [inline]

Determines if another range overlaps with this one.

Parameters:
r Other range.
Returns:
true if ranges overlap at all.
bool mlpack::math::Range::Contains ( const double  d  )  const [inline]

Determines if a point is contained within the range.

Parameters:
d Point to check.
double& mlpack::math::Range::Hi (  )  [inline]

Modify the upper bound.

Definition at line 65 of file range.hpp.

References hi.

double mlpack::math::Range::Hi (  )  const [inline]

Get the upper bound.

Definition at line 63 of file range.hpp.

References hi.

double& mlpack::math::Range::Lo (  )  [inline]

Modify the lower bound.

Definition at line 60 of file range.hpp.

References lo.

double mlpack::math::Range::Lo (  )  const [inline]

Get the lower bound.

Definition at line 58 of file range.hpp.

References lo.

double mlpack::math::Range::Mid (  )  const [inline]

Gets the midpoint of this range.

bool mlpack::math::Range::operator!= ( const Range rhs  )  const [inline]

Compare with another range for strict equality.

Parameters:
rhs Other range.
Range mlpack::math::Range::operator& ( const Range rhs  )  const [inline]

Shrinks this range to be the overlap with another range; this makes an empty set if there is no overlap.

Parameters:
rhs Other range.
Range& mlpack::math::Range::operator&= ( const Range rhs  )  [inline]

Shrinks this range to be the overlap with another range; this makes an empty set if there is no overlap.

Parameters:
rhs Other range.
Range mlpack::math::Range::operator* ( const double  d  )  const [inline]

Scale the bounds by the given double.

Parameters:
d Scaling factor.
Range& mlpack::math::Range::operator*= ( const double  d  )  [inline]

Scale the bounds by the given double.

Parameters:
d Scaling factor.
bool mlpack::math::Range::operator< ( const Range rhs  )  const [inline]

Compare with another range.

For Range objects x and y, x < y means that x is strictly less than y and does not overlap at all.

Parameters:
rhs Other range.
bool mlpack::math::Range::operator== ( const Range rhs  )  const [inline]

Compare with another range for strict equality.

Parameters:
rhs Other range.
bool mlpack::math::Range::operator> ( const Range rhs  )  const [inline]

Compare with another range.

For Range objects x and y, x < y means that x is strictly less than y and does not overlap at all.

Parameters:
rhs Other range.
Range mlpack::math::Range::operator| ( const Range rhs  )  const [inline]

Expands this range to include another range.

Parameters:
rhs Range to include.
Range& mlpack::math::Range::operator|= ( const Range rhs  )  [inline]

Expands this range to include another range.

Parameters:
rhs Range to include.
std::string mlpack::math::Range::ToString (  )  const [inline]

Returns a string representation of an object.

double mlpack::math::Range::Width (  )  const [inline]

Gets the span of the range (hi - lo).


Friends And Related Function Documentation

Range operator* ( const double  d,
const Range r 
) [friend]

Scale the bounds by the given double.

Parameters:
d Scaling factor.

Member Data Documentation

double mlpack::math::Range::hi [private]

The lower bound.

Definition at line 35 of file range.hpp.

Referenced by Hi().

double mlpack::math::Range::lo [private]

Definition at line 34 of file range.hpp.

Referenced by Lo().


The documentation for this class was generated from the following file:

Generated on 13 Aug 2014 for MLPACK by  doxygen 1.6.1