45#ifndef LASS_GUARDIAN_OF_INCLUSION_NUM_TOLERANCE_COMPARISON_H
46#define LASS_GUARDIAN_OF_INCLUSION_NUM_TOLERANCE_COMPARISON_H
57bool almostEqual(T iA, T iB, T iRelativeTolerance)
63bool notAlmostEqual(T iA, T iB, T iRelativeTolerance)
65 return !almostEqual(iA, iB, iRelativeTolerance);
69bool almostLess(T iA, T iB, T iRelativeTolerance)
71 return iA < iB && !almostEqual(iA, iB, iRelativeTolerance);
75bool almostGreater(T iA, T iB, T iRelativeTolerance)
77 return iA > iB && !almostEqual(iA, iB, iRelativeTolerance);
81bool almostLessOrEqual(T iA, T iB, T iRelativeTolerance)
83 return iA <= iB || almostEqual(iA, iB, iRelativeTolerance);
87bool almostGreaterOrEqual(T iA, T iB, T iRelativeTolerance)
89 return iA >= iB || almostEqual(iA, iB, iRelativeTolerance);
93bool almostInOpenRange(T iA, T iMin, T iMax, T iRelativeTolerance)
95 return almostGreater(iA, iMin, iRelativeTolerance) &&
96 almostLess(iA, iMax, iRelativeTolerance);
100bool almostInClosedRange(T iA, T iMin, T iMax, T iRelativeTolerance)
102 return almostGreaterOrEqual(iA, iMin, iRelativeTolerance) &&
103 almostLessOrEqual(iA, iMax, iRelativeTolerance);
T abs(const T &x)
if x < 0 return -x, else return x.
numeric types and traits.
Library for Assembled Shared Sources.