/* Generated by wayland-scanner 1.23.0 */ #ifndef COLOR_REPRESENTATION_V1_ENUM_PROTOCOL_H #define COLOR_REPRESENTATION_V1_ENUM_PROTOCOL_H #ifdef __cplusplus extern "C" { #endif #ifndef WP_COLOR_REPRESENTATION_MANAGER_V1_ERROR_ENUM #define WP_COLOR_REPRESENTATION_MANAGER_V1_ERROR_ENUM /** * @ingroup iface_wp_color_representation_manager_v1 * protocol errors */ enum wp_color_representation_manager_v1_error { /** * color representation surface exists already */ WP_COLOR_REPRESENTATION_MANAGER_V1_ERROR_SURFACE_EXISTS = 1, }; #endif /* WP_COLOR_REPRESENTATION_MANAGER_V1_ERROR_ENUM */ #ifndef WP_COLOR_REPRESENTATION_SURFACE_V1_ERROR_ENUM #define WP_COLOR_REPRESENTATION_SURFACE_V1_ERROR_ENUM /** * @ingroup iface_wp_color_representation_surface_v1 * protocol errors */ enum wp_color_representation_surface_v1_error { /** * unsupported alpha mode */ WP_COLOR_REPRESENTATION_SURFACE_V1_ERROR_ALPHA_MODE = 1, /** * unsupported coefficients */ WP_COLOR_REPRESENTATION_SURFACE_V1_ERROR_COEFFICIENTS = 2, /** * the pixel format and a set value are incompatible */ WP_COLOR_REPRESENTATION_SURFACE_V1_ERROR_PIXEL_FORMAT = 3, /** * forbidden request on inert object */ WP_COLOR_REPRESENTATION_SURFACE_V1_ERROR_INERT = 4, }; #endif /* WP_COLOR_REPRESENTATION_SURFACE_V1_ERROR_ENUM */ #ifndef WP_COLOR_REPRESENTATION_SURFACE_V1_ALPHA_MODE_ENUM #define WP_COLOR_REPRESENTATION_SURFACE_V1_ALPHA_MODE_ENUM /** * @ingroup iface_wp_color_representation_surface_v1 * alpha mode * * Specifies how the alpha channel affects the color channels. */ enum wp_color_representation_surface_v1_alpha_mode { /** * premultiplied alpha in electrical values * * Electrical color channel values (after transfer function * encoding) are already multiplied with the alpha channel value. */ WP_COLOR_REPRESENTATION_SURFACE_V1_ALPHA_MODE_PREMULTIPLIED_ELECTRICAL = 0, /** * premultiplied alpha in optical values * * Optical color channel values (before transfer function * encoding) are already multiplied with the alpha channel value. */ WP_COLOR_REPRESENTATION_SURFACE_V1_ALPHA_MODE_PREMULTIPLIED_OPTICAL = 1, /** * straight alpha * * Alpha channel has not been pre-multiplied into color channels. */ WP_COLOR_REPRESENTATION_SURFACE_V1_ALPHA_MODE_STRAIGHT = 2, }; #endif /* WP_COLOR_REPRESENTATION_SURFACE_V1_ALPHA_MODE_ENUM */ #ifndef WP_COLOR_REPRESENTATION_SURFACE_V1_COEFFICIENTS_ENUM #define WP_COLOR_REPRESENTATION_SURFACE_V1_COEFFICIENTS_ENUM /** * @ingroup iface_wp_color_representation_surface_v1 * named coefficients * * Named matrix coefficients used to encode well-known sets of * coefficients. H.273 is the authority, when it comes to the exact values * of coefficients and authoritative specifications, where an equivalent * code point exists. * * A value of 0 is invalid and will never be present in the list of enums. * * Descriptions do list the specifications for convenience. */ enum wp_color_representation_surface_v1_coefficients { /** * The identity matrix * * Coefficients as defined by - IEC 61966-2-1 sRGB - SMPTE ST * 428-1 (2019) * * Equivalent to H.273 MatrixCoefficients code point 0. Compatible * with pixel formats of the RGB family. */ WP_COLOR_REPRESENTATION_SURFACE_V1_COEFFICIENTS_IDENTITY = 1, /** * BT.709 matrix coefficients * * Coefficients as defined by - Rec. ITU-R BT.709-6 - Rec. ITU-R * BT.1361-0 conventional colour gamut system (historical) - Rec. * ITU-R BT.1361-0 conventional colour gamut system and extended * colour gamut system (historical) - IEC 61966-2-4 xvYCC709 - * SMPTE RP 177 (1993) Annex B * * Equivalent to H.273 MatrixCoefficients code point 1. Compatible * with pixel formats of the YCbCr family. */ WP_COLOR_REPRESENTATION_SURFACE_V1_COEFFICIENTS_BT709 = 2, /** * FCC matrix coefficients * * Coefficients as defined by - United States Federal * Communications Commission (2003) Title 47 Code of Federal * Regulations 73.682 (a) (20) * * Equivalent to H.273 MatrixCoefficients code point 4. Compatible * with pixel formats of the YCbCr family. */ WP_COLOR_REPRESENTATION_SURFACE_V1_COEFFICIENTS_FCC = 3, /** * BT.601-7 matrix coefficients * * Coefficients as defined by - Rec. ITU-R BT.470-6 System B, G * (historical) - Rec. ITU-R BT.601-7 625 - Rec. ITU-R BT.601-7 525 * - Rec. ITU-R BT.1358-0 625 (historical) - Rec. ITU-R BT.1358-1 * 525 or 625 (historical) - Rec. ITU-R BT.1700-0 625 PAL and 625 * SECAM - Rec. ITU-R BT.1700-0 NTSC - IEC 61966-2-1 sYCC - IEC * 61966-2-4 xvYCC601 - SMPTE ST 170 (2004) * * Equivalent to H.273 MatrixCoefficients code point 5, 6. * Compatible with pixel formats of the YCbCr family. */ WP_COLOR_REPRESENTATION_SURFACE_V1_COEFFICIENTS_BT601 = 4, /** * SMPTE ST 240 matrix coefficients * * Coefficients as defined by - SMPTE ST 240 (1999) * * Equivalent to H.273 MatrixCoefficients code point 7. Compatible * with pixel formats of the YCbCr family. */ WP_COLOR_REPRESENTATION_SURFACE_V1_COEFFICIENTS_SMPTE240 = 5, /** * BT.2020 and BT.2100 YCbCr matrix coefficients * * Coefficients as defined by - Rec. ITU-R BT.2020-2 * (non-constant luminance) - Rec. ITU-R BT.2100-2 Y′CbCr * * Equivalent to H.273 MatrixCoefficients code point 9. Compatible * with pixel formats of the YCbCr family. */ WP_COLOR_REPRESENTATION_SURFACE_V1_COEFFICIENTS_BT2020 = 6, /** * BT.2020 matrix coefficients for constant luminance * * Coefficients as defined by - Rec. ITU-R BT.2020-2 (constant * luminance) * * Equivalent to H.273 MatrixCoefficients code point 10. Compatible * with pixel formats of the YCbCr family. */ WP_COLOR_REPRESENTATION_SURFACE_V1_COEFFICIENTS_BT2020_CL = 7, /** * BT.2100 ICtCp matrix coefficients * * Coefficients as defined by - Rec. ITU-R BT.2100-2 ICTCP * * Equivalent to H.273 MatrixCoefficients code point 14. Compatible * with pixel formats of the YCbCr family. */ WP_COLOR_REPRESENTATION_SURFACE_V1_COEFFICIENTS_ICTCP = 8, }; #endif /* WP_COLOR_REPRESENTATION_SURFACE_V1_COEFFICIENTS_ENUM */ #ifndef WP_COLOR_REPRESENTATION_SURFACE_V1_RANGE_ENUM #define WP_COLOR_REPRESENTATION_SURFACE_V1_RANGE_ENUM /** * @ingroup iface_wp_color_representation_surface_v1 * Color range values * * Possible color range values. * * A value of 0 is invalid and will never be present in the list of enums. */ enum wp_color_representation_surface_v1_range { /** * Full color range */ WP_COLOR_REPRESENTATION_SURFACE_V1_RANGE_FULL = 1, /** * Limited color range */ WP_COLOR_REPRESENTATION_SURFACE_V1_RANGE_LIMITED = 2, }; #endif /* WP_COLOR_REPRESENTATION_SURFACE_V1_RANGE_ENUM */ #ifndef WP_COLOR_REPRESENTATION_SURFACE_V1_CHROMA_LOCATION_ENUM #define WP_COLOR_REPRESENTATION_SURFACE_V1_CHROMA_LOCATION_ENUM /** * @ingroup iface_wp_color_representation_surface_v1 * Chroma sample location for 4:2:0 YCbCr * * Chroma sample location as defined by H.273 Chroma420SampleLocType. * * A value of 0 is invalid and will never be present in the list of enums. * * The descriptions list the matching Vulkan VkChromaLocation combinations * for convenience. */ enum wp_color_representation_surface_v1_chroma_location { /** * Horizontal offset of 0, vertical offset of 0.5 * * Corresponding to VkChromaLocations: - xChromaOffset: * VK_CHROMA_LOCATION_COSITED_EVEN - yChromaOffset: * VK_CHROMA_LOCATION_MIDPOINT * * Equivalent to H.273 Chroma420SampleLocType 0. */ WP_COLOR_REPRESENTATION_SURFACE_V1_CHROMA_LOCATION_TYPE_0 = 1, /** * Horizontal offset of 0.5, vertical offset of 0.5 * * Corresponding to VkChromaLocations: - xChromaOffset: * VK_CHROMA_LOCATION_MIDPOINT - yChromaOffset: * VK_CHROMA_LOCATION_MIDPOINT * * Equivalent to H.273 Chroma420SampleLocType 1. */ WP_COLOR_REPRESENTATION_SURFACE_V1_CHROMA_LOCATION_TYPE_1 = 2, /** * Horizontal offset of 0, vertical offset of 0 * * Corresponding to VkChromaLocations: - xChromaOffset: * VK_CHROMA_LOCATION_COSITED_EVEN - yChromaOffset: * VK_CHROMA_LOCATION_COSITED_EVEN * * Equivalent to H.273 Chroma420SampleLocType 2. */ WP_COLOR_REPRESENTATION_SURFACE_V1_CHROMA_LOCATION_TYPE_2 = 3, /** * Horizontal offset of 0.5, vertical offset of 0 * * Corresponding to VkChromaLocations: - xChromaOffset: * VK_CHROMA_LOCATION_MIDPOINT - yChromaOffset: * VK_CHROMA_LOCATION_COSITED_EVEN * * Equivalent to H.273 Chroma420SampleLocType 3. */ WP_COLOR_REPRESENTATION_SURFACE_V1_CHROMA_LOCATION_TYPE_3 = 4, /** * Horizontal offset of 0, vertical offset of 1 * * Equivalent to H.273 Chroma420SampleLocType 4. */ WP_COLOR_REPRESENTATION_SURFACE_V1_CHROMA_LOCATION_TYPE_4 = 5, /** * Horizontal offset of 0.5, vertical offset of 1 * * Equivalent to H.273 Chroma420SampleLocType 5. */ WP_COLOR_REPRESENTATION_SURFACE_V1_CHROMA_LOCATION_TYPE_5 = 6, }; #endif /* WP_COLOR_REPRESENTATION_SURFACE_V1_CHROMA_LOCATION_ENUM */ #ifdef __cplusplus } #endif #endif