#include <win32k.h>
#include <debug.h>
Go to the source code of this file.
◆ NDEBUG
Definition at line 11 of file icm.c.
◆ IntGdiCreateColorSpace()
Definition at line 19 of file icm.c.
21{
23 HCOLORSPACE hCS;
24
27
29
32
34 return hCS;
35}
#define COLORSPACEOBJ_AllocCSWithHandle()
#define COLORSPACEOBJ_UnlockCS(pCS)
LOGCOLORSPACEW lcsColorSpace
_In_ LPLOGCOLORSPACEW pLogColorSpace
Referenced by NtGdiCreateColorSpace().
◆ IntGdiDeleteColorSpace()
BOOL FASTCALL IntGdiDeleteColorSpace |
( |
HCOLORSPACE |
hColorSpace | ) |
|
Definition at line 39 of file icm.c.
41{
43
46 {
49 }
50
51 return Ret;
52}
#define ERROR_INVALID_PARAMETER
#define GDI_HANDLE_GET_TYPE(h)
@ GDILoObjType_LO_ICMLCS_TYPE
BOOL NTAPI GreDeleteObject(HGDIOBJ hobj)
HCOLORSPACE hStockColorSpace
ENGAPI VOID APIENTRY EngSetLastError(_In_ ULONG iError)
Referenced by NtGdiDeleteColorSpace().
◆ IntGetDeviceGammaRamp()
Definition at line 92 of file icm.c.
93{
96
98
103 {
105 {
107 }
108 else
109 {
110
111 for (
i = 0;
i < 256;
i++ )
112 {
113 int NewValue =
i * 256;
114
116 }
117 }
119 }
120
122}
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
struct _PDEVOBJ * PPDEVOBJ
#define RtlCopyMemory(Destination, Source, Length)
Referenced by DxEngGetDeviceGammaRamp(), and NtGdiGetDeviceGammaRamp().
◆ IntSetDeviceGammaRamp()
Definition at line 284 of file icm.c.
285{
289
290 if (!hPDev)
return FALSE;
291
293
298 {
300 {
301
303 {
304
305
308 }
309 }
310
312 {
315 }
316
317
320 for (
i = 0;
i < 256;
i++)
321 {
322 R = Ramp->
Red[
i] / 256;
325
327 {
329 {
334 }
335 }
336
337 if (
Test)
return Ret;
338
339
340 if (TstPeak)
341 {
342 if ((
R != (IcmGR * 256)) ||
343 (
G != (IcmGR * 256)) ||
344 (
B != (IcmGR * 256)) ) TstPeak =
FALSE;
345 }
346 }
347
348
350 {
351
354 }
355
358
360 }
361
362 return Ret;
363}
#define G(r, i, a, b, c, d)
#define ExAllocatePoolWithTag(hernya, size, tag)
#define RtlCompareMemory(s1, s2, l)
PFN_DrvIcmSetDeviceGammaRamp IcmSetDeviceGammaRamp
DRIVER_FUNCTIONS DriverFunctions
BOOL FASTCALL UpdateDeviceGammaRamp(HDEV hPDev)
#define GCAPS2_CHANGEGAMMARAMP
Referenced by DxEngSetDeviceGammaRamp(), and NtGdiSetDeviceGammaRamp().
◆ NtGdiCreateColorSpace()
Definition at line 56 of file icm.c.
58{
61
63 {
66 }
68 {
70 }
72
74 {
77 }
78
80}
#define NT_SUCCESS(StatCode)
VOID NTAPI ProbeForRead(IN CONST VOID *Address, IN SIZE_T Length, IN ULONG Alignment)
#define EXCEPTION_EXECUTE_HANDLER
#define _SEH2_GetExceptionCode()
#define _SEH2_EXCEPT(...)
VOID FASTCALL SetLastNtError(_In_ NTSTATUS Status)
HCOLORSPACE FASTCALL IntGdiCreateColorSpace(PLOGCOLORSPACEEXW pLogColorSpace)
◆ NtGdiDeleteColorSpace()
Definition at line 84 of file icm.c.
86{
88}
BOOL FASTCALL IntGdiDeleteColorSpace(HCOLORSPACE hColorSpace)
◆ NtGdiGetDeviceGammaRamp()
Definition at line 126 of file icm.c.
129{
134
135 if (!Ramp)
return FALSE;
136
139 {
142 }
143
145 if (!SafeRamp)
146 {
150 }
151
153 if (!Ret)
154 {
157 return Ret;
158 }
159
161 {
164 }
166 {
168 }
170
173
175 {
178 }
179 return Ret;
180}
FORCEINLINE VOID DC_UnlockDc(PDC pdc)
FORCEINLINE PDC DC_LockDc(HDC hdc)
#define ERROR_INVALID_HANDLE
VOID NTAPI ProbeForWrite(IN PVOID Address, IN SIZE_T Length, IN ULONG Alignment)
#define ExFreePoolWithTag(_P, _T)
BOOL FASTCALL IntGetDeviceGammaRamp(HDEV hPDev, PGAMMARAMP Ramp)
Referenced by GetDeviceGammaRamp().
◆ NtGdiSetColorSpace()
Definition at line 184 of file icm.c.
186{
190
192 if (!pDC)
193 {
196 }
197 pdcattr = pDC->pdcattr;
198
200 {
203 }
204
206 if (!pCS)
207 {
210 }
211
212 if (pDC->dclevel.pColorSpace)
213 {
215 }
216
217 pDC->dclevel.pColorSpace = pCS;
219
223}
#define COLORSPACEOBJ_LockCS(hCS)
VOID NTAPI GDIOBJ_vDereferenceObject(POBJ pobj)
◆ NtGdiSetDeviceGammaRamp()
Definition at line 367 of file icm.c.
370{
375 if (!Ramp)
return FALSE;
376
379 {
382 }
383
385 if (!SafeRamp)
386 {
390 }
392 {
395 }
397 {
399 }
401
403 {
408 }
409
413 return Ret;
414}
BOOL FASTCALL IntSetDeviceGammaRamp(HDEV hPDev, PGAMMARAMP Ramp, BOOL Test)
◆ NtGdiSetIcmMode()
Definition at line 418 of file icm.c.
421{
422
424 {
426 }
428 {
429 return 0;
430 }
432 {
434 }
435
436 return 0;
437}
◆ UpdateDeviceGammaRamp()
Definition at line 227 of file icm.c.
228{
233
238 {
243
246
248
250 if(!palGDI)
return FALSE;
251 palPtr = (
PALOBJ*) palGDI;
252
255 else
256 palGDI->
flFlags &= ~PAL_GAMMACORRECTION;
257
259 {
260
261
262
263 palGDI->
hPDev = hPDev;
265 palPtr,
266 0,
267 0,
269 }
271 return Ret;
272 }
273 else
275}
@ PDEV_DRIVER_PUNTED_CALL
PFN_DrvSetPalette SetPalette
#define PALETTE_ShareLockPalette(hpal)
#define PALETTE_ShareUnlockPalette(ppal)
#define IGRF_RGB_256WORDS
Referenced by IntSetDeviceGammaRamp().
◆ hStockColorSpace
HCOLORSPACE hStockColorSpace = NULL |
◆ IcmGammaRangeSet
INT IcmGammaRangeSet = 128 |