// ------------------------------------------------------------------------------
// <auto-generated>
//     This code was generated by a tool.
//
//     Changes to this file may cause incorrect behavior and will be lost if
//     the code is regenerated.
// </auto-generated>
// ------------------------------------------------------------------------------

namespace Win32.Graphics.Imaging;

public static unsafe partial class Apis
{
	/// <include file='../Imaging.xml' path='doc/member[@name="WICConvertBitmapSource"]/*' />
	[LibraryImport("WindowsCodecs.dll")]
	public static partial HResult WICConvertBitmapSource(Guid* dstFormat, IWICBitmapSource* pISrc, IWICBitmapSource** ppIDst);

	/// <include file='../Imaging.xml' path='doc/member[@name="WICCreateBitmapFromSection"]/*' />
	[LibraryImport("WindowsCodecs.dll")]
	public static partial HResult WICCreateBitmapFromSection(uint width, uint height, Guid* pixelFormat, Handle hSection, uint stride, uint offset, IWICBitmap** ppIBitmap);

	/// <include file='../Imaging.xml' path='doc/member[@name="WICCreateBitmapFromSectionEx"]/*' />
	[LibraryImport("WindowsCodecs.dll")]
	public static partial HResult WICCreateBitmapFromSectionEx(uint width, uint height, Guid* pixelFormat, Handle hSection, uint stride, uint offset, WICSectionAccessLevel desiredAccessLevel, IWICBitmap** ppIBitmap);

	/// <include file='../Imaging.xml' path='doc/member[@name="WICMapGuidToShortName"]/*' />
	[LibraryImport("WindowsCodecs.dll")]
	public static partial HResult WICMapGuidToShortName(Guid* guid, uint cchName, char* wzName, uint* pcchActual);

	/// <include file='../Imaging.xml' path='doc/member[@name="WICMapShortNameToGuid"]/*' />
	[LibraryImport("WindowsCodecs.dll")]
	public static partial HResult WICMapShortNameToGuid(char* wzName, Guid* pguid);

	/// <include file='../Imaging.xml' path='doc/member[@name="WICMapSchemaToName"]/*' />
	[LibraryImport("WindowsCodecs.dll")]
	public static partial HResult WICMapSchemaToName(Guid* guidMetadataFormat, char* pwzSchema, uint cchName, char* wzName, uint* pcchActual);

	/// <include file='../Imaging.xml' path='doc/member[@name="WICMatchMetadataContent"]/*' />
	[LibraryImport("WindowsCodecs.dll")]
	public static partial HResult WICMatchMetadataContent(Guid* guidContainerFormat, Guid* pguidVendor, Com.IStream* pIStream, Guid* pguidMetadataFormat);

	/// <include file='../Imaging.xml' path='doc/member[@name="WICSerializeMetadataContent"]/*' />
	[LibraryImport("WindowsCodecs.dll")]
	public static partial HResult WICSerializeMetadataContent(Guid* guidContainerFormat, IWICMetadataWriter* pIWriter, uint dwPersistOptions, Com.IStream* pIStream);

	/// <include file='../Imaging.xml' path='doc/member[@name="WICGetMetadataContentSize"]/*' />
	[LibraryImport("WindowsCodecs.dll")]
	public static partial HResult WICGetMetadataContentSize(Guid* guidContainerFormat, IWICMetadataWriter* pIWriter, ulong* pcbSize);
}
