summaryrefslogtreecommitdiffstats
path: root/src/gui/rgba.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/rgba.hpp')
-rw-r--r--src/gui/rgba.hpp31
1 files changed, 15 insertions, 16 deletions
diff --git a/src/gui/rgba.hpp b/src/gui/rgba.hpp
index f31e958c..e01a069d 100644
--- a/src/gui/rgba.hpp
+++ b/src/gui/rgba.hpp
@@ -18,31 +18,31 @@
#define INGEN_GUI_RGBA_HPP
#include <cmath>
+#include <cstdint>
-namespace ingen {
-namespace gui {
+namespace ingen::gui {
-static inline uint32_t
+inline uint32_t
rgba_to_uint(uint8_t r, uint8_t g, uint8_t b, uint8_t a)
{
- return ((((uint32_t)(r)) << 24) |
- (((uint32_t)(g)) << 16) |
- (((uint32_t)(b)) << 8) |
- (((uint32_t)(a))));
+ return ((static_cast<uint32_t>(r) << 24) |
+ (static_cast<uint32_t>(g) << 16) |
+ (static_cast<uint32_t>(b) << 8) |
+ (static_cast<uint32_t>(a)));
}
-static inline uint8_t
+inline uint8_t
mono_interpolate(uint8_t v1, uint8_t v2, float f)
{
- return ((int)rint((v2) * (f) + (v1) * (1 - (f))));
+ return static_cast<uint8_t>(rintf((v2 * f) + (v1 * (1.0f - f))));
}
-#define RGBA_R(x) (((uint32_t)(x)) >> 24)
-#define RGBA_G(x) ((((uint32_t)(x)) >> 16) & 0xFF)
-#define RGBA_B(x) ((((uint32_t)(x)) >> 8) & 0xFF)
-#define RGBA_A(x) (((uint32_t)(x)) & 0xFF)
+#define RGBA_R(x) (static_cast<uint32_t>(x) >> 24)
+#define RGBA_G(x) ((static_cast<uint32_t>(x) >> 16) & 0xFF)
+#define RGBA_B(x) ((static_cast<uint32_t>(x) >> 8) & 0xFF)
+#define RGBA_A(x) (static_cast<uint32_t>(x) & 0xFF)
-static inline uint32_t
+inline uint32_t
rgba_interpolate(uint32_t c1, uint32_t c2, float f)
{
return rgba_to_uint(
@@ -52,7 +52,6 @@ rgba_interpolate(uint32_t c1, uint32_t c2, float f)
mono_interpolate(RGBA_A(c1), RGBA_A(c2), f));
}
-} // namespace gui
-} // namespace ingen
+} // namespace ingen::gui
#endif // INGEN_GUI_RGBA_HPP