1 #pragma once 2 3 #include <aidl/android/hardware/graphics/common/PixelFormat.h> 4 5 #include <cstdint> 6 7 namespace pixel::graphics { 8 9 using FrameworkFormat = aidl::android::hardware::graphics::common::PixelFormat; 10 11 #define MapFormat(f) f = static_cast<uint32_t>(FrameworkFormat::f) 12 13 enum class Format : uint32_t { 14 MapFormat(UNSPECIFIED), 15 MapFormat(RGBA_8888), 16 MapFormat(RGBX_8888), 17 MapFormat(RGB_888), 18 MapFormat(RGB_565), 19 MapFormat(BGRA_8888), 20 MapFormat(YCBCR_422_SP), 21 MapFormat(YCRCB_420_SP), 22 MapFormat(YCBCR_422_I), 23 MapFormat(RGBA_FP16), 24 MapFormat(RAW16), 25 MapFormat(BLOB), 26 MapFormat(IMPLEMENTATION_DEFINED), 27 MapFormat(YCBCR_420_888), 28 MapFormat(RAW_OPAQUE), 29 MapFormat(RAW10), 30 MapFormat(RAW12), 31 MapFormat(RGBA_1010102), 32 MapFormat(Y8), 33 MapFormat(Y16), 34 MapFormat(YV12), 35 MapFormat(DEPTH_16), 36 MapFormat(DEPTH_24), 37 MapFormat(DEPTH_24_STENCIL_8), 38 MapFormat(DEPTH_32F), 39 MapFormat(DEPTH_32F_STENCIL_8), 40 MapFormat(STENCIL_8), 41 MapFormat(YCBCR_P010), 42 MapFormat(HSV_888), 43 MapFormat(R_8), 44 MapFormat(R_16_UINT), 45 MapFormat(RG_1616_UINT), 46 MapFormat(RGBA_10101010), 47 48 // Pixel specific formats 49 GOOGLE_NV12 = 0x301, 50 GOOGLE_R8 = 0x303, 51 }; 52 53 #undef MapFormat 54 55 } // namespace pixel::graphics 56