mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 13:58:04 +02:00
replace FORMAT var with RB_TYPE
This commit is contained in:
parent
fd02ca7711
commit
68bc7df638
1 changed files with 28 additions and 51 deletions
|
|
@ -30,7 +30,8 @@
|
|||
*
|
||||
* Define the following macros before including this file:
|
||||
* NAME(BASE) to generate the function name (i.e. add prefix or suffix)
|
||||
* FORMAT must be either GL_RGBA, GL_RGBA8 or GL_COLOR_INDEX8_EXT
|
||||
* RB_TYPE the renderbuffer DataType
|
||||
* CI_MODE if set, color index mode, else RGBA
|
||||
* SPAN_VARS to declare any local variables
|
||||
* INIT_PIXEL_PTR(P, X, Y) to initialize a pointer to a pixel
|
||||
* INC_PIXEL_PTR(P) to increment a pixel pointer by one pixel
|
||||
|
|
@ -45,6 +46,13 @@
|
|||
#include "macros.h"
|
||||
|
||||
|
||||
#ifdef CI_MODE
|
||||
#define RB_COMPONENTS 1
|
||||
#elif !defined(RB_COMPONENTS)
|
||||
#define RB_COMPONENTS 4
|
||||
#endif
|
||||
|
||||
|
||||
static void
|
||||
NAME(get_row)( GLcontext *ctx, struct gl_renderbuffer *rb,
|
||||
GLuint count, GLint x, GLint y, void *values )
|
||||
|
|
@ -52,14 +60,10 @@ NAME(get_row)( GLcontext *ctx, struct gl_renderbuffer *rb,
|
|||
#ifdef SPAN_VARS
|
||||
SPAN_VARS
|
||||
#endif
|
||||
#if FORMAT == GL_RGBA
|
||||
GLchan (*dest)[4] = (GLchan (*)[4]) values;
|
||||
#elif FORMAT == GL_RGBA8
|
||||
GLubyte (*dest)[4] = (GLubyte (*)[4]) values;
|
||||
#elif FORMAT == GL_COLOR_INDEX8_EXT
|
||||
GLubyte *dest = (GLubyte *) values;
|
||||
#ifdef CI_MODE
|
||||
RB_TYPE *dest = (RB_TYPE *) values;
|
||||
#else
|
||||
#error FORMAT must be set!!!!
|
||||
RB_TYPE (*dest)[RB_COMPONENTS] = (RB_TYPE (*)[RB_COMPONENTS]) values;
|
||||
#endif
|
||||
GLuint i;
|
||||
INIT_PIXEL_PTR(pixel, x, y);
|
||||
|
|
@ -70,6 +74,7 @@ NAME(get_row)( GLcontext *ctx, struct gl_renderbuffer *rb,
|
|||
(void) rb;
|
||||
}
|
||||
|
||||
|
||||
static void
|
||||
NAME(get_values)( GLcontext *ctx, struct gl_renderbuffer *rb,
|
||||
GLuint count, const GLint x[], const GLint y[], void *values )
|
||||
|
|
@ -77,12 +82,10 @@ NAME(get_values)( GLcontext *ctx, struct gl_renderbuffer *rb,
|
|||
#ifdef SPAN_VARS
|
||||
SPAN_VARS
|
||||
#endif
|
||||
#if FORMAT == GL_RGBA
|
||||
GLchan (*dest)[4] = (GLchan (*)[4]) values;
|
||||
#elif FORMAT == GL_RGBA8
|
||||
GLubyte (*dest)[4] = (GLubyte (*)[4]) values;
|
||||
#elif FORMAT == GL_COLOR_INDEX8_EXT
|
||||
GLubyte *dest = (GLubyte *) values;
|
||||
#ifdef CI_MODE
|
||||
RB_TYPE *dest = (RB_TYPE *) values;
|
||||
#else
|
||||
RB_TYPE (*dest)[RB_COMPONENTS] = (RB_TYPE (*)[RB_COMPONENTS]) values;
|
||||
#endif
|
||||
GLuint i;
|
||||
for (i = 0; i < count; i++) {
|
||||
|
|
@ -101,13 +104,7 @@ NAME(put_row)( GLcontext *ctx, struct gl_renderbuffer *rb,
|
|||
#ifdef SPAN_VARS
|
||||
SPAN_VARS
|
||||
#endif
|
||||
#if FORMAT == GL_RGBA
|
||||
const GLchan (*src)[4] = (const GLchan (*)[4]) values;
|
||||
#elif FORMAT == GL_RGBA8
|
||||
const GLubyte (*src)[4] = (const GLubyte (*)[4]) values;
|
||||
#elif FORMAT == GL_COLOR_INDEX8_EXT
|
||||
const GLubyte (*src)[1] = (const GLubyte (*)[1]) values;
|
||||
#endif
|
||||
const RB_TYPE (*src)[RB_COMPONENTS] = (const RB_TYPE (*)[RB_COMPONENTS]) values;
|
||||
GLuint i;
|
||||
INIT_PIXEL_PTR(pixel, x, y);
|
||||
if (mask) {
|
||||
|
|
@ -127,7 +124,8 @@ NAME(put_row)( GLcontext *ctx, struct gl_renderbuffer *rb,
|
|||
(void) rb;
|
||||
}
|
||||
|
||||
#if (FORMAT == GL_RGBA) || (FORMAT == GL_RGBA8)
|
||||
|
||||
#if !defined(CI_MODE)
|
||||
static void
|
||||
NAME(put_row_rgb)( GLcontext *ctx, struct gl_renderbuffer *rb,
|
||||
GLuint count, GLint x, GLint y,
|
||||
|
|
@ -136,13 +134,7 @@ NAME(put_row_rgb)( GLcontext *ctx, struct gl_renderbuffer *rb,
|
|||
#ifdef SPAN_VARS
|
||||
SPAN_VARS
|
||||
#endif
|
||||
#if FORMAT == GL_RGBA
|
||||
const GLchan (*src)[3] = (const GLchan (*)[3]) values;
|
||||
#elif FORMAT == GL_RGBA8
|
||||
const GLubyte (*src)[3] = (const GLubyte (*)[3]) values;
|
||||
#else
|
||||
#error bad format
|
||||
#endif
|
||||
const RB_TYPE (*src)[3] = (const RB_TYPE (*)[3]) values;
|
||||
GLuint i;
|
||||
INIT_PIXEL_PTR(pixel, x, y);
|
||||
for (i = 0; i < count; i++) {
|
||||
|
|
@ -159,6 +151,7 @@ NAME(put_row_rgb)( GLcontext *ctx, struct gl_renderbuffer *rb,
|
|||
}
|
||||
#endif
|
||||
|
||||
|
||||
static void
|
||||
NAME(put_mono_row)( GLcontext *ctx, struct gl_renderbuffer *rb,
|
||||
GLuint count, GLint x, GLint y,
|
||||
|
|
@ -167,13 +160,7 @@ NAME(put_mono_row)( GLcontext *ctx, struct gl_renderbuffer *rb,
|
|||
#ifdef SPAN_VARS
|
||||
SPAN_VARS
|
||||
#endif
|
||||
#if FORMAT == GL_RGBA
|
||||
const GLchan *src = (const GLchan *) value;
|
||||
#elif FORMAT == GL_RGBA8
|
||||
const GLubyte *src = (const GLubyte *) value;
|
||||
#elif FORMAT == GL_COLOR_INDEX8_EXT
|
||||
const GLubyte *src = (const GLubyte *) value;
|
||||
#endif
|
||||
const RB_TYPE *src = (const RB_TYPE *) value;
|
||||
GLuint i;
|
||||
INIT_PIXEL_PTR(pixel, x, y);
|
||||
if (mask) {
|
||||
|
|
@ -202,13 +189,7 @@ NAME(put_values)( GLcontext *ctx, struct gl_renderbuffer *rb,
|
|||
#ifdef SPAN_VARS
|
||||
SPAN_VARS
|
||||
#endif
|
||||
#if FORMAT == GL_RGBA
|
||||
const GLchan (*src)[4] = (const GLchan (*)[4]) values;
|
||||
#elif FORMAT == GL_RGBA8
|
||||
const GLubyte (*src)[4] = (const GLubyte (*)[4]) values;
|
||||
#elif FORMAT == GL_COLOR_INDEX8_EXT
|
||||
const GLubyte (*src)[1] = (const GLubyte (*)[1]) values;
|
||||
#endif
|
||||
const RB_TYPE (*src)[RB_COMPONENTS] = (const RB_TYPE (*)[RB_COMPONENTS]) values;
|
||||
GLuint i;
|
||||
ASSERT(mask);
|
||||
for (i = 0; i < count; i++) {
|
||||
|
|
@ -229,13 +210,7 @@ NAME(put_mono_values)( GLcontext *ctx, struct gl_renderbuffer *rb,
|
|||
#ifdef SPAN_VARS
|
||||
SPAN_VARS
|
||||
#endif
|
||||
#if FORMAT == GL_RGBA
|
||||
const GLchan *src = (const GLchan *) value;
|
||||
#elif FORMAT == GL_RGBA8
|
||||
const GLubyte *src = (const GLubyte *) value;
|
||||
#elif FORMAT == GL_COLOR_INDEX8_EXT
|
||||
const GLubyte *src = (const GLubyte *) value;
|
||||
#endif
|
||||
const RB_TYPE *src = (const RB_TYPE *) value;
|
||||
GLuint i;
|
||||
ASSERT(mask);
|
||||
for (i = 0; i < count; i++) {
|
||||
|
|
@ -249,10 +224,12 @@ NAME(put_mono_values)( GLcontext *ctx, struct gl_renderbuffer *rb,
|
|||
|
||||
|
||||
#undef NAME
|
||||
#undef RB_TYPE
|
||||
#undef RB_COMPONENTS
|
||||
#undef CI_MODE
|
||||
#undef SPAN_VARS
|
||||
#undef INIT_PIXEL_PTR
|
||||
#undef INC_PIXEL_PTR
|
||||
#undef STORE_PIXEL
|
||||
#undef STORE_PIXEL_RGB
|
||||
#undef FETCH_PIXEL
|
||||
#undef FORMAT
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue