Index: include/core/SkPostConfig.h |
=================================================================== |
--- include/core/SkPostConfig.h (revision 8061) |
+++ include/core/SkPostConfig.h (working copy) |
@@ -187,6 +187,26 @@ |
#endif |
#endif |
+/** |
+ * SK_PM_BYTE_ORDER_IS can be used to query the byte order of SkPMColor at compile time. E.g.: |
+ * #if SK_PM_BYTE_ORDER_IS(B, G, R, A) |
epoger
2013/03/11 17:26:32
Clever!!! Very nice.
|
+ * SkDebugf("GDI-compatible SkPMColor"); |
+ * #endif |
+ */ |
+#ifdef SK_CPU_BENDIAN |
+ #define SK_PM_BYTE_ORDER_IS(C0, C1, C2, C3) \ |
+ (SK_ ## C3 ## 32_SHIFT == 0 && \ |
+ SK_ ## C2 ## 32_SHIFT == 8 && \ |
+ SK_ ## C1 ## 32_SHIFT == 16 && \ |
+ SK_ ## C0 ## 32_SHIFT == 24) |
+#else |
+ #define SK_PM_BYTE_ORDER_IS(C0, C1, C2, C3) \ |
+ (SK_ ## C0 ## 32_SHIFT == 0 && \ |
+ SK_ ## C1 ## 32_SHIFT == 8 && \ |
+ SK_ ## C2 ## 32_SHIFT == 16 && \ |
+ SK_ ## C3 ## 32_SHIFT == 24) |
+#endif |
+ |
// stdlib macros |
#if 0 |