We could use an optional intermediary type for fixed-point types. Intermediary types are used for temporary values in calculations where intermediary steps can cause the original values to overflow. A common scenario where this can happen are multiplication or division. We take inspiration for this from the fpm library.
Intermediary types are only strictly necessary if the base type is small, e.g. int16_t. Therefore, their usage should be optional.
Tasks
[ ] Add intermediary type as optional template parameter
[ ] Use intermediary type in fixed-point calculations
Required Skills: C++
Difficulty: Medium
We could use an optional intermediary type for fixed-point types. Intermediary types are used for temporary values in calculations where intermediary steps can cause the original values to overflow. A common scenario where this can happen are multiplication or division. We take inspiration for this from the
fpm
library.Intermediary types are only strictly necessary if the base type is small, e.g.
int16_t
. Therefore, their usage should be optional.Tasks
Further Reading