4#include <Foundation/Basics.h>
15 PL_DECLARE_POD_TYPE();
21 plRational(plUInt32 uiNumerator, plUInt32 uiDenominator);
53 plUInt32 m_uiNumerator = 0;
54 plUInt32 m_uiDenominator = 1;
57#include <Foundation/Math/Implementation/Rational_inl.h>
A class which can be used to represent rational numbers by stating their numerator and denominator.
Definition Rational.h:13
bool IsIntegral() const
returns true if the division of the numerator by the denominator would result in a full integer
Definition Rational_inl.h:12
bool operator==(const plRational &other) const
Equality operator.
Definition Rational_inl.h:20
plUInt32 GetIntegralResult() const
Returns the result of the division as an integer.
Definition Rational_inl.h:40
plUInt32 GetDenominator() const
Returns the denominator.
Definition Rational_inl.h:35
plRational()
Default constructor, initializes to 0/1.
plUInt32 GetNumerator() const
Returns the numerator of the rational number.
Definition Rational_inl.h:30
bool operator!=(const plRational &other) const
Inequality operator.
Definition Rational_inl.h:25
bool IsValid() const
Returns true if the rational is valid (follows the rules stated in the class description)
Definition Rational_inl.h:56
double GetFloatingPointResult() const
Returns the result of the division as a floating point number (double).
Definition Rational_inl.h:48
plRational ReduceIntegralFraction() const
This helper returns a reduced fraction in case of an integral input.
Definition Rational_inl.h:61