Add RGB::rgb888()
[android/external-libkmsxx.git] / libkmstest / color.h
index 1db47e8a930be9ddb7d72ea25a33cd4a7ff2fc5d..ef85a674eada429127383e15c7e4448a860c5771 100644 (file)
@@ -10,21 +10,19 @@ struct RGB
 {
        RGB();
        RGB(uint8_t r, uint8_t g, uint8_t b);
+       RGB(uint8_t a, uint8_t r, uint8_t g, uint8_t b);
+       RGB(uint32_t argb);
 
+       uint32_t rgb888() const;
+       uint32_t argb8888() const;
+       uint32_t abgr8888() const;
        uint16_t rgb565() const;
        YUV yuv() const;
 
-       union {
-               struct
-               {
-                       uint8_t b;
-                       uint8_t g;
-                       uint8_t r;
-                       uint8_t a;
-               };
-
-               uint32_t raw;
-       };
+       uint8_t b;
+       uint8_t g;
+       uint8_t r;
+       uint8_t a;
 };
 
 struct YUV
@@ -33,16 +31,9 @@ struct YUV
        YUV(uint8_t y, uint8_t u, uint8_t v);
        YUV(const RGB& rgb);
 
-       union {
-               struct
-               {
-                       uint8_t v;
-                       uint8_t u;
-                       uint8_t y;
-                       uint8_t a;
-               };
-
-               uint32_t raw;
-       };
+       uint8_t v;
+       uint8_t u;
+       uint8_t y;
+       uint8_t a;
 };
 }