X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fmesa%2Fmain%2Fformats.h;h=3a694a813dedae50da13af9cb3210ea9cf70007d;hb=a83c1d61c2919485b1e8ad33fcf658c85b67ba3a;hp=b22b07338b38bf9d9e4bcf888211e76eacf89497;hpb=0cbdead62e615dc197b3831941ae311865fa6642;p=mesa.git diff --git a/src/mesa/main/formats.h b/src/mesa/main/formats.h index b22b07338b3..3a694a813de 100644 --- a/src/mesa/main/formats.h +++ b/src/mesa/main/formats.h @@ -46,6 +46,14 @@ extern "C" { #define MESA_UNSIGNED_BYTE_4_4 (GL_UNSIGNED_BYTE<<1) +/** + * Max number of bytes for any non-compressed pixel format below, or for + * intermediate pixel storage in Mesa. This should never be less than + * 16. Maybe 32 someday? + */ +#define MAX_PIXEL_BYTES 16 + + /** * Mesa texture/renderbuffer image formats. */ @@ -91,8 +99,8 @@ typedef enum MESA_FORMAT_YCBCR, /* YYYY YYYY UorV UorV */ MESA_FORMAT_YCBCR_REV, /* UorV UorV YYYY YYYY */ MESA_FORMAT_R8, /* RRRR RRRR */ - MESA_FORMAT_RG88, /* GGGG GGGG RRRR RRRR */ - MESA_FORMAT_RG88_REV, /* RRRR RRRR GGGG GGGG */ + MESA_FORMAT_GR88, /* GGGG GGGG RRRR RRRR */ + MESA_FORMAT_RG88, /* RRRR RRRR GGGG GGGG */ MESA_FORMAT_R16, /* RRRR RRRR RRRR RRRR */ MESA_FORMAT_RG1616, /* GGGG GGGG GGGG GGGG RRRR RRRR RRRR RRRR */ MESA_FORMAT_RG1616_REV, /* RRRR RRRR RRRR RRRR GGGG GGGG GGGG GGGG */ @@ -250,6 +258,8 @@ typedef enum MESA_FORMAT_SIGNED_LA_LATC2, /*@}*/ + MESA_FORMAT_ETC1_RGB8, + MESA_FORMAT_SIGNED_A8, /* AAAA AAAA */ MESA_FORMAT_SIGNED_L8, /* LLLL LLLL */ MESA_FORMAT_SIGNED_AL88, /* AAAA AAAA LLLL LLLL */ @@ -280,6 +290,9 @@ _mesa_get_format_bytes(gl_format format); extern GLint _mesa_get_format_bits(gl_format format, GLenum pname); +extern GLuint +_mesa_get_format_max_bits(gl_format format); + extern GLenum _mesa_get_format_datatype(gl_format format); @@ -330,7 +343,8 @@ _mesa_format_num_components(gl_format format); GLboolean _mesa_format_matches_format_and_type(gl_format gl_format, - GLenum format, GLenum type); + GLenum format, GLenum type, + GLboolean swapBytes); #ifdef __cplusplus