/* * Copyright (c) 2024 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #ifndef API_BASE_FORMATS_H #define API_BASE_FORMATS_H #include <cstdint> #include <base/namespace.h> BASE_BEGIN_NAMESPACE() /** \addtogroup group_formats * @{ */ /** Format */ enum Format { /** Undefined */ BASE_FORMAT_UNDEFINED = 0, /** R4G4 UNORM PACK8 */ BASE_FORMAT_R4G4_UNORM_PACK8 = 1, /** R4G4B4A4 UNORM PACK16 */ BASE_FORMAT_R4G4B4A4_UNORM_PACK16 = 2, /** B4G4R4A4 UNORM PACK16 */ BASE_FORMAT_B4G4R4A4_UNORM_PACK16 = 3, /** R5G6B5 UNORM PACK16 */ BASE_FORMAT_R5G6B5_UNORM_PACK16 = 4, /** B5G6R5 UNORM PACK16 */ BASE_FORMAT_B5G6R5_UNORM_PACK16 = 5, /** R5G5B5A1 UNORM PACK16 */ BASE_FORMAT_R5G5B5A1_UNORM_PACK16 = 6, /** B5G5R5A1 UNORM PACK16 */ BASE_FORMAT_B5G5R5A1_UNORM_PACK16 = 7, /** A1R5G5B5 UNORM PACK16 */ BASE_FORMAT_A1R5G5B5_UNORM_PACK16 = 8, /** R8 UNORM */ BASE_FORMAT_R8_UNORM = 9, /** R8 SNORM */ BASE_FORMAT_R8_SNORM = 10, /** R8 USCALED */ BASE_FORMAT_R8_USCALED = 11, /** R8 SSCALED */ BASE_FORMAT_R8_SSCALED = 12, /** R8 UINT */ BASE_FORMAT_R8_UINT = 13, /** R8 SINT */ BASE_FORMAT_R8_SINT = 14, /** R8 SRGB */ BASE_FORMAT_R8_SRGB = 15, /** R8G8 UNORM */ BASE_FORMAT_R8G8_UNORM = 16, /** R8G8 SNORM */ BASE_FORMAT_R8G8_SNORM = 17, /** R8G8 USCALED */ BASE_FORMAT_R8G8_USCALED = 18, /** R8G8 SSCALED */ BASE_FORMAT_R8G8_SSCALED = 19, /** R8G8 UINT */ BASE_FORMAT_R8G8_UINT = 20, /** R8G8 SINT */ BASE_FORMAT_R8G8_SINT = 21, /** R8G8 SRGB */ BASE_FORMAT_R8G8_SRGB = 22, /** R8G8B8 UNORM */ BASE_FORMAT_R8G8B8_UNORM = 23, /** R8G8B8 SNORM */ BASE_FORMAT_R8G8B8_SNORM = 24, /** R8G8B8 USCALED */ BASE_FORMAT_R8G8B8_USCALED = 25, /** R8G8B8 SSCALED */ BASE_FORMAT_R8G8B8_SSCALED = 26, /** R8G8B8 UINT */ BASE_FORMAT_R8G8B8_UINT = 27, /** R8G8B8 SINT */ BASE_FORMAT_R8G8B8_SINT = 28, /** R8G8B8 SRGB */ BASE_FORMAT_R8G8B8_SRGB = 29, /** B8G8R8 UNORM */ BASE_FORMAT_B8G8R8_UNORM = 30, /** B8G8R8 SNORM */ BASE_FORMAT_B8G8R8_SNORM = 31, /** B8G8R8 SNORM */ BASE_FORMAT_B8G8R8_USCALED = 32, /** B8G8R8 SNORM */ BASE_FORMAT_B8G8R8_SSCALED = 33, /** B8G8R8 UINT */ BASE_FORMAT_B8G8R8_UINT = 34, /** B8G8R8 SINT */ BASE_FORMAT_B8G8R8_SINT = 35, /** B8G8R8 SRGB */ BASE_FORMAT_B8G8R8_SRGB = 36, /** R8G8B8A8 UNORM */ BASE_FORMAT_R8G8B8A8_UNORM = 37, /** R8G8B8A8 SNORM */ BASE_FORMAT_R8G8B8A8_SNORM = 38, /** R8G8B8A8 USCALED */ BASE_FORMAT_R8G8B8A8_USCALED = 39, /** R8G8B8A8 SSCALED */ BASE_FORMAT_R8G8B8A8_SSCALED = 40, /** R8G8B8A8 UINT */ BASE_FORMAT_R8G8B8A8_UINT = 41, /** R8G8B8A8 SINT */ BASE_FORMAT_R8G8B8A8_SINT = 42, /** R8G8B8A8 SRGB */ BASE_FORMAT_R8G8B8A8_SRGB = 43, /** B8G8R8A8 UNORM */ BASE_FORMAT_B8G8R8A8_UNORM = 44, /** B8G8R8A8 SNORM */ BASE_FORMAT_B8G8R8A8_SNORM = 45, /** B8G8R8A8 USCALED */ BASE_FORMAT_B8G8R8A8_USCALED = 46, /** B8G8R8A8 SSCALED */ BASE_FORMAT_B8G8R8A8_SSCALED = 47, /** B8G8R8A8 UINT */ BASE_FORMAT_B8G8R8A8_UINT = 48, /** B8G8R8A8 SINT */ BASE_FORMAT_B8G8R8A8_SINT = 49, /** FORMAT B8G8R8A8 SRGB */ BASE_FORMAT_B8G8R8A8_SRGB = 50, /** A8B8G8R8 UNORM PACK32 */ BASE_FORMAT_A8B8G8R8_UNORM_PACK32 = 51, /** A8B8G8R8 SNORM PACK32 */ BASE_FORMAT_A8B8G8R8_SNORM_PACK32 = 52, /** A8B8G8R8 USCALED PACK32 */ BASE_FORMAT_A8B8G8R8_USCALED_PACK32 = 53, /** A8B8G8R8 SSCALED PACK32 */ BASE_FORMAT_A8B8G8R8_SSCALED_PACK32 = 54, /** A8B8G8R8 UINT PACK32 */ BASE_FORMAT_A8B8G8R8_UINT_PACK32 = 55, /** A8B8G8R8 SINT PACK32 */ BASE_FORMAT_A8B8G8R8_SINT_PACK32 = 56, /** A8B8G8R8 SRGB PACK32 */ BASE_FORMAT_A8B8G8R8_SRGB_PACK32 = 57, /** A2R10G10B10 UNORM PACK32 */ BASE_FORMAT_A2R10G10B10_UNORM_PACK32 = 58, /** A2R10G10B10 SNORM PACK32 */ BASE_FORMAT_A2R10G10B10_SNORM_PACK32 = 59, /** A2R10G10B10 USCALED PACK32 */ BASE_FORMAT_A2R10G10B10_USCALED_PACK32 = 60, /** A2R10G10B10 SSCALED PACK32 */ BASE_FORMAT_A2R10G10B10_SSCALED_PACK32 = 61, /** A2R10G10B10 UINT PACK32 */ BASE_FORMAT_A2R10G10B10_UINT_PACK32 = 62, /** A2R10G10B10 SINT PACK32 */ BASE_FORMAT_A2R10G10B10_SINT_PACK32 = 63, /** A2B10G10R10 UNORM PACK32 */ BASE_FORMAT_A2B10G10R10_UNORM_PACK32 = 64, /** A2B10G10R10 SNORM PACK32 */ BASE_FORMAT_A2B10G10R10_SNORM_PACK32 = 65, /** A2B10G10R10 USCALED PACK32 */ BASE_FORMAT_A2B10G10R10_USCALED_PACK32 = 66, /** A2B10G10R10 SSCALED PACK32 */ BASE_FORMAT_A2B10G10R10_SSCALED_PACK32 = 67, /** A2B10G10R10 UINT PACK32 */ BASE_FORMAT_A2B10G10R10_UINT_PACK32 = 68, /** A2B10G10R10 SINT PACK32 */ BASE_FORMAT_A2B10G10R10_SINT_PACK32 = 69, /** R16 UNORM */ BASE_FORMAT_R16_UNORM = 70, /** R16 SNORM */ BASE_FORMAT_R16_SNORM = 71, /** R16 USCALED */ BASE_FORMAT_R16_USCALED = 72, /** R16 SSCALED */ BASE_FORMAT_R16_SSCALED = 73, /** R16 UINT */ BASE_FORMAT_R16_UINT = 74, /** R16 SINT */ BASE_FORMAT_R16_SINT = 75, /** R16 SFLOAT */ BASE_FORMAT_R16_SFLOAT = 76, /** R16G16 UNORM */ BASE_FORMAT_R16G16_UNORM = 77, /** R16G16 SNORM */ BASE_FORMAT_R16G16_SNORM = 78, /** R16G16 USCALED */ BASE_FORMAT_R16G16_USCALED = 79, /** R16G16 SSCALED */ BASE_FORMAT_R16G16_SSCALED = 80, /** R16G16 UINT */ BASE_FORMAT_R16G16_UINT = 81, /** R16G16 SINT */ BASE_FORMAT_R16G16_SINT = 82, /** R16G16 SFLOAT */ BASE_FORMAT_R16G16_SFLOAT = 83, /** R16G16B16 UNORM */ BASE_FORMAT_R16G16B16_UNORM = 84, /** R16G16B16 SNORM */ BASE_FORMAT_R16G16B16_SNORM = 85, /** R16G16B16 USCALED */ BASE_FORMAT_R16G16B16_USCALED = 86, /** R16G16B16 SSCALED */ BASE_FORMAT_R16G16B16_SSCALED = 87, /** R16G16B16 UINT */ BASE_FORMAT_R16G16B16_UINT = 88, /** R16G16B16 SINT */ BASE_FORMAT_R16G16B16_SINT = 89, /** R16G16B16 SFLOAT */ BASE_FORMAT_R16G16B16_SFLOAT = 90, /** R16G16B16A16 UNORM */ BASE_FORMAT_R16G16B16A16_UNORM = 91, /** R16G16B16A16 SNORM */ BASE_FORMAT_R16G16B16A16_SNORM = 92, /** R16G16B16A16 USCALED */ BASE_FORMAT_R16G16B16A16_USCALED = 93, /** R16G16B16A16 SSCALED */ BASE_FORMAT_R16G16B16A16_SSCALED = 94, /** R16G16B16A16 UINT */ BASE_FORMAT_R16G16B16A16_UINT = 95, /** R16G16B16A16 SINT */ BASE_FORMAT_R16G16B16A16_SINT = 96, /** R16G16B16A16 SFLOAT */ BASE_FORMAT_R16G16B16A16_SFLOAT = 97, /** R32 UINT */ BASE_FORMAT_R32_UINT = 98, /** R32 SINT */ BASE_FORMAT_R32_SINT = 99, /** R32 SFLOAT */ BASE_FORMAT_R32_SFLOAT = 100, /** R32G32 UINT */ BASE_FORMAT_R32G32_UINT = 101, /** R32G32 SINT */ BASE_FORMAT_R32G32_SINT = 102, /** R32G32 SFLOAT */ BASE_FORMAT_R32G32_SFLOAT = 103, /** R32G32B32 UINT */ BASE_FORMAT_R32G32B32_UINT = 104, /** R32G32B32 SINT */ BASE_FORMAT_R32G32B32_SINT = 105, /** R32G32B32 SFLOAT */ BASE_FORMAT_R32G32B32_SFLOAT = 106, /** R32G32B32A32 UINT */ BASE_FORMAT_R32G32B32A32_UINT = 107, /** R32G32B32A32 SINT */ BASE_FORMAT_R32G32B32A32_SINT = 108, /** R32G32B32A32 SFLOAT */ BASE_FORMAT_R32G32B32A32_SFLOAT = 109, /** R64 UINT */ BASE_FORMAT_R64_UINT = 110, /** R64 SINT */ BASE_FORMAT_R64_SINT = 111, /** R64 SFLOAT */ BASE_FORMAT_R64_SFLOAT = 112, /** R64G64 UINT */ BASE_FORMAT_R64G64_UINT = 113, /** R64G64 SINT */ BASE_FORMAT_R64G64_SINT = 114, /** R64G64 SFLOAT */ BASE_FORMAT_R64G64_SFLOAT = 115, /** R64G64B64 UINT */ BASE_FORMAT_R64G64B64_UINT = 116, /** R64G64B64 SINT */ BASE_FORMAT_R64G64B64_SINT = 117, /** R64G64B64 SFLOAT */ BASE_FORMAT_R64G64B64_SFLOAT = 118, /** R64G64B64A64 UINT */ BASE_FORMAT_R64G64B64A64_UINT = 119, /** R64G64B64A64 SINT */ BASE_FORMAT_R64G64B64A64_SINT = 120, /** R32G32B32A32 SFLOAT */ BASE_FORMAT_R64G64B64A64_SFLOAT = 121, /** B10G11R11 UFLOAT PACK32 */ BASE_FORMAT_B10G11R11_UFLOAT_PACK32 = 122, /** E5B9G9R9 UFLOAT PACK32 */ BASE_FORMAT_E5B9G9R9_UFLOAT_PACK32 = 123, /** D16 UNORM */ BASE_FORMAT_D16_UNORM = 124, /** X8 D24 UNORM PACK32 */ BASE_FORMAT_X8_D24_UNORM_PACK32 = 125, /** D32 SFLOAT */ BASE_FORMAT_D32_SFLOAT = 126, /** S8 UINT */ BASE_FORMAT_S8_UINT = 127, /** D16 UNORM S8 UINT */ BASE_FORMAT_D16_UNORM_S8_UINT = 128, /** D24 UNORM S8 UINT */ BASE_FORMAT_D24_UNORM_S8_UINT = 129, /** D32 SFLOAT S8 UINT */ BASE_FORMAT_D32_SFLOAT_S8_UINT = 130, /** BC1 RGB UNORM BLOCK */ BASE_FORMAT_BC1_RGB_UNORM_BLOCK = 131, /** BC1 RGB SRGB BLOCK */ BASE_FORMAT_BC1_RGB_SRGB_BLOCK = 132, /** BC1 RGBA UNORM BLOCK */ BASE_FORMAT_BC1_RGBA_UNORM_BLOCK = 133, /** BC1 RGBA SRGB BLOCK */ BASE_FORMAT_BC1_RGBA_SRGB_BLOCK = 134, /** BC2 UNORM BLOCK */ BASE_FORMAT_BC2_UNORM_BLOCK = 135, /** BC2 SRGB BLOCK */ BASE_FORMAT_BC2_SRGB_BLOCK = 136, /** BC3 UNORM BLOCK */ BASE_FORMAT_BC3_UNORM_BLOCK = 137, /** BC3 SRGB BLOCK */ BASE_FORMAT_BC3_SRGB_BLOCK = 138, /** BC4 UNORM BLOCK */ BASE_FORMAT_BC4_UNORM_BLOCK = 139, /** BC4 SNORM BLOCK */ BASE_FORMAT_BC4_SNORM_BLOCK = 140, /** BC5 UNORM BLOCK */ BASE_FORMAT_BC5_UNORM_BLOCK = 141, /** BC5 SNORM BLOCK */ BASE_FORMAT_BC5_SNORM_BLOCK = 142, /** BC6H UFLOAT BLOCK */ BASE_FORMAT_BC6H_UFLOAT_BLOCK = 143, /** BC6H SFLOAT BLOCK */ BASE_FORMAT_BC6H_SFLOAT_BLOCK = 144, /** BC7 UNORM BLOCK */ BASE_FORMAT_BC7_UNORM_BLOCK = 145, /** BC7 SRGB BLOCK */ BASE_FORMAT_BC7_SRGB_BLOCK = 146, /** ETC2 R8G8B8 UNORM BLOCK */ BASE_FORMAT_ETC2_R8G8B8_UNORM_BLOCK = 147, /** ETC2 R8G8B8 SRGB BLOCK */ BASE_FORMAT_ETC2_R8G8B8_SRGB_BLOCK = 148, /** ETC2 R8G8B8A1 UNORM BLOCK */ BASE_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK = 149, /** ETC2 R8G8B8A1 SRGB BLOCK */ BASE_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK = 150, /** ETC2 R8G8B8A8 UNORM BLOCK */ BASE_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK = 151, /** ETC2 R8G8B8A8 SRGB BLOCK */ BASE_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK = 152, /** EAC R11 UNORM BLOCK */ BASE_FORMAT_EAC_R11_UNORM_BLOCK = 153, /** EAC R11 SNORM BLOCK */ BASE_FORMAT_EAC_R11_SNORM_BLOCK = 154, /** EAC R11G11 UNORM BLOCK */ BASE_FORMAT_EAC_R11G11_UNORM_BLOCK = 155, /** EAC R11G11 SNORM BLOCK */ BASE_FORMAT_EAC_R11G11_SNORM_BLOCK = 156, /** ASTC 4x4 UNORM BLOCK */ BASE_FORMAT_ASTC_4x4_UNORM_BLOCK = 157, /** ASTC 4x4 SRGB BLOCK */ BASE_FORMAT_ASTC_4x4_SRGB_BLOCK = 158, /** ASTC 5x4 UNORM BLOCK */ BASE_FORMAT_ASTC_5x4_UNORM_BLOCK = 159, /** ASTC 5x4 SRGB BLOCK */ BASE_FORMAT_ASTC_5x4_SRGB_BLOCK = 160, /** ASTC 5x5 UNORM BLOCK */ BASE_FORMAT_ASTC_5x5_UNORM_BLOCK = 161, /** ASTC 5x5 SRGB BLOCK */ BASE_FORMAT_ASTC_5x5_SRGB_BLOCK = 162, /** ASTC 6x5 UNORM BLOCK */ BASE_FORMAT_ASTC_6x5_UNORM_BLOCK = 163, /** ASTC 6x5 SRGB BLOCK */ BASE_FORMAT_ASTC_6x5_SRGB_BLOCK = 164, /** ASTC 6x6 UNORM BLOCK */ BASE_FORMAT_ASTC_6x6_UNORM_BLOCK = 165, /** ASTC 6x6 SRGB BLOCK */ BASE_FORMAT_ASTC_6x6_SRGB_BLOCK = 166, /** ASTC 8x5 UNORM BLOCK */ BASE_FORMAT_ASTC_8x5_UNORM_BLOCK = 167, /** ASTC 8x5 SRGB BLOCK */ BASE_FORMAT_ASTC_8x5_SRGB_BLOCK = 168, /** ASTC 8x6 UNORM BLOCK */ BASE_FORMAT_ASTC_8x6_UNORM_BLOCK = 169, /** ASTC 8x6 SRGB BLOCK */ BASE_FORMAT_ASTC_8x6_SRGB_BLOCK = 170, /** ASTC 8x8 UNORM BLOCK */ BASE_FORMAT_ASTC_8x8_UNORM_BLOCK = 171, /** ASTC 8x8 SRGB BLOCK */ BASE_FORMAT_ASTC_8x8_SRGB_BLOCK = 172, /** ASTC 10x5 UNORM BLOCK */ BASE_FORMAT_ASTC_10x5_UNORM_BLOCK = 173, /** ASTC 10x5 SRGB BLOCK */ BASE_FORMAT_ASTC_10x5_SRGB_BLOCK = 174, /** ASTC 10x6 UNORM BLOCK */ BASE_FORMAT_ASTC_10x6_UNORM_BLOCK = 175, /** ASTC 10x6 SRGB BLOCK */ BASE_FORMAT_ASTC_10x6_SRGB_BLOCK = 176, /** ASTC 10x8 UNORM BLOCK */ BASE_FORMAT_ASTC_10x8_UNORM_BLOCK = 177, /** ASTC 10x8 SRGB BLOCK */ BASE_FORMAT_ASTC_10x8_SRGB_BLOCK = 178, /** ASTC 10x10 UNORM BLOCK */ BASE_FORMAT_ASTC_10x10_UNORM_BLOCK = 179, /** ASTC 10x10 SRGB BLOCK */ BASE_FORMAT_ASTC_10x10_SRGB_BLOCK = 180, /** ASTC 12x10 UNORM BLOCK */ BASE_FORMAT_ASTC_12x10_UNORM_BLOCK = 181, /** ASTC 12x10 SRGB BLOCK */ BASE_FORMAT_ASTC_12x10_SRGB_BLOCK = 182, /** ASTC 12x12 UNORM BLOCK */ BASE_FORMAT_ASTC_12x12_UNORM_BLOCK = 183, /** ASTC 12x12 SRGB BLOCK */ BASE_FORMAT_ASTC_12x12_SRGB_BLOCK = 184, /** G8B8G8R8 422 UNORM */ BASE_FORMAT_G8B8G8R8_422_UNORM = 1000156000, /** B8G8R8G8 422 UNORM */ BASE_FORMAT_B8G8R8G8_422_UNORM = 1000156001, /** G8 B8 R8 3PLANE 420 UNORM */ BASE_FORMAT_G8_B8_R8_3PLANE_420_UNORM = 1000156002, /** G8 B8R8 2PLANE 420 UNORM */ BASE_FORMAT_G8_B8R8_2PLANE_420_UNORM = 1000156003, /** G8 B8 R8 3PLANE 422 UNORM */ BASE_FORMAT_G8_B8_R8_3PLANE_422_UNORM = 1000156004, /** G8 B8R8 2PLANE 422 UNORM */ BASE_FORMAT_G8_B8R8_2PLANE_422_UNORM = 1000156005, /** G8 B8R8 3PLANE 444 UNORM */ BASE_FORMAT_G8_B8_R8_3PLANE_444_UNORM = 1000156006, /** Max enumeration */ }; /** @} */ BASE_END_NAMESPACE() #endif // API_BASE_FORMATS_H