[PATCH 1/2] winex11: Introduce GAMMA_RAMP_SIZE.
Józef Kucia
jkucia at codeweavers.com
Mon May 28 03:26:42 CDT 2018
Signed-off-by: Józef Kucia <jkucia at codeweavers.com>
---
dlls/winex11.drv/x11drv.h | 8 +++++---
dlls/winex11.drv/xvidmode.c | 12 ++++++------
2 files changed, 11 insertions(+), 9 deletions(-)
diff --git a/dlls/winex11.drv/x11drv.h b/dlls/winex11.drv/x11drv.h
index 6781d6073a7d..85a05a904aae 100644
--- a/dlls/winex11.drv/x11drv.h
+++ b/dlls/winex11.drv/x11drv.h
@@ -114,11 +114,13 @@ typedef struct
int exposures; /* count of graphics exposures operations */
} X11DRV_PDEVICE;
+#define GAMMA_RAMP_SIZE 256
+
struct x11drv_gamma_ramp
{
- WORD red[256];
- WORD green[256];
- WORD blue[256];
+ WORD red[GAMMA_RAMP_SIZE];
+ WORD green[GAMMA_RAMP_SIZE];
+ WORD blue[GAMMA_RAMP_SIZE];
};
static inline X11DRV_PDEVICE *get_x11drv_dev( PHYSDEV dev )
diff --git a/dlls/winex11.drv/xvidmode.c b/dlls/winex11.drv/xvidmode.c
index 0020b08e70b3..63282e727bc9 100644
--- a/dlls/winex11.drv/xvidmode.c
+++ b/dlls/winex11.drv/xvidmode.c
@@ -202,7 +202,7 @@ void X11DRV_XF86VM_Init(void)
pXF86VidModeGetGammaRampSize(gdi_display, DefaultScreen(gdi_display),
&xf86vm_gammaramp_size);
if (X11DRV_check_error()) xf86vm_gammaramp_size = 0;
- if (xf86vm_gammaramp_size == 256)
+ if (xf86vm_gammaramp_size == GAMMA_RAMP_SIZE)
xf86vm_use_gammaramp = TRUE;
}
#endif /* X_XF86VidModeSetGammaRamp */
@@ -250,16 +250,16 @@ sym_not_found:
#ifdef X_XF86VidModeSetGamma
-static void GenerateRampFromGamma(WORD ramp[256], float gamma)
+static void GenerateRampFromGamma(WORD ramp[GAMMA_RAMP_SIZE], float gamma)
{
float r_gamma = 1/gamma;
unsigned i;
TRACE("gamma is %f\n", r_gamma);
- for (i=0; i<256; i++)
+ for (i=0; i<GAMMA_RAMP_SIZE; i++)
ramp[i] = pow(i/255.0, r_gamma) * 65535.0;
}
-static BOOL ComputeGammaFromRamp(WORD ramp[256], float *gamma)
+static BOOL ComputeGammaFromRamp(WORD ramp[GAMMA_RAMP_SIZE], float *gamma)
{
float r_x, r_y, r_lx, r_ly, r_d, r_v, r_e, g_avg, g_min, g_max;
unsigned i, f, l, g_n, c;
@@ -342,7 +342,7 @@ static BOOL X11DRV_XF86VM_GetGammaRamp(struct x11drv_gamma_ramp *ramp)
if (xf86vm_major < 2) return FALSE; /* no gamma control */
#ifdef X_XF86VidModeSetGammaRamp
if (xf86vm_use_gammaramp)
- return pXF86VidModeGetGammaRamp(gdi_display, DefaultScreen(gdi_display), 256,
+ return pXF86VidModeGetGammaRamp(gdi_display, DefaultScreen(gdi_display), GAMMA_RAMP_SIZE,
ramp->red, ramp->green, ramp->blue);
#endif
if (pXF86VidModeGetGamma(gdi_display, DefaultScreen(gdi_display), &gamma))
@@ -367,7 +367,7 @@ static BOOL X11DRV_XF86VM_SetGammaRamp(struct x11drv_gamma_ramp *ramp)
!ComputeGammaFromRamp(ramp->blue, &gamma.blue)) return FALSE;
#ifdef X_XF86VidModeSetGammaRamp
if (xf86vm_use_gammaramp)
- return pXF86VidModeSetGammaRamp(gdi_display, DefaultScreen(gdi_display), 256,
+ return pXF86VidModeSetGammaRamp(gdi_display, DefaultScreen(gdi_display), GAMMA_RAMP_SIZE,
ramp->red, ramp->green, ramp->blue);
#endif
return pXF86VidModeSetGamma(gdi_display, DefaultScreen(gdi_display), &gamma);
--
2.16.1
More information about the wine-devel
mailing list