Add fixed point assignment operators
This commit is contained in:
parent
d681363a7b
commit
55edb9f634
@ -105,12 +105,20 @@ public:
|
|||||||
constexpr fixed operator+(fixed rhs) const {
|
constexpr fixed operator+(fixed rhs) const {
|
||||||
return from_raw(x + rhs.x);
|
return from_raw(x + rhs.x);
|
||||||
}
|
}
|
||||||
|
constexpr fixed& operator+=(fixed rhs) {
|
||||||
|
x += rhs.x;
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* \brief Fixed point subtraction
|
* \brief Fixed point subtraction
|
||||||
*/
|
*/
|
||||||
constexpr fixed operator-(fixed rhs) const {
|
constexpr fixed operator-(fixed rhs) const {
|
||||||
return from_raw(x - rhs.x);
|
return from_raw(x - rhs.x);
|
||||||
}
|
}
|
||||||
|
constexpr fixed& operator-=(fixed rhs) {
|
||||||
|
x -= rhs.x;
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
constexpr fixed operator-() const {
|
constexpr fixed operator-() const {
|
||||||
return from_raw(-x);
|
return from_raw(-x);
|
||||||
}
|
}
|
||||||
@ -135,6 +143,10 @@ public:
|
|||||||
|
|
||||||
return from_raw(raw_result);
|
return from_raw(raw_result);
|
||||||
}
|
}
|
||||||
|
fixed& operator*=(fixed rhs) {
|
||||||
|
*this = *this * rhs;
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief Fixed point division
|
* \brief Fixed point division
|
||||||
@ -152,6 +164,10 @@ public:
|
|||||||
* Placed in IWRAM
|
* Placed in IWRAM
|
||||||
*/
|
*/
|
||||||
fixed operator/(fixed rhs) const;
|
fixed operator/(fixed rhs) const;
|
||||||
|
fixed& operator/=(fixed rhs) {
|
||||||
|
*this = *this / rhs;
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace mtl
|
} // namespace mtl
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user