windowscodecs: Add wrapper functions for IWICImagingFactory methods.
[wine/multimedia.git] / dlls / windowscodecs / proxy.c
blob6494a374e2eb0e3b877dae71d1c2d8ed59ff24e5
1 /*
2 * Misleadingly named convenience functions for accessing WIC.
4 * Copyright 2012 Vincent Povirk for CodeWeavers
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
21 #include "config.h"
23 #include <stdarg.h>
25 #define COBJMACROS
26 #define NONAMELESSUNION
28 #include "windef.h"
29 #include "winbase.h"
30 #include "objbase.h"
31 #include "wincodec.h"
33 #include "wincodecs_private.h"
35 #include "wine/debug.h"
37 WINE_DEFAULT_DEBUG_CHANNEL(wincodecs);
39 HRESULT WINAPI IWICImagingFactory_CreateBitmapClipper_Proxy_W(IWICImagingFactory *pFactory,
40 IWICBitmapClipper **ppIBitmapClipper)
42 return IWICImagingFactory_CreateBitmapClipper(pFactory, ppIBitmapClipper);
45 HRESULT WINAPI IWICImagingFactory_CreateBitmapFlipRotator_Proxy_W(IWICImagingFactory *pFactory,
46 IWICBitmapFlipRotator **ppIBitmapFlipRotator)
48 return IWICImagingFactory_CreateBitmapFlipRotator(pFactory, ppIBitmapFlipRotator);
51 HRESULT WINAPI IWICImagingFactory_CreateBitmapFromHBITMAP_Proxy_W(IWICImagingFactory *pFactory,
52 HBITMAP hBitmap, HPALETTE hPalette, WICBitmapAlphaChannelOption options, IWICBitmap **ppIBitmap)
54 return IWICImagingFactory_CreateBitmapFromHBITMAP(pFactory, hBitmap, hPalette, options, ppIBitmap);
57 HRESULT WINAPI IWICImagingFactory_CreateBitmapFromHICON_Proxy_W(IWICImagingFactory *pFactory,
58 HICON hIcon, IWICBitmap **ppIBitmap)
60 return IWICImagingFactory_CreateBitmapFromHICON(pFactory, hIcon, ppIBitmap);
63 HRESULT WINAPI IWICImagingFactory_CreateBitmapFromMemory_Proxy_W(IWICImagingFactory *pFactory,
64 UINT uiWidth, UINT uiHeight, REFWICPixelFormatGUID pixelFormat, UINT cbStride,
65 UINT cbBufferSize, BYTE *pbBuffer, IWICBitmap **ppIBitmap)
67 return IWICImagingFactory_CreateBitmapFromMemory(pFactory, uiWidth, uiHeight,
68 pixelFormat, cbStride, cbBufferSize, pbBuffer, ppIBitmap);
71 HRESULT WINAPI IWICImagingFactory_CreateBitmapFromSource_Proxy_W(IWICImagingFactory *pFactory,
72 IWICBitmapSource *piBitmapSource, WICBitmapCreateCacheOption option, IWICBitmap **ppIBitmap)
74 return IWICImagingFactory_CreateBitmapFromSource(pFactory, piBitmapSource, option, ppIBitmap);
77 HRESULT WINAPI IWICImagingFactory_CreateBitmapScaler_Proxy_W(IWICImagingFactory *pFactory,
78 IWICBitmapScaler **ppIBitmapScaler)
80 return IWICImagingFactory_CreateBitmapScaler(pFactory, ppIBitmapScaler);
83 HRESULT WINAPI IWICImagingFactory_CreateBitmap_Proxy_W(IWICImagingFactory *pFactory,
84 UINT uiWidth, UINT uiHeight, REFWICPixelFormatGUID pixelFormat,
85 WICBitmapCreateCacheOption option, IWICBitmap **ppIBitmap)
87 return IWICImagingFactory_CreateBitmap(pFactory, uiWidth, uiHeight,
88 pixelFormat, option, ppIBitmap);
91 HRESULT WINAPI IWICImagingFactory_CreateComponentInfo_Proxy_W(IWICImagingFactory *pFactory,
92 REFCLSID clsidComponent, IWICComponentInfo **ppIInfo)
94 return IWICImagingFactory_CreateComponentInfo(pFactory, clsidComponent, ppIInfo);
97 HRESULT WINAPI IWICImagingFactory_CreateDecoderFromFileHandle_Proxy_W(IWICImagingFactory *pFactory,
98 ULONG_PTR hFile, const GUID *pguidVendor, WICDecodeOptions metadataOptions, IWICBitmapDecoder **ppIDecoder)
100 return IWICImagingFactory_CreateDecoderFromFileHandle(pFactory, hFile, pguidVendor, metadataOptions, ppIDecoder);
103 HRESULT WINAPI IWICImagingFactory_CreateDecoderFromFilename_Proxy_W(IWICImagingFactory *pFactory,
104 LPCWSTR wzFilename, const GUID *pguidVendor, DWORD dwDesiredAccess,
105 WICDecodeOptions metadataOptions, IWICBitmapDecoder **ppIDecoder)
107 return IWICImagingFactory_CreateDecoderFromFilename(pFactory, wzFilename,
108 pguidVendor, dwDesiredAccess, metadataOptions, ppIDecoder);
111 HRESULT WINAPI IWICImagingFactory_CreateDecoderFromStream_Proxy_W(IWICImagingFactory *pFactory,
112 IStream *pIStream, const GUID *pguidVendor,
113 WICDecodeOptions metadataOptions, IWICBitmapDecoder **ppIDecoder)
115 return IWICImagingFactory_CreateDecoderFromStream(pFactory, pIStream, pguidVendor, metadataOptions, ppIDecoder);
118 HRESULT WINAPI IWICImagingFactory_CreateEncoder_Proxy_W(IWICImagingFactory *pFactory,
119 REFGUID guidContainerFormat, const GUID *pguidVendor, IWICBitmapEncoder **ppIEncoder)
121 return IWICImagingFactory_CreateEncoder(pFactory, guidContainerFormat, pguidVendor, ppIEncoder);
124 HRESULT WINAPI IWICImagingFactory_CreateFastMetadataEncoderFromDecoder_Proxy_W(IWICImagingFactory *pFactory,
125 IWICBitmapDecoder *pIDecoder, IWICFastMetadataEncoder **ppIFastEncoder)
127 return IWICImagingFactory_CreateFastMetadataEncoderFromDecoder(pFactory, pIDecoder, ppIFastEncoder);
130 HRESULT WINAPI IWICImagingFactory_CreateFastMetadataEncoderFromFrameDecode_Proxy_W(IWICImagingFactory *pFactory,
131 IWICBitmapFrameDecode *pIFrameDecoder, IWICFastMetadataEncoder **ppIFastEncoder)
133 return IWICImagingFactory_CreateFastMetadataEncoderFromFrameDecode(pFactory, pIFrameDecoder, ppIFastEncoder);
136 HRESULT WINAPI IWICImagingFactory_CreateFormatConverter_Proxy_W(IWICImagingFactory *pFactory,
137 IWICFormatConverter **ppIFormatConverter)
139 return IWICImagingFactory_CreateFormatConverter(pFactory, ppIFormatConverter);
142 HRESULT WINAPI IWICImagingFactory_CreatePalette_Proxy_W(IWICImagingFactory *pFactory,
143 IWICPalette **ppIPalette)
145 return IWICImagingFactory_CreatePalette(pFactory, ppIPalette);
148 HRESULT WINAPI IWICImagingFactory_CreateQueryWriterFromReader_Proxy_W(IWICImagingFactory *pFactory,
149 IWICMetadataQueryReader *pIQueryReader, const GUID *pguidVendor,
150 IWICMetadataQueryWriter **ppIQueryWriter)
152 return IWICImagingFactory_CreateQueryWriterFromReader(pFactory, pIQueryReader, pguidVendor, ppIQueryWriter);
155 HRESULT WINAPI IWICImagingFactory_CreateQueryWriter_Proxy_W(IWICImagingFactory *pFactory,
156 REFGUID guidMetadataFormat, const GUID *pguidVendor, IWICMetadataQueryWriter **ppIQueryWriter)
158 return IWICImagingFactory_CreateQueryWriter(pFactory, guidMetadataFormat, pguidVendor, ppIQueryWriter);
161 HRESULT WINAPI IWICImagingFactory_CreateStream_Proxy_W(IWICImagingFactory *pFactory,
162 IWICStream **ppIWICStream)
164 return IWICImagingFactory_CreateStream(pFactory, ppIWICStream);
167 HRESULT WINAPI WICCreateImagingFactory_Proxy(UINT SDKVersion, IWICImagingFactory **ppIImagingFactory)
169 TRACE("%x, %p\n", SDKVersion, ppIImagingFactory);
171 return ImagingFactory_CreateInstance(NULL, &IID_IWICImagingFactory, (void**)ppIImagingFactory);