28#include "wincodecsdk.h"
37 &IID_IWICImagingFactory, (
void**)&
factory);
38 ok(
hr ==
S_OK,
"CoCreateInstance failed, hr=%lx\n",
hr);
43 IWICImagingFactory_Release(
factory);
58 hr = IWICComponentInfo_GetComponentType(
info, &componenttype);
60 IWICComponentInfo_Release(
info);
67 struct decoder_info_test
71 const char *extensions;
73 } decoder_info_tests[] =
87 "image/ico,image/x-icon",
92 &CLSID_WICJpegDecoder,
93 "image/jpeg,image/jpe,image/jpg",
94 ".jpeg,.jpe,.jpg,.jfif,.exif",
103 &CLSID_WICTiffDecoder,
104 "image/tiff,image/tif",
109 &CLSID_WICDdsDecoder,
126 struct decoder_info_test *
test = &decoder_info_tests[
i];
128 WCHAR extensionsW[64];
132 if (
test->clsid == &CLSID_WICDdsDecoder &&
hr !=
S_OK) {
133 win_skip(
"DDS decoder is not supported\n");
141 "%u: failed to get decoder info, hr %#lx.\n",
i,
hr);
145 decoder_info2 =
NULL;
146 hr = IWICBitmapDecoder_GetDecoderInfo(
decoder, &decoder_info2);
147 ok(
hr ==
S_OK,
"Failed to get decoder info, hr %#lx.\n",
hr);
148 ok(
decoder_info == decoder_info2,
"Unexpected decoder info instance.\n");
150 hr = IWICBitmapDecoderInfo_QueryInterface(
decoder_info, &IID_IWICBitmapDecoder, (
void **)&decoder2);
154 IWICBitmapDecoderInfo_Release(decoder_info2);
156 IWICBitmapDecoder_Release(
decoder);
162 ok(
hr ==
S_OK,
"CreateComponentInfo failed, hr=%lx\n",
hr);
164 hr = IWICComponentInfo_QueryInterface(
info, &IID_IWICBitmapDecoderInfo, (
void **)&
decoder_info);
165 ok(
hr ==
S_OK,
"QueryInterface failed, hr=%lx\n",
hr);
171 ok(
hr ==
S_OK,
"GetCLSID failed, hr=%lx\n",
hr);
181 ok(
len ==
lstrlenW(mimetypeW) + 1,
"GetMimeType returned wrong len %i\n",
len);
188 ok(
hr ==
S_OK,
"GetMimeType failed, hr=%lx\n",
hr);
190 ok(
len ==
lstrlenW(mimetypeW) + 1,
"GetMimeType returned wrong len %i\n",
len);
194 ok(
hr ==
S_OK,
"GetMimeType failed, hr=%lx\n",
hr);
197 ok(
len ==
lstrlenW(mimetypeW) + 1,
"GetMimeType returned wrong len %i\n",
len);
202 ok(
len ==
lstrlenW(mimetypeW) + 1,
"GetMimeType returned wrong len %i\n",
len);
205 ok(
hr ==
S_OK,
"GetMimeType failed, hr=%lx\n",
hr);
208 ok(
len ==
lstrlenW(mimetypeW) + 1,
"GetMimeType returned wrong len %i\n",
len);
210 num_formats = 0xdeadbeef;
212 ok(
hr ==
S_OK,
"GetPixelFormats failed, hr=%lx\n",
hr);
213 ok((num_formats <= 21 && num_formats >= 1) ||
215 "%u: got %d formats\n",
i, num_formats);
222 ok(
hr ==
S_OK,
"GetPixelFormats failed, hr=%lx\n",
hr);
227 ok(
hr ==
S_OK,
"GetPixelFormats failed, hr=%lx\n",
hr);
229 "%u: got %d formats\n",
i, num_formats);
234 ok(
hr ==
S_OK,
"GetPixelFormats failed, hr=%lx\n",
hr);
235 ok(
count == num_formats,
"got %d formats, expected %d\n",
count, num_formats);
236 for (
j = 0;
j < num_formats;
j++)
245 ok(
hr ==
S_OK,
"GetPixelFormats failed, hr=%lx\n",
hr);
246 ok(
count == num_formats,
"got %d formats, expected %d\n",
count, num_formats);
254 ok(
len ==
lstrlenW(extensionsW) + 1,
"%u: GetFileExtensions returned wrong len %i\n",
i,
len);
260 ok(
hr ==
S_OK,
"GetFileExtensions failed, hr=%lx\n",
hr);
262 ok(
len ==
lstrlenW(extensionsW) + 1,
"GetFileExtensions returned wrong len %i\n",
len);
266 ok(
hr ==
S_OK,
"GetFileExtensions failed, hr=%lx\n",
hr);
270 ok(
len ==
lstrlenW(extensionsW) + 1,
"GetFileExtensions returned wrong len %i\n",
len);
275 ok(
len ==
lstrlenW(extensionsW) + 1,
"GetFileExtensions returned wrong len %i\n",
len);
278 ok(
hr ==
S_OK,
"GetFileExtensions failed, hr=%lx\n",
hr);
282 ok(
len ==
lstrlenW(extensionsW) + 1,
"GetFileExtensions returned wrong len %i\n",
len);
285 IWICComponentInfo_Release(
info);
303 BOOL supportstransparency;
306 ok(
hr ==
S_OK,
"CreateComponentInfo failed, hr=%lx\n",
hr);
311 hr = IWICComponentInfo_GetAuthor(
info, 0,
NULL, 0);
316 ok(
hr ==
S_OK,
"GetAuthor failed, hr=%lx\n",
hr);
317 ok(len < 255 && len > 0,
"invalid length 0x%x\n",
len);
323 ok(
value[0] == 0xaaaa,
"string modified\n");
329 ok(
len == known_len,
"got length of 0x%x, expected 0x%x\n",
len, known_len);
330 ok(
value[known_len-1] == 0xaaaa,
"string modified past given length\n");
331 ok(
value[0] == 0xaaaa,
"string modified\n");
336 ok(
hr ==
S_OK,
"GetAuthor failed, hr=%lx\n",
hr);
337 ok(
len == known_len,
"got length of 0x%x, expected 0x%x\n",
len, known_len);
338 ok(
value[known_len-1] == 0,
"string not terminated at expected length\n");
339 ok(
value[known_len-2] != 0xaaaa,
"string not modified at given length\n");
344 ok(
hr ==
S_OK,
"GetAuthor failed, hr=%lx\n",
hr);
345 ok(
len == known_len,
"got length of 0x%x, expected 0x%x\n",
len, known_len);
346 ok(
value[known_len] == 0xaaaa,
"string modified past end\n");
347 ok(
value[known_len-1] == 0,
"string not terminated at expected length\n");
348 ok(
value[known_len-2] != 0xaaaa,
"string not modified at given length\n");
355 ok(
hr ==
S_OK,
"GetCLSID failed, hr=%lx\n",
hr);
358 hr = IWICComponentInfo_GetComponentType(
info,
NULL);
361 hr = IWICComponentInfo_GetComponentType(
info, &componenttype);
362 ok(
hr ==
S_OK,
"GetComponentType failed, hr=%lx\n",
hr);
363 ok(componenttype ==
WICPixelFormat,
"unexpected component type 0x%x\n", componenttype);
367 ok(
hr ==
S_OK,
"GetFriendlyName failed, hr=%lx\n",
hr);
368 ok(len < 255 && len > 0,
"invalid length 0x%x\n",
len);
370 hr = IWICComponentInfo_GetSigningStatus(
info,
NULL);
373 hr = IWICComponentInfo_GetSigningStatus(
info, &signing);
374 ok(
hr ==
S_OK,
"GetSigningStatus failed, hr=%lx\n",
hr);
379 ok(
hr ==
S_OK,
"GetSpecVersion failed, hr=%lx\n",
hr);
380 ok(
len == 0,
"invalid length 0x%x\n",
len);
383 hr = IWICComponentInfo_GetVendorGUID(
info, &
guid);
384 ok(
hr ==
S_OK,
"GetVendorGUID failed, hr=%lx\n",
hr);
390 ok(
hr ==
S_OK,
"GetVersion failed, hr=%lx\n",
hr);
391 ok(
len == 0,
"invalid length 0x%x\n",
len);
393 hr = IWICComponentInfo_QueryInterface(
info, &IID_IWICPixelFormatInfo, (
void**)&pixelformat_info);
394 ok(
hr ==
S_OK,
"QueryInterface failed, hr=%lx\n",
hr);
398 hr = IWICPixelFormatInfo_GetBitsPerPixel(pixelformat_info,
NULL);
401 hr = IWICPixelFormatInfo_GetBitsPerPixel(pixelformat_info, &uiresult);
402 ok(
hr ==
S_OK,
"GetBitsPerPixel failed, hr=%lx\n",
hr);
403 ok(uiresult == 32,
"unexpected bpp %i\n", uiresult);
405 hr = IWICPixelFormatInfo_GetChannelCount(pixelformat_info, &uiresult);
406 ok(
hr ==
S_OK,
"GetChannelCount failed, hr=%lx\n",
hr);
407 ok(uiresult == 4,
"unexpected channel count %i\n", uiresult);
409 hr = IWICPixelFormatInfo_GetChannelMask(pixelformat_info, 0, 0,
NULL,
NULL);
412 uiresult = 0xdeadbeef;
413 hr = IWICPixelFormatInfo_GetChannelMask(pixelformat_info, 0, 0,
NULL, &uiresult);
414 ok(
hr ==
S_OK,
"GetChannelMask failed, hr=%lx\n",
hr);
415 ok(uiresult == 4,
"unexpected length %i\n", uiresult);
417 memset(abbuffer, 0xaa,
sizeof(abbuffer));
418 hr = IWICPixelFormatInfo_GetChannelMask(pixelformat_info, 0, known_len, abbuffer,
NULL);
420 ok(abbuffer[0] == 0xaa,
"buffer modified\n");
422 uiresult = 0xdeadbeef;
423 memset(abbuffer, 0xaa,
sizeof(abbuffer));
424 hr = IWICPixelFormatInfo_GetChannelMask(pixelformat_info, 0, 3, abbuffer, &uiresult);
426 ok(abbuffer[0] == 0xaa,
"buffer modified\n");
427 ok(uiresult == 4,
"unexpected length %i\n", uiresult);
429 memset(abbuffer, 0xaa,
sizeof(abbuffer));
430 hr = IWICPixelFormatInfo_GetChannelMask(pixelformat_info, 0, 4, abbuffer, &uiresult);
431 ok(
hr ==
S_OK,
"GetChannelMask failed, hr=%lx\n",
hr);
432 ok(*((
ULONG*)abbuffer) == 0xff,
"unexpected mask 0x%lx\n", *((
ULONG*)abbuffer));
433 ok(uiresult == 4,
"unexpected length %i\n", uiresult);
435 memset(abbuffer, 0xaa,
sizeof(abbuffer));
436 hr = IWICPixelFormatInfo_GetChannelMask(pixelformat_info, 0, 5, abbuffer, &uiresult);
437 ok(
hr ==
S_OK,
"GetChannelMask failed, hr=%lx\n",
hr);
438 ok(*((
ULONG*)abbuffer) == 0xff,
"unexpected mask 0x%lx\n", *((
ULONG*)abbuffer));
439 ok(abbuffer[4] == 0xaa,
"buffer modified past actual length\n");
440 ok(uiresult == 4,
"unexpected length %i\n", uiresult);
443 hr = IWICPixelFormatInfo_GetFormatGUID(pixelformat_info, &
guid);
444 ok(
hr ==
S_OK,
"GetFormatGUID failed, hr=%lx\n",
hr);
447 IWICPixelFormatInfo_Release(pixelformat_info);
450 hr = IWICComponentInfo_QueryInterface(
info, &IID_IWICPixelFormatInfo2, (
void**)&pixelformat_info2);
453 win_skip(
"IWICPixelFormatInfo2 not supported\n");
456 hr = IWICPixelFormatInfo2_GetNumericRepresentation(pixelformat_info2,
NULL);
459 numericrepresentation = 0xdeadbeef;
460 hr = IWICPixelFormatInfo2_GetNumericRepresentation(pixelformat_info2, &numericrepresentation);
461 ok(
hr ==
S_OK,
"GetNumericRepresentation failed, hr=%lx\n",
hr);
464 hr = IWICPixelFormatInfo2_SupportsTransparency(pixelformat_info2,
NULL);
467 supportstransparency = 0xdeadbeef;
468 hr = IWICPixelFormatInfo2_SupportsTransparency(pixelformat_info2, &supportstransparency);
469 ok(
hr ==
S_OK,
"SupportsTransparency failed, hr=%lx\n",
hr);
470 ok(supportstransparency == 1,
"unexpected value %i\n", supportstransparency);
472 IWICPixelFormatInfo2_Release(pixelformat_info2);
475 IWICComponentInfo_Release(
info);
486 ok(
hr ==
S_OK,
"CreateComponentInfo failed, hr=%lx\n",
hr);
488 IWICComponentInfo_Release(
info);
501 GUID container_formats[10];
508 ok(
hr ==
S_OK,
"CreateComponentInfo failed, hr=%lx\n",
hr);
509 IWICComponentInfo_Release(info2);
512 &IID_IWICImagingFactory, (
void**)&
factory);
513 ok(
hr ==
S_OK,
"CoCreateInstance failed, hr=%lx\n",
hr);
516 hr = IWICImagingFactory_CreateComponentInfo(
factory, &CLSID_WICUnknownMetadataReader, &
info);
517 ok(
hr ==
S_OK,
"CreateComponentInfo failed, hr=%lx\n",
hr);
518 ok(
info == info2,
"info != info2\n");
524 hr = IWICComponentInfo_QueryInterface(
info, &IID_IWICMetadataReaderInfo, (
void**)&reader_info);
525 ok(
hr ==
S_OK,
"QueryInterface failed, hr=%lx\n",
hr);
527 hr = IWICMetadataReaderInfo_GetCLSID(reader_info,
NULL);
530 hr = IWICMetadataReaderInfo_GetCLSID(reader_info, &
clsid);
531 ok(
hr ==
S_OK,
"GetCLSID failed, hr=%lx\n",
hr);
532 ok(
IsEqualGUID(&CLSID_WICUnknownMetadataReader, &
clsid),
"GetCLSID returned wrong result\n");
534 hr = IWICMetadataReaderInfo_GetMetadataFormat(reader_info, &
clsid);
535 ok(
hr ==
S_OK,
"GetMetadataFormat failed, hr=%lx\n",
hr);
536 ok(
IsEqualGUID(&GUID_MetadataFormatUnknown, &
clsid),
"GetMetadataFormat returned wrong result\n");
538 hr = IWICMetadataReaderInfo_GetContainerFormats(reader_info, 0,
NULL,
NULL);
542 hr = IWICMetadataReaderInfo_GetContainerFormats(reader_info, 0,
NULL, &
count);
543 ok(
hr ==
S_OK,
"GetContainerFormats failed, hr=%lx\n",
hr);
546 hr = IWICMetadataReaderInfo_GetPatterns(reader_info, &GUID_ContainerFormatPng,
551 hr = IWICMetadataReaderInfo_GetPatterns(reader_info, &GUID_ContainerFormatPng,
554 "GetPatterns failed, hr=%lx\n",
hr);
555 ok(
count == 0xdeadbeef,
"unexpected count %d\n",
count);
556 ok(
size == 0xdeadbeef,
"unexpected size %d\n",
size);
558 IWICMetadataReaderInfo_Release(reader_info);
560 IWICComponentInfo_Release(
info);
562 hr = IWICImagingFactory_CreateComponentInfo(
factory, &CLSID_WICXMPStructMetadataReader, &
info);
564 ok(
hr ==
S_OK,
"CreateComponentInfo failed, hr=%lx\n",
hr);
568 IWICImagingFactory_Release(
factory);
572 hr = IWICComponentInfo_QueryInterface(
info, &IID_IWICMetadataReaderInfo, (
void**)&reader_info);
573 ok(
hr ==
S_OK,
"QueryInterface failed, hr=%lx\n",
hr);
575 hr = IWICMetadataReaderInfo_GetCLSID(reader_info,
NULL);
578 hr = IWICMetadataReaderInfo_GetCLSID(reader_info, &
clsid);
579 ok(
hr ==
S_OK,
"GetCLSID failed, hr=%lx\n",
hr);
580 ok(
IsEqualGUID(&CLSID_WICXMPStructMetadataReader, &
clsid),
"GetCLSID returned wrong result\n");
582 hr = IWICMetadataReaderInfo_GetMetadataFormat(reader_info, &
clsid);
583 ok(
hr ==
S_OK,
"GetMetadataFormat failed, hr=%lx\n",
hr);
584 ok(
IsEqualGUID(&GUID_MetadataFormatXMPStruct, &
clsid),
"GetMetadataFormat returned wrong result\n");
586 hr = IWICMetadataReaderInfo_GetContainerFormats(reader_info, 0,
NULL,
NULL);
590 hr = IWICMetadataReaderInfo_GetContainerFormats(reader_info, 0,
NULL, &
count);
591 ok(
hr ==
S_OK,
"GetContainerFormats failed, hr=%lx\n",
hr);
595 hr = IWICMetadataReaderInfo_GetContainerFormats(reader_info, 1, container_formats, &
count);
596 ok(
hr ==
S_OK,
"GetContainerFormats failed, hr=%lx\n",
hr);
600 hr = IWICMetadataReaderInfo_GetContainerFormats(reader_info, 10, container_formats, &
count);
601 ok(
hr ==
S_OK,
"GetContainerFormats failed, hr=%lx\n",
hr);
605 hr = IWICMetadataReaderInfo_GetPatterns(reader_info, &GUID_ContainerFormatPng,
608 "GetPatterns failed, hr=%lx\n",
hr);
609 ok(
count == 0xdeadbeef,
"unexpected count %d\n",
count);
610 ok(
size == 0xdeadbeef,
"unexpected size %d\n",
size);
613 hr = IWICMetadataReaderInfo_GetPatterns(reader_info, &GUID_MetadataFormatXMP,
615 ok(
hr ==
S_OK,
"GetPatterns failed, hr=%lx\n",
hr);
624 hr = IWICMetadataReaderInfo_GetPatterns(reader_info, &GUID_MetadataFormatXMP,
626 ok(
hr ==
S_OK,
"GetPatterns failed, hr=%lx\n",
hr);
631 hr = IWICMetadataReaderInfo_GetPatterns(reader_info, &GUID_MetadataFormatXMP,
633 ok(
hr ==
S_OK,
"GetPatterns failed, hr=%lx\n",
hr);
640 IWICMetadataReaderInfo_Release(reader_info);
642 IWICComponentInfo_Release(
info);
644 IWICImagingFactory_Release(
factory);
655 &IID_IWICImagingFactory2, (
void **)&factory2);
658 win_skip(
"IWICImagingFactory2 is not supported.\n");
662 hr = IWICImagingFactory2_QueryInterface(factory2, &IID_IWICComponentFactory, (
void **)&component_factory);
665 hr = IWICComponentFactory_QueryInterface(component_factory, &IID_IWICImagingFactory, (
void **)&
factory);
668 IWICImagingFactory_Release(
factory);
670 hr = IWICImagingFactory2_QueryInterface(factory2, &IID_IWICImagingFactory, (
void **)&
factory);
674 IWICComponentFactory_Release(component_factory);
675 IWICImagingFactory2_Release(factory2);
676 IWICImagingFactory_Release(
factory);
681 static const unsigned int types[] =
696 &IID_IWICImagingFactory, (
void **)&
factory);
701 hr = IWICImagingFactory_CreateComponentEnumerator(
factory,
types[
i], 0, &enumerator);
704 hr = IEnumUnknown_Next(enumerator, 1, &
item,
NULL);
706 IUnknown_Release(
item);
708 IEnumUnknown_Release(enumerator);
711 IWICImagingFactory_Release(
factory);
DDPIXELFORMAT pixelformats[]
#define HeapFree(x, y, z)
#define MultiByteToWideChar
HANDLE WINAPI DECLSPEC_HOTPATCH CreateThread(IN LPSECURITY_ATTRIBUTES lpThreadAttributes, IN DWORD dwStackSize, IN LPTHREAD_START_ROUTINE lpStartAddress, IN LPVOID lpParameter, IN DWORD dwCreationFlags, OUT LPDWORD lpThreadId)
int WINAPI lstrcmpW(LPCWSTR str1, LPCWSTR str2)
HRESULT WINAPI DECLSPEC_HOTPATCH CoCreateInstance(REFCLSID rclsid, LPUNKNOWN pUnkOuter, DWORD dwClsContext, REFIID iid, LPVOID *ppv)
HRESULT WINAPI DECLSPEC_HOTPATCH CoInitializeEx(LPVOID lpReserved, DWORD dwCoInit)
HRESULT WINAPI CoInitialize(LPVOID lpReserved)
void WINAPI DECLSPEC_HOTPATCH CoUninitialize(void)
GLuint GLuint GLsizei count
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
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 GLint GLint j
#define todo_wine_if(is_todo)
static void test_component_enumerator(void)
static void test_imagingfactory_interfaces(void)
static DWORD WINAPI cache_across_threads_test(void *arg)
static void test_decoder_info(void)
static void test_pixelformat_info(void)
static HRESULT get_component_info(const GUID *clsid, IWICComponentInfo **result)
static BOOL is_pixelformat(GUID *format)
static void test_reader_info(void)
@ COINIT_APARTMENTTHREADED
#define IsEqualGUID(rguid1, rguid2)
#define IsEqualCLSID(rclsid1, rclsid2)
static __inline const char * wine_dbgstr_guid(const GUID *id)
DWORD WINAPI WaitForSingleObject(IN HANDLE hHandle, IN DWORD dwMilliseconds)
WICPixelFormatNumericRepresentation
@ WICPixelFormatNumericRepresentationUnsignedInteger
@ WICPixelFormatConverter
#define WINCODEC_ERR_COMPONENTNOTFOUND
#define WINCODEC_ERR_INSUFFICIENTBUFFER