2 * Copyright 2009 Vincent Povirk for CodeWeavers
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 #ifndef WINCODECS_PRIVATE_H
20 #define WINCODECS_PRIVATE_H
22 DEFINE_GUID(CLSID_WICIcnsEncoder
, 0x312fb6f1,0xb767,0x409d,0x8a,0x6d,0x0f,0xc1,0x54,0xd4,0xf0,0x5c);
24 extern HRESULT
FormatConverter_CreateInstance(IUnknown
*pUnkOuter
, REFIID riid
, void** ppv
);
25 extern HRESULT
ImagingFactory_CreateInstance(IUnknown
*pUnkOuter
, REFIID riid
, void** ppv
);
26 extern HRESULT
BmpDecoder_CreateInstance(IUnknown
*pUnkOuter
, REFIID riid
, void** ppv
);
27 extern HRESULT
PngDecoder_CreateInstance(IUnknown
*pUnkOuter
, REFIID iid
, void** ppv
);
28 extern HRESULT
PngEncoder_CreateInstance(IUnknown
*pUnkOuter
, REFIID iid
, void** ppv
);
29 extern HRESULT
BmpEncoder_CreateInstance(IUnknown
*pUnkOuter
, REFIID iid
, void** ppv
);
30 extern HRESULT
GifDecoder_CreateInstance(IUnknown
*pUnkOuter
, REFIID riid
, void** ppv
);
31 extern HRESULT
IcoDecoder_CreateInstance(IUnknown
*pUnkOuter
, REFIID iid
, void** ppv
);
32 extern HRESULT
JpegDecoder_CreateInstance(IUnknown
*pUnkOuter
, REFIID iid
, void** ppv
);
33 extern HRESULT
TiffDecoder_CreateInstance(IUnknown
*pUnkOuter
, REFIID iid
, void** ppv
);
34 extern HRESULT
IcnsEncoder_CreateInstance(IUnknown
*pUnkOuter
, REFIID iid
, void** ppv
);
36 extern HRESULT
FlipRotator_Create(IWICBitmapFlipRotator
**fliprotator
);
37 extern HRESULT
PaletteImpl_Create(IWICPalette
**palette
);
38 extern HRESULT
StreamImpl_Create(IWICStream
**stream
);
40 extern HRESULT
copy_pixels(UINT bpp
, const BYTE
*srcbuffer
,
41 UINT srcwidth
, UINT srcheight
, INT srcstride
,
42 const WICRect
*rc
, UINT dststride
, UINT dstbuffersize
, BYTE
*dstbuffer
);
44 extern HRESULT
CreatePropertyBag2(IPropertyBag2
**ppPropertyBag2
);
46 extern HRESULT
CreateComponentInfo(REFCLSID clsid
, IWICComponentInfo
**ppIInfo
);
47 extern HRESULT
CreateComponentEnumerator(DWORD componentTypes
, DWORD options
, IEnumUnknown
**ppIEnumUnknown
);
49 #endif /* WINCODECS_PRIVATE_H */