1 #pragma once 2 3 #include <aidl/android/hardware/graphics/common/PlaneLayoutComponentType.h> 4 5 #include <cstdint> 6 7 namespace pixel::graphics { 8 9 using aidl::android::hardware::graphics::common::PlaneLayoutComponentType; 10 11 // These are represented as bitwise in PlaneLayoutComponentType.aidl, but we 12 // do not treat them as such. This helps in better separation of component type 13 // as required. 14 enum class ComponentType : uint32_t { 15 Y = static_cast<uint32_t>(PlaneLayoutComponentType::Y), 16 CB = static_cast<uint32_t>(PlaneLayoutComponentType::CB), 17 CR = static_cast<uint32_t>(PlaneLayoutComponentType::CR), 18 R = static_cast<uint32_t>(PlaneLayoutComponentType::R), 19 G = static_cast<uint32_t>(PlaneLayoutComponentType::G), 20 B = static_cast<uint32_t>(PlaneLayoutComponentType::B), 21 RAW = static_cast<uint32_t>(PlaneLayoutComponentType::RAW), 22 A = static_cast<uint32_t>(PlaneLayoutComponentType::A), 23 24 // These are not in PlaneLayoutComponentType 25 D = 1 << 21, 26 S, 27 BLOB, 28 }; 29 30 } // namespace pixel::graphics 31