zigwin32/win32/graphics/imaging.zig

6173 lines
340 KiB
Zig

//! NOTE: this file is autogenerated, DO NOT MODIFY
//--------------------------------------------------------------------------------
// Section: Constants (301)
//--------------------------------------------------------------------------------
pub const WINCODEC_SDK_VERSION1 = @as(u32, 566);
pub const WINCODEC_SDK_VERSION2 = @as(u32, 567);
pub const CLSID_WICImagingFactory = Guid.initString("cacaf262-9370-4615-a13b-9f5539da4c0a");
pub const CLSID_WICImagingFactory1 = Guid.initString("cacaf262-9370-4615-a13b-9f5539da4c0a");
pub const CLSID_WICImagingFactory2 = Guid.initString("317d06e8-5f24-433d-bdf7-79ce68d8abc2");
pub const WINCODEC_SDK_VERSION = @as(u32, 567);
pub const GUID_VendorMicrosoft = Guid.initString("f0e749ca-edef-4589-a73a-ee0e626a2a2b");
pub const GUID_VendorMicrosoftBuiltIn = Guid.initString("257a30fd-06b6-462b-aea4-63f70b86e533");
pub const CLSID_WICPngDecoder = Guid.initString("389ea17b-5078-4cde-b6ef-25c15175c751");
pub const CLSID_WICPngDecoder1 = Guid.initString("389ea17b-5078-4cde-b6ef-25c15175c751");
pub const CLSID_WICPngDecoder2 = Guid.initString("e018945b-aa86-4008-9bd4-6777a1e40c11");
pub const CLSID_WICBmpDecoder = Guid.initString("6b462062-7cbf-400d-9fdb-813dd10f2778");
pub const CLSID_WICIcoDecoder = Guid.initString("c61bfcdf-2e0f-4aad-a8d7-e06bafebcdfe");
pub const CLSID_WICJpegDecoder = Guid.initString("9456a480-e88b-43ea-9e73-0b2d9b71b1ca");
pub const CLSID_WICGifDecoder = Guid.initString("381dda3c-9ce9-4834-a23e-1f98f8fc52be");
pub const CLSID_WICTiffDecoder = Guid.initString("b54e85d9-fe23-499f-8b88-6acea713752b");
pub const CLSID_WICWmpDecoder = Guid.initString("a26cec36-234c-4950-ae16-e34aace71d0d");
pub const CLSID_WICDdsDecoder = Guid.initString("9053699f-a341-429d-9e90-ee437cf80c73");
pub const CLSID_WICBmpEncoder = Guid.initString("69be8bb4-d66d-47c8-865a-ed1589433782");
pub const CLSID_WICPngEncoder = Guid.initString("27949969-876a-41d7-9447-568f6a35a4dc");
pub const CLSID_WICJpegEncoder = Guid.initString("1a34f5c1-4a5a-46dc-b644-1f4567e7a676");
pub const CLSID_WICGifEncoder = Guid.initString("114f5598-0b22-40a0-86a1-c83ea495adbd");
pub const CLSID_WICTiffEncoder = Guid.initString("0131be10-2001-4c5f-a9b0-cc88fab64ce8");
pub const CLSID_WICWmpEncoder = Guid.initString("ac4ce3cb-e1c1-44cd-8215-5a1665509ec2");
pub const CLSID_WICDdsEncoder = Guid.initString("a61dde94-66ce-4ac1-881b-71680588895e");
pub const CLSID_WICAdngDecoder = Guid.initString("981d9411-909e-42a7-8f5d-a747ff052edb");
pub const CLSID_WICJpegQualcommPhoneEncoder = Guid.initString("68ed5c62-f534-4979-b2b3-686a12b2b34c");
pub const CLSID_WICHeifDecoder = Guid.initString("e9a4a80a-44fe-4de4-8971-7150b10a5199");
pub const CLSID_WICHeifEncoder = Guid.initString("0dbecec1-9eb3-4860-9c6f-ddbe86634575");
pub const CLSID_WICWebpDecoder = Guid.initString("7693e886-51c9-4070-8419-9f70738ec8fa");
pub const CLSID_WICRAWDecoder = Guid.initString("41945702-8302-44a6-9445-ac98e8afa086");
pub const GUID_ContainerFormatBmp = Guid.initString("0af1d87e-fcfe-4188-bdeb-a7906471cbe3");
pub const GUID_ContainerFormatPng = Guid.initString("1b7cfaf4-713f-473c-bbcd-6137425faeaf");
pub const GUID_ContainerFormatIco = Guid.initString("a3a860c4-338f-4c17-919a-fba4b5628f21");
pub const GUID_ContainerFormatJpeg = Guid.initString("19e4a5aa-5662-4fc5-a0c0-1758028e1057");
pub const GUID_ContainerFormatTiff = Guid.initString("163bcc30-e2e9-4f0b-961d-a3e9fdb788a3");
pub const GUID_ContainerFormatGif = Guid.initString("1f8a5601-7d4d-4cbd-9c82-1bc8d4eeb9a5");
pub const GUID_ContainerFormatWmp = Guid.initString("57a37caa-367a-4540-916b-f183c5093a4b");
pub const GUID_ContainerFormatDds = Guid.initString("9967cb95-2e85-4ac8-8ca2-83d7ccd425c9");
pub const GUID_ContainerFormatAdng = Guid.initString("f3ff6d0d-38c0-41c4-b1fe-1f3824f17b84");
pub const GUID_ContainerFormatHeif = Guid.initString("e1e62521-6787-405b-a339-500715b5763f");
pub const GUID_ContainerFormatWebp = Guid.initString("e094b0e2-67f2-45b3-b0ea-115337ca7cf3");
pub const GUID_ContainerFormatRaw = Guid.initString("fe99ce60-f19c-433c-a3ae-00acefa9ca21");
pub const CLSID_WICImagingCategories = Guid.initString("fae3d380-fea4-4623-8c75-c6b61110b681");
pub const CATID_WICBitmapDecoders = Guid.initString("7ed96837-96f0-4812-b211-f13c24117ed3");
pub const CATID_WICBitmapEncoders = Guid.initString("ac757296-3522-4e11-9862-c17be5a1767e");
pub const CATID_WICPixelFormats = Guid.initString("2b46e70f-cda7-473e-89f6-dc9630a2390b");
pub const CATID_WICFormatConverters = Guid.initString("7835eae8-bf14-49d1-93ce-533a407b2248");
pub const CATID_WICMetadataReader = Guid.initString("05af94d8-7174-4cd2-be4a-4124b80ee4b8");
pub const CATID_WICMetadataWriter = Guid.initString("abe3b9a4-257d-4b97-bd1a-294af496222e");
pub const CLSID_WICDefaultFormatConverter = Guid.initString("1a3f11dc-b514-4b17-8c5f-2154513852f1");
pub const CLSID_WICFormatConverterHighColor = Guid.initString("ac75d454-9f37-48f8-b972-4e19bc856011");
pub const CLSID_WICFormatConverterNChannel = Guid.initString("c17cabb2-d4a3-47d7-a557-339b2efbd4f1");
pub const CLSID_WICFormatConverterWMPhoto = Guid.initString("9cb5172b-d600-46ba-ab77-77bb7e3a00d9");
pub const CLSID_WICPlanarFormatConverter = Guid.initString("184132b8-32f8-4784-9131-dd7224b23438");
pub const WIC_JPEG_MAX_COMPONENT_COUNT = @as(u32, 4);
pub const WIC_JPEG_MAX_TABLE_INDEX = @as(u32, 3);
pub const WIC_JPEG_SAMPLE_FACTORS_ONE = @as(u32, 17);
pub const WIC_JPEG_SAMPLE_FACTORS_THREE_420 = @as(u32, 1118498);
pub const WIC_JPEG_SAMPLE_FACTORS_THREE_422 = @as(u32, 1118497);
pub const WIC_JPEG_SAMPLE_FACTORS_THREE_440 = @as(u32, 1118482);
pub const WIC_JPEG_SAMPLE_FACTORS_THREE_444 = @as(u32, 1118481);
pub const WIC_JPEG_QUANTIZATION_BASELINE_ONE = @as(u32, 0);
pub const WIC_JPEG_QUANTIZATION_BASELINE_THREE = @as(u32, 65792);
pub const WIC_JPEG_HUFFMAN_BASELINE_ONE = @as(u32, 0);
pub const WIC_JPEG_HUFFMAN_BASELINE_THREE = @as(u32, 1118464);
pub const GUID_WICPixelFormatDontCare = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc900");
pub const GUID_WICPixelFormat1bppIndexed = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc901");
pub const GUID_WICPixelFormat2bppIndexed = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc902");
pub const GUID_WICPixelFormat4bppIndexed = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc903");
pub const GUID_WICPixelFormat8bppIndexed = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc904");
pub const GUID_WICPixelFormatBlackWhite = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc905");
pub const GUID_WICPixelFormat2bppGray = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc906");
pub const GUID_WICPixelFormat4bppGray = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc907");
pub const GUID_WICPixelFormat8bppGray = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc908");
pub const GUID_WICPixelFormat8bppAlpha = Guid.initString("e6cd0116-eeba-4161-aa85-27dd9fb3a895");
pub const GUID_WICPixelFormat16bppBGR555 = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc909");
pub const GUID_WICPixelFormat16bppBGR565 = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc90a");
pub const GUID_WICPixelFormat16bppBGRA5551 = Guid.initString("05ec7c2b-f1e6-4961-ad46-e1cc810a87d2");
pub const GUID_WICPixelFormat16bppGray = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc90b");
pub const GUID_WICPixelFormat24bppBGR = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc90c");
pub const GUID_WICPixelFormat24bppRGB = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc90d");
pub const GUID_WICPixelFormat32bppBGR = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc90e");
pub const GUID_WICPixelFormat32bppBGRA = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc90f");
pub const GUID_WICPixelFormat32bppPBGRA = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc910");
pub const GUID_WICPixelFormat32bppGrayFloat = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc911");
pub const GUID_WICPixelFormat32bppRGB = Guid.initString("d98c6b95-3efe-47d6-bb25-eb1748ab0cf1");
pub const GUID_WICPixelFormat32bppRGBA = Guid.initString("f5c7ad2d-6a8d-43dd-a7a8-a29935261ae9");
pub const GUID_WICPixelFormat32bppPRGBA = Guid.initString("3cc4a650-a527-4d37-a916-3142c7ebedba");
pub const GUID_WICPixelFormat48bppRGB = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc915");
pub const GUID_WICPixelFormat48bppBGR = Guid.initString("e605a384-b468-46ce-bb2e-36f180e64313");
pub const GUID_WICPixelFormat64bppRGB = Guid.initString("a1182111-186d-4d42-bc6a-9c8303a8dff9");
pub const GUID_WICPixelFormat64bppRGBA = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc916");
pub const GUID_WICPixelFormat64bppBGRA = Guid.initString("1562ff7c-d352-46f9-979e-42976b792246");
pub const GUID_WICPixelFormat64bppPRGBA = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc917");
pub const GUID_WICPixelFormat64bppPBGRA = Guid.initString("8c518e8e-a4ec-468b-ae70-c9a35a9c5530");
pub const GUID_WICPixelFormat16bppGrayFixedPoint = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc913");
pub const GUID_WICPixelFormat32bppBGR101010 = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc914");
pub const GUID_WICPixelFormat48bppRGBFixedPoint = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc912");
pub const GUID_WICPixelFormat48bppBGRFixedPoint = Guid.initString("49ca140e-cab6-493b-9ddf-60187c37532a");
pub const GUID_WICPixelFormat96bppRGBFixedPoint = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc918");
pub const GUID_WICPixelFormat96bppRGBFloat = Guid.initString("e3fed78f-e8db-4acf-84c1-e97f6136b327");
pub const GUID_WICPixelFormat128bppRGBAFloat = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc919");
pub const GUID_WICPixelFormat128bppPRGBAFloat = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc91a");
pub const GUID_WICPixelFormat128bppRGBFloat = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc91b");
pub const GUID_WICPixelFormat32bppCMYK = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc91c");
pub const GUID_WICPixelFormat64bppRGBAFixedPoint = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc91d");
pub const GUID_WICPixelFormat64bppBGRAFixedPoint = Guid.initString("356de33c-54d2-4a23-bb04-9b7bf9b1d42d");
pub const GUID_WICPixelFormat64bppRGBFixedPoint = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc940");
pub const GUID_WICPixelFormat128bppRGBAFixedPoint = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc91e");
pub const GUID_WICPixelFormat128bppRGBFixedPoint = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc941");
pub const GUID_WICPixelFormat64bppRGBAHalf = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc93a");
pub const GUID_WICPixelFormat64bppPRGBAHalf = Guid.initString("58ad26c2-c623-4d9d-b320-387e49f8c442");
pub const GUID_WICPixelFormat64bppRGBHalf = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc942");
pub const GUID_WICPixelFormat48bppRGBHalf = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc93b");
pub const GUID_WICPixelFormat32bppRGBE = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc93d");
pub const GUID_WICPixelFormat16bppGrayHalf = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc93e");
pub const GUID_WICPixelFormat32bppGrayFixedPoint = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc93f");
pub const GUID_WICPixelFormat32bppRGBA1010102 = Guid.initString("25238d72-fcf9-4522-b514-5578e5ad55e0");
pub const GUID_WICPixelFormat32bppRGBA1010102XR = Guid.initString("00de6b9a-c101-434b-b502-d0165ee1122c");
pub const GUID_WICPixelFormat32bppR10G10B10A2 = Guid.initString("604e1bb5-8a3c-4b65-b11c-bc0b8dd75b7f");
pub const GUID_WICPixelFormat32bppR10G10B10A2HDR10 = Guid.initString("9c215c5d-1acc-4f0e-a4bc-70fb3ae8fd28");
pub const GUID_WICPixelFormat64bppCMYK = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc91f");
pub const GUID_WICPixelFormat24bpp3Channels = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc920");
pub const GUID_WICPixelFormat32bpp4Channels = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc921");
pub const GUID_WICPixelFormat40bpp5Channels = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc922");
pub const GUID_WICPixelFormat48bpp6Channels = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc923");
pub const GUID_WICPixelFormat56bpp7Channels = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc924");
pub const GUID_WICPixelFormat64bpp8Channels = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc925");
pub const GUID_WICPixelFormat48bpp3Channels = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc926");
pub const GUID_WICPixelFormat64bpp4Channels = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc927");
pub const GUID_WICPixelFormat80bpp5Channels = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc928");
pub const GUID_WICPixelFormat96bpp6Channels = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc929");
pub const GUID_WICPixelFormat112bpp7Channels = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc92a");
pub const GUID_WICPixelFormat128bpp8Channels = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc92b");
pub const GUID_WICPixelFormat40bppCMYKAlpha = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc92c");
pub const GUID_WICPixelFormat80bppCMYKAlpha = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc92d");
pub const GUID_WICPixelFormat32bpp3ChannelsAlpha = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc92e");
pub const GUID_WICPixelFormat40bpp4ChannelsAlpha = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc92f");
pub const GUID_WICPixelFormat48bpp5ChannelsAlpha = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc930");
pub const GUID_WICPixelFormat56bpp6ChannelsAlpha = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc931");
pub const GUID_WICPixelFormat64bpp7ChannelsAlpha = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc932");
pub const GUID_WICPixelFormat72bpp8ChannelsAlpha = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc933");
pub const GUID_WICPixelFormat64bpp3ChannelsAlpha = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc934");
pub const GUID_WICPixelFormat80bpp4ChannelsAlpha = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc935");
pub const GUID_WICPixelFormat96bpp5ChannelsAlpha = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc936");
pub const GUID_WICPixelFormat112bpp6ChannelsAlpha = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc937");
pub const GUID_WICPixelFormat128bpp7ChannelsAlpha = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc938");
pub const GUID_WICPixelFormat144bpp8ChannelsAlpha = Guid.initString("6fddc324-4e03-4bfe-b185-3d77768dc939");
pub const GUID_WICPixelFormat8bppY = Guid.initString("91b4db54-2df9-42f0-b449-2909bb3df88e");
pub const GUID_WICPixelFormat8bppCb = Guid.initString("1339f224-6bfe-4c3e-9302-e4f3a6d0ca2a");
pub const GUID_WICPixelFormat8bppCr = Guid.initString("b8145053-2116-49f0-8835-ed844b205c51");
pub const GUID_WICPixelFormat16bppCbCr = Guid.initString("ff95ba6e-11e0-4263-bb45-01721f3460a4");
pub const GUID_WICPixelFormat16bppYQuantizedDctCoefficients = Guid.initString("a355f433-48e8-4a42-84d8-e2aa26ca80a4");
pub const GUID_WICPixelFormat16bppCbQuantizedDctCoefficients = Guid.initString("d2c4ff61-56a5-49c2-8b5c-4c1925964837");
pub const GUID_WICPixelFormat16bppCrQuantizedDctCoefficients = Guid.initString("2fe354f0-1680-42d8-9231-e73c0565bfc1");
pub const FACILITY_WINCODEC_ERR = @as(u32, 2200);
pub const WINCODEC_ERR_BASE = @as(u32, 8192);
pub const WINCODEC_ERR_GENERIC_ERROR = @as(i32, -2147467259);
pub const WINCODEC_ERR_INVALIDPARAMETER = @as(i32, -2147024809);
pub const WINCODEC_ERR_OUTOFMEMORY = @as(i32, -2147024882);
pub const WINCODEC_ERR_NOTIMPLEMENTED = @as(i32, -2147467263);
pub const WINCODEC_ERR_ABORTED = @as(i32, -2147467260);
pub const WINCODEC_ERR_ACCESSDENIED = @as(i32, -2147024891);
pub const WICRawChangeNotification_ExposureCompensation = @as(u32, 1);
pub const WICRawChangeNotification_NamedWhitePoint = @as(u32, 2);
pub const WICRawChangeNotification_KelvinWhitePoint = @as(u32, 4);
pub const WICRawChangeNotification_RGBWhitePoint = @as(u32, 8);
pub const WICRawChangeNotification_Contrast = @as(u32, 16);
pub const WICRawChangeNotification_Gamma = @as(u32, 32);
pub const WICRawChangeNotification_Sharpness = @as(u32, 64);
pub const WICRawChangeNotification_Saturation = @as(u32, 128);
pub const WICRawChangeNotification_Tint = @as(u32, 256);
pub const WICRawChangeNotification_NoiseReduction = @as(u32, 512);
pub const WICRawChangeNotification_DestinationColorContext = @as(u32, 1024);
pub const WICRawChangeNotification_ToneCurve = @as(u32, 2048);
pub const WICRawChangeNotification_Rotation = @as(u32, 4096);
pub const WICRawChangeNotification_RenderMode = @as(u32, 8192);
pub const GUID_MetadataFormatUnknown = Guid.initString("a45e592f-9078-4a7c-adb5-4edc4fd61b1f");
pub const GUID_MetadataFormatIfd = Guid.initString("537396c6-2d8a-4bb6-9bf8-2f0a8e2a3adf");
pub const GUID_MetadataFormatSubIfd = Guid.initString("58a2e128-2db9-4e57-bb14-5177891ed331");
pub const GUID_MetadataFormatExif = Guid.initString("1c3c4f9d-b84a-467d-9493-36cfbd59ea57");
pub const GUID_MetadataFormatGps = Guid.initString("7134ab8a-9351-44ad-af62-448db6b502ec");
pub const GUID_MetadataFormatInterop = Guid.initString("ed686f8e-681f-4c8b-bd41-a8addbf6b3fc");
pub const GUID_MetadataFormatApp0 = Guid.initString("79007028-268d-45d6-a3c2-354e6a504bc9");
pub const GUID_MetadataFormatApp1 = Guid.initString("8fd3dfc3-f951-492b-817f-69c2e6d9a5b0");
pub const GUID_MetadataFormatApp13 = Guid.initString("326556a2-f502-4354-9cc0-8e3f48eaf6b5");
pub const GUID_MetadataFormatIPTC = Guid.initString("4fab0914-e129-4087-a1d1-bc812d45a7b5");
pub const GUID_MetadataFormatIRB = Guid.initString("16100d66-8570-4bb9-b92d-fda4b23ece67");
pub const GUID_MetadataFormat8BIMIPTC = Guid.initString("0010568c-0852-4e6a-b191-5c33ac5b0430");
pub const GUID_MetadataFormat8BIMResolutionInfo = Guid.initString("739f305d-81db-43cb-ac5e-55013ef9f003");
pub const GUID_MetadataFormat8BIMIPTCDigest = Guid.initString("1ca32285-9ccd-4786-8bd8-79539db6a006");
pub const GUID_MetadataFormatXMP = Guid.initString("bb5acc38-f216-4cec-a6c5-5f6e739763a9");
pub const GUID_MetadataFormatThumbnail = Guid.initString("243dcee9-8703-40ee-8ef0-22a600b8058c");
pub const GUID_MetadataFormatChunktEXt = Guid.initString("568d8936-c0a9-4923-905d-df2b38238fbc");
pub const GUID_MetadataFormatXMPStruct = Guid.initString("22383cf1-ed17-4e2e-af17-d85b8f6b30d0");
pub const GUID_MetadataFormatXMPBag = Guid.initString("833cca5f-dcb7-4516-806f-6596ab26dce4");
pub const GUID_MetadataFormatXMPSeq = Guid.initString("63e8df02-eb6c-456c-a224-b25e794fd648");
pub const GUID_MetadataFormatXMPAlt = Guid.initString("7b08a675-91aa-481b-a798-4da94908613b");
pub const GUID_MetadataFormatLSD = Guid.initString("e256031e-6299-4929-b98d-5ac884afba92");
pub const GUID_MetadataFormatIMD = Guid.initString("bd2bb086-4d52-48dd-9677-db483e85ae8f");
pub const GUID_MetadataFormatGCE = Guid.initString("2a25cad8-deeb-4c69-a788-0ec2266dcafd");
pub const GUID_MetadataFormatAPE = Guid.initString("2e043dc2-c967-4e05-875e-618bf67e85c3");
pub const GUID_MetadataFormatJpegChrominance = Guid.initString("f73d0dcf-cec6-4f85-9b0e-1c3956b1bef7");
pub const GUID_MetadataFormatJpegLuminance = Guid.initString("86908007-edfc-4860-8d4b-4ee6e83e6058");
pub const GUID_MetadataFormatJpegComment = Guid.initString("220e5f33-afd3-474e-9d31-7d4fe730f557");
pub const GUID_MetadataFormatGifComment = Guid.initString("c4b6e0e0-cfb4-4ad3-ab33-9aad2355a34a");
pub const GUID_MetadataFormatChunkgAMA = Guid.initString("f00935a5-1d5d-4cd1-81b2-9324d7eca781");
pub const GUID_MetadataFormatChunkbKGD = Guid.initString("e14d3571-6b47-4dea-b60a-87ce0a78dfb7");
pub const GUID_MetadataFormatChunkiTXt = Guid.initString("c2bec729-0b68-4b77-aa0e-6295a6ac1814");
pub const GUID_MetadataFormatChunkcHRM = Guid.initString("9db3655b-2842-44b3-8067-12e9b375556a");
pub const GUID_MetadataFormatChunkhIST = Guid.initString("c59a82da-db74-48a4-bd6a-b69c4931ef95");
pub const GUID_MetadataFormatChunkiCCP = Guid.initString("eb4349ab-b685-450f-91b5-e802e892536c");
pub const GUID_MetadataFormatChunksRGB = Guid.initString("c115fd36-cc6f-4e3f-8363-524b87c6b0d9");
pub const GUID_MetadataFormatChunktIME = Guid.initString("6b00ae2d-e24b-460a-98b6-878bd03072fd");
pub const GUID_MetadataFormatDds = Guid.initString("4a064603-8c33-4e60-9c29-136231702d08");
pub const GUID_MetadataFormatHeif = Guid.initString("817ef3e1-1288-45f4-a852-260d9e7cce83");
pub const GUID_MetadataFormatHeifHDR = Guid.initString("568b8d8a-1e65-438c-8968-d60e1012beb9");
pub const GUID_MetadataFormatWebpANIM = Guid.initString("6dc4fda6-78e6-4102-ae35-bcfa1edcc78b");
pub const GUID_MetadataFormatWebpANMF = Guid.initString("43c105ee-b93b-4abb-b003-a08c0d870471");
pub const CLSID_WICUnknownMetadataReader = Guid.initString("699745c2-5066-4b82-a8e3-d40478dbec8c");
pub const CLSID_WICUnknownMetadataWriter = Guid.initString("a09cca86-27ba-4f39-9053-121fa4dc08fc");
pub const CLSID_WICApp0MetadataWriter = Guid.initString("f3c633a2-46c8-498e-8fbb-cc6f721bbcde");
pub const CLSID_WICApp0MetadataReader = Guid.initString("43324b33-a78f-480f-9111-9638aaccc832");
pub const CLSID_WICApp1MetadataWriter = Guid.initString("ee366069-1832-420f-b381-0479ad066f19");
pub const CLSID_WICApp1MetadataReader = Guid.initString("dde33513-774e-4bcd-ae79-02f4adfe62fc");
pub const CLSID_WICApp13MetadataWriter = Guid.initString("7b19a919-a9d6-49e5-bd45-02c34e4e4cd5");
pub const CLSID_WICApp13MetadataReader = Guid.initString("aa7e3c50-864c-4604-bc04-8b0b76e637f6");
pub const CLSID_WICIfdMetadataReader = Guid.initString("8f914656-9d0a-4eb2-9019-0bf96d8a9ee6");
pub const CLSID_WICIfdMetadataWriter = Guid.initString("b1ebfc28-c9bd-47a2-8d33-b948769777a7");
pub const CLSID_WICSubIfdMetadataReader = Guid.initString("50d42f09-ecd1-4b41-b65d-da1fdaa75663");
pub const CLSID_WICSubIfdMetadataWriter = Guid.initString("8ade5386-8e9b-4f4c-acf2-f0008706b238");
pub const CLSID_WICExifMetadataReader = Guid.initString("d9403860-297f-4a49-bf9b-77898150a442");
pub const CLSID_WICExifMetadataWriter = Guid.initString("c9a14cda-c339-460b-9078-d4debcfabe91");
pub const CLSID_WICGpsMetadataReader = Guid.initString("3697790b-223b-484e-9925-c4869218f17a");
pub const CLSID_WICGpsMetadataWriter = Guid.initString("cb8c13e4-62b5-4c96-a48b-6ba6ace39c76");
pub const CLSID_WICInteropMetadataReader = Guid.initString("b5c8b898-0074-459f-b700-860d4651ea14");
pub const CLSID_WICInteropMetadataWriter = Guid.initString("122ec645-cd7e-44d8-b186-2c8c20c3b50f");
pub const CLSID_WICThumbnailMetadataReader = Guid.initString("fb012959-f4f6-44d7-9d09-daa087a9db57");
pub const CLSID_WICThumbnailMetadataWriter = Guid.initString("d049b20c-5dd0-44fe-b0b3-8f92c8e6d080");
pub const CLSID_WICIPTCMetadataReader = Guid.initString("03012959-f4f6-44d7-9d09-daa087a9db57");
pub const CLSID_WICIPTCMetadataWriter = Guid.initString("1249b20c-5dd0-44fe-b0b3-8f92c8e6d080");
pub const CLSID_WICIRBMetadataReader = Guid.initString("d4dcd3d7-b4c2-47d9-a6bf-b89ba396a4a3");
pub const CLSID_WICIRBMetadataWriter = Guid.initString("5c5c1935-0235-4434-80bc-251bc1ec39c6");
pub const CLSID_WIC8BIMIPTCMetadataReader = Guid.initString("0010668c-0801-4da6-a4a4-826522b6d28f");
pub const CLSID_WIC8BIMIPTCMetadataWriter = Guid.initString("00108226-ee41-44a2-9e9c-4be4d5b1d2cd");
pub const CLSID_WIC8BIMResolutionInfoMetadataReader = Guid.initString("5805137a-e348-4f7c-b3cc-6db9965a0599");
pub const CLSID_WIC8BIMResolutionInfoMetadataWriter = Guid.initString("4ff2fe0e-e74a-4b71-98c4-ab7dc16707ba");
pub const CLSID_WIC8BIMIPTCDigestMetadataReader = Guid.initString("02805f1e-d5aa-415b-82c5-61c033a988a6");
pub const CLSID_WIC8BIMIPTCDigestMetadataWriter = Guid.initString("2db5e62b-0d67-495f-8f9d-c2f0188647ac");
pub const CLSID_WICPngTextMetadataReader = Guid.initString("4b59afcc-b8c3-408a-b670-89e5fab6fda7");
pub const CLSID_WICPngTextMetadataWriter = Guid.initString("b5ebafb9-253e-4a72-a744-0762d2685683");
pub const CLSID_WICXMPMetadataReader = Guid.initString("72b624df-ae11-4948-a65c-351eb0829419");
pub const CLSID_WICXMPMetadataWriter = Guid.initString("1765e14e-1bd4-462e-b6b1-590bf1262ac6");
pub const CLSID_WICXMPStructMetadataReader = Guid.initString("01b90d9a-8209-47f7-9c52-e1244bf50ced");
pub const CLSID_WICXMPStructMetadataWriter = Guid.initString("22c21f93-7ddb-411c-9b17-c5b7bd064abc");
pub const CLSID_WICXMPBagMetadataReader = Guid.initString("e7e79a30-4f2c-4fab-8d00-394f2d6bbebe");
pub const CLSID_WICXMPBagMetadataWriter = Guid.initString("ed822c8c-d6be-4301-a631-0e1416bad28f");
pub const CLSID_WICXMPSeqMetadataReader = Guid.initString("7f12e753-fc71-43d7-a51d-92f35977abb5");
pub const CLSID_WICXMPSeqMetadataWriter = Guid.initString("6d68d1de-d432-4b0f-923a-091183a9bda7");
pub const CLSID_WICXMPAltMetadataReader = Guid.initString("aa94dcc2-b8b0-4898-b835-000aabd74393");
pub const CLSID_WICXMPAltMetadataWriter = Guid.initString("076c2a6c-f78f-4c46-a723-3583e70876ea");
pub const CLSID_WICLSDMetadataReader = Guid.initString("41070793-59e4-479a-a1f7-954adc2ef5fc");
pub const CLSID_WICLSDMetadataWriter = Guid.initString("73c037e7-e5d9-4954-876a-6da81d6e5768");
pub const CLSID_WICGCEMetadataReader = Guid.initString("b92e345d-f52d-41f3-b562-081bc772e3b9");
pub const CLSID_WICGCEMetadataWriter = Guid.initString("af95dc76-16b2-47f4-b3ea-3c31796693e7");
pub const CLSID_WICIMDMetadataReader = Guid.initString("7447a267-0015-42c8-a8f1-fb3b94c68361");
pub const CLSID_WICIMDMetadataWriter = Guid.initString("8c89071f-452e-4e95-9682-9d1024627172");
pub const CLSID_WICAPEMetadataReader = Guid.initString("1767b93a-b021-44ea-920f-863c11f4f768");
pub const CLSID_WICAPEMetadataWriter = Guid.initString("bd6edfca-2890-482f-b233-8d7339a1cf8d");
pub const CLSID_WICJpegChrominanceMetadataReader = Guid.initString("50b1904b-f28f-4574-93f4-0bade82c69e9");
pub const CLSID_WICJpegChrominanceMetadataWriter = Guid.initString("3ff566f0-6e6b-49d4-96e6-b78886692c62");
pub const CLSID_WICJpegLuminanceMetadataReader = Guid.initString("356f2f88-05a6-4728-b9a4-1bfbce04d838");
pub const CLSID_WICJpegLuminanceMetadataWriter = Guid.initString("1d583abc-8a0e-4657-9982-a380ca58fb4b");
pub const CLSID_WICJpegCommentMetadataReader = Guid.initString("9f66347c-60c4-4c4d-ab58-d2358685f607");
pub const CLSID_WICJpegCommentMetadataWriter = Guid.initString("e573236f-55b1-4eda-81ea-9f65db0290d3");
pub const CLSID_WICGifCommentMetadataReader = Guid.initString("32557d3b-69dc-4f95-836e-f5972b2f6159");
pub const CLSID_WICGifCommentMetadataWriter = Guid.initString("a02797fc-c4ae-418c-af95-e637c7ead2a1");
pub const CLSID_WICPngGamaMetadataReader = Guid.initString("3692ca39-e082-4350-9e1f-3704cb083cd5");
pub const CLSID_WICPngGamaMetadataWriter = Guid.initString("ff036d13-5d4b-46dd-b10f-106693d9fe4f");
pub const CLSID_WICPngBkgdMetadataReader = Guid.initString("0ce7a4a6-03e8-4a60-9d15-282ef32ee7da");
pub const CLSID_WICPngBkgdMetadataWriter = Guid.initString("68e3f2fd-31ae-4441-bb6a-fd7047525f90");
pub const CLSID_WICPngItxtMetadataReader = Guid.initString("aabfb2fa-3e1e-4a8f-8977-5556fb94ea23");
pub const CLSID_WICPngItxtMetadataWriter = Guid.initString("31879719-e751-4df8-981d-68dff67704ed");
pub const CLSID_WICPngChrmMetadataReader = Guid.initString("f90b5f36-367b-402a-9dd1-bc0fd59d8f62");
pub const CLSID_WICPngChrmMetadataWriter = Guid.initString("e23ce3eb-5608-4e83-bcef-27b1987e51d7");
pub const CLSID_WICPngHistMetadataReader = Guid.initString("877a0bb7-a313-4491-87b5-2e6d0594f520");
pub const CLSID_WICPngHistMetadataWriter = Guid.initString("8a03e749-672e-446e-bf1f-2c11d233b6ff");
pub const CLSID_WICPngIccpMetadataReader = Guid.initString("f5d3e63b-cb0f-4628-a478-6d8244be36b1");
pub const CLSID_WICPngIccpMetadataWriter = Guid.initString("16671e5f-0ce6-4cc4-9768-e89fe5018ade");
pub const CLSID_WICPngSrgbMetadataReader = Guid.initString("fb40360c-547e-4956-a3b9-d4418859ba66");
pub const CLSID_WICPngSrgbMetadataWriter = Guid.initString("a6ee35c6-87ec-47df-9f22-1d5aad840c82");
pub const CLSID_WICPngTimeMetadataReader = Guid.initString("d94edf02-efe5-4f0d-85c8-f5a68b3000b1");
pub const CLSID_WICPngTimeMetadataWriter = Guid.initString("1ab78400-b5a3-4d91-8ace-33fcd1499be6");
pub const CLSID_WICDdsMetadataReader = Guid.initString("276c88ca-7533-4a86-b676-66b36080d484");
pub const CLSID_WICDdsMetadataWriter = Guid.initString("fd688bbd-31ed-4db7-a723-934927d38367");
pub const CLSID_WICHeifMetadataReader = Guid.initString("acddfc3f-85ec-41bc-bdef-1bc262e4db05");
pub const CLSID_WICHeifMetadataWriter = Guid.initString("3ae45e79-40bc-4401-ace5-dd3cb16e6afe");
pub const CLSID_WICHeifHDRMetadataReader = Guid.initString("2438de3d-94d9-4be8-84a8-4de95a575e75");
pub const CLSID_WICWebpAnimMetadataReader = Guid.initString("076f9911-a348-465c-a807-a252f3f2d3de");
pub const CLSID_WICWebpAnmfMetadataReader = Guid.initString("85a10b03-c9f6-439f-be5e-c0fbef67807c");
//--------------------------------------------------------------------------------
// Section: Types (123)
//--------------------------------------------------------------------------------
pub const WICRect = extern struct {
X: i32,
Y: i32,
Width: i32,
Height: i32,
};
pub const WICColorContextType = enum(i32) {
Uninitialized = 0,
Profile = 1,
ExifColorSpace = 2,
};
pub const WICColorContextUninitialized = WICColorContextType.Uninitialized;
pub const WICColorContextProfile = WICColorContextType.Profile;
pub const WICColorContextExifColorSpace = WICColorContextType.ExifColorSpace;
pub const WICBitmapCreateCacheOption = enum(i32) {
itmapNoCache = 0,
itmapCacheOnDemand = 1,
itmapCacheOnLoad = 2,
ITMAPCREATECACHEOPTION_FORCE_DWORD = 2147483647,
};
pub const WICBitmapNoCache = WICBitmapCreateCacheOption.itmapNoCache;
pub const WICBitmapCacheOnDemand = WICBitmapCreateCacheOption.itmapCacheOnDemand;
pub const WICBitmapCacheOnLoad = WICBitmapCreateCacheOption.itmapCacheOnLoad;
pub const WICBITMAPCREATECACHEOPTION_FORCE_DWORD = WICBitmapCreateCacheOption.ITMAPCREATECACHEOPTION_FORCE_DWORD;
pub const WICDecodeOptions = enum(i32) {
DecodeMetadataCacheOnDemand = 0,
DecodeMetadataCacheOnLoad = 1,
METADATACACHEOPTION_FORCE_DWORD = 2147483647,
};
pub const WICDecodeMetadataCacheOnDemand = WICDecodeOptions.DecodeMetadataCacheOnDemand;
pub const WICDecodeMetadataCacheOnLoad = WICDecodeOptions.DecodeMetadataCacheOnLoad;
pub const WICMETADATACACHEOPTION_FORCE_DWORD = WICDecodeOptions.METADATACACHEOPTION_FORCE_DWORD;
pub const WICBitmapEncoderCacheOption = enum(i32) {
itmapEncoderCacheInMemory = 0,
itmapEncoderCacheTempFile = 1,
itmapEncoderNoCache = 2,
ITMAPENCODERCACHEOPTION_FORCE_DWORD = 2147483647,
};
pub const WICBitmapEncoderCacheInMemory = WICBitmapEncoderCacheOption.itmapEncoderCacheInMemory;
pub const WICBitmapEncoderCacheTempFile = WICBitmapEncoderCacheOption.itmapEncoderCacheTempFile;
pub const WICBitmapEncoderNoCache = WICBitmapEncoderCacheOption.itmapEncoderNoCache;
pub const WICBITMAPENCODERCACHEOPTION_FORCE_DWORD = WICBitmapEncoderCacheOption.ITMAPENCODERCACHEOPTION_FORCE_DWORD;
pub const WICComponentType = enum(i32) {
Decoder = 1,
Encoder = 2,
PixelFormatConverter = 4,
MetadataReader = 8,
MetadataWriter = 16,
PixelFormat = 32,
AllComponents = 63,
COMPONENTTYPE_FORCE_DWORD = 2147483647,
};
pub const WICDecoder = WICComponentType.Decoder;
pub const WICEncoder = WICComponentType.Encoder;
pub const WICPixelFormatConverter = WICComponentType.PixelFormatConverter;
pub const WICMetadataReader = WICComponentType.MetadataReader;
pub const WICMetadataWriter = WICComponentType.MetadataWriter;
pub const WICPixelFormat = WICComponentType.PixelFormat;
pub const WICAllComponents = WICComponentType.AllComponents;
pub const WICCOMPONENTTYPE_FORCE_DWORD = WICComponentType.COMPONENTTYPE_FORCE_DWORD;
pub const WICComponentEnumerateOptions = enum(i32) {
omponentEnumerateDefault = 0,
omponentEnumerateRefresh = 1,
omponentEnumerateDisabled = -2147483648,
omponentEnumerateUnsigned = 1073741824,
omponentEnumerateBuiltInOnly = 536870912,
OMPONENTENUMERATEOPTIONS_FORCE_DWORD = 2147483647,
};
pub const WICComponentEnumerateDefault = WICComponentEnumerateOptions.omponentEnumerateDefault;
pub const WICComponentEnumerateRefresh = WICComponentEnumerateOptions.omponentEnumerateRefresh;
pub const WICComponentEnumerateDisabled = WICComponentEnumerateOptions.omponentEnumerateDisabled;
pub const WICComponentEnumerateUnsigned = WICComponentEnumerateOptions.omponentEnumerateUnsigned;
pub const WICComponentEnumerateBuiltInOnly = WICComponentEnumerateOptions.omponentEnumerateBuiltInOnly;
pub const WICCOMPONENTENUMERATEOPTIONS_FORCE_DWORD = WICComponentEnumerateOptions.OMPONENTENUMERATEOPTIONS_FORCE_DWORD;
pub const WICBitmapPattern = extern struct {
Position: ULARGE_INTEGER,
Length: u32,
Pattern: ?*u8,
Mask: ?*u8,
EndOfStream: BOOL,
};
pub const WICBitmapInterpolationMode = enum(i32) {
itmapInterpolationModeNearestNeighbor = 0,
itmapInterpolationModeLinear = 1,
itmapInterpolationModeCubic = 2,
itmapInterpolationModeFant = 3,
itmapInterpolationModeHighQualityCubic = 4,
ITMAPINTERPOLATIONMODE_FORCE_DWORD = 2147483647,
};
pub const WICBitmapInterpolationModeNearestNeighbor = WICBitmapInterpolationMode.itmapInterpolationModeNearestNeighbor;
pub const WICBitmapInterpolationModeLinear = WICBitmapInterpolationMode.itmapInterpolationModeLinear;
pub const WICBitmapInterpolationModeCubic = WICBitmapInterpolationMode.itmapInterpolationModeCubic;
pub const WICBitmapInterpolationModeFant = WICBitmapInterpolationMode.itmapInterpolationModeFant;
pub const WICBitmapInterpolationModeHighQualityCubic = WICBitmapInterpolationMode.itmapInterpolationModeHighQualityCubic;
pub const WICBITMAPINTERPOLATIONMODE_FORCE_DWORD = WICBitmapInterpolationMode.ITMAPINTERPOLATIONMODE_FORCE_DWORD;
pub const WICBitmapPaletteType = enum(i32) {
itmapPaletteTypeCustom = 0,
itmapPaletteTypeMedianCut = 1,
itmapPaletteTypeFixedBW = 2,
itmapPaletteTypeFixedHalftone8 = 3,
itmapPaletteTypeFixedHalftone27 = 4,
itmapPaletteTypeFixedHalftone64 = 5,
itmapPaletteTypeFixedHalftone125 = 6,
itmapPaletteTypeFixedHalftone216 = 7,
// itmapPaletteTypeFixedWebPalette = 7, this enum value conflicts with itmapPaletteTypeFixedHalftone216
itmapPaletteTypeFixedHalftone252 = 8,
itmapPaletteTypeFixedHalftone256 = 9,
itmapPaletteTypeFixedGray4 = 10,
itmapPaletteTypeFixedGray16 = 11,
itmapPaletteTypeFixedGray256 = 12,
ITMAPPALETTETYPE_FORCE_DWORD = 2147483647,
};
pub const WICBitmapPaletteTypeCustom = WICBitmapPaletteType.itmapPaletteTypeCustom;
pub const WICBitmapPaletteTypeMedianCut = WICBitmapPaletteType.itmapPaletteTypeMedianCut;
pub const WICBitmapPaletteTypeFixedBW = WICBitmapPaletteType.itmapPaletteTypeFixedBW;
pub const WICBitmapPaletteTypeFixedHalftone8 = WICBitmapPaletteType.itmapPaletteTypeFixedHalftone8;
pub const WICBitmapPaletteTypeFixedHalftone27 = WICBitmapPaletteType.itmapPaletteTypeFixedHalftone27;
pub const WICBitmapPaletteTypeFixedHalftone64 = WICBitmapPaletteType.itmapPaletteTypeFixedHalftone64;
pub const WICBitmapPaletteTypeFixedHalftone125 = WICBitmapPaletteType.itmapPaletteTypeFixedHalftone125;
pub const WICBitmapPaletteTypeFixedHalftone216 = WICBitmapPaletteType.itmapPaletteTypeFixedHalftone216;
pub const WICBitmapPaletteTypeFixedWebPalette = WICBitmapPaletteType.itmapPaletteTypeFixedHalftone216;
pub const WICBitmapPaletteTypeFixedHalftone252 = WICBitmapPaletteType.itmapPaletteTypeFixedHalftone252;
pub const WICBitmapPaletteTypeFixedHalftone256 = WICBitmapPaletteType.itmapPaletteTypeFixedHalftone256;
pub const WICBitmapPaletteTypeFixedGray4 = WICBitmapPaletteType.itmapPaletteTypeFixedGray4;
pub const WICBitmapPaletteTypeFixedGray16 = WICBitmapPaletteType.itmapPaletteTypeFixedGray16;
pub const WICBitmapPaletteTypeFixedGray256 = WICBitmapPaletteType.itmapPaletteTypeFixedGray256;
pub const WICBITMAPPALETTETYPE_FORCE_DWORD = WICBitmapPaletteType.ITMAPPALETTETYPE_FORCE_DWORD;
pub const WICBitmapDitherType = enum(i32) {
itmapDitherTypeNone = 0,
// itmapDitherTypeSolid = 0, this enum value conflicts with itmapDitherTypeNone
itmapDitherTypeOrdered4x4 = 1,
itmapDitherTypeOrdered8x8 = 2,
itmapDitherTypeOrdered16x16 = 3,
itmapDitherTypeSpiral4x4 = 4,
itmapDitherTypeSpiral8x8 = 5,
itmapDitherTypeDualSpiral4x4 = 6,
itmapDitherTypeDualSpiral8x8 = 7,
itmapDitherTypeErrorDiffusion = 8,
ITMAPDITHERTYPE_FORCE_DWORD = 2147483647,
};
pub const WICBitmapDitherTypeNone = WICBitmapDitherType.itmapDitherTypeNone;
pub const WICBitmapDitherTypeSolid = WICBitmapDitherType.itmapDitherTypeNone;
pub const WICBitmapDitherTypeOrdered4x4 = WICBitmapDitherType.itmapDitherTypeOrdered4x4;
pub const WICBitmapDitherTypeOrdered8x8 = WICBitmapDitherType.itmapDitherTypeOrdered8x8;
pub const WICBitmapDitherTypeOrdered16x16 = WICBitmapDitherType.itmapDitherTypeOrdered16x16;
pub const WICBitmapDitherTypeSpiral4x4 = WICBitmapDitherType.itmapDitherTypeSpiral4x4;
pub const WICBitmapDitherTypeSpiral8x8 = WICBitmapDitherType.itmapDitherTypeSpiral8x8;
pub const WICBitmapDitherTypeDualSpiral4x4 = WICBitmapDitherType.itmapDitherTypeDualSpiral4x4;
pub const WICBitmapDitherTypeDualSpiral8x8 = WICBitmapDitherType.itmapDitherTypeDualSpiral8x8;
pub const WICBitmapDitherTypeErrorDiffusion = WICBitmapDitherType.itmapDitherTypeErrorDiffusion;
pub const WICBITMAPDITHERTYPE_FORCE_DWORD = WICBitmapDitherType.ITMAPDITHERTYPE_FORCE_DWORD;
pub const WICBitmapAlphaChannelOption = enum(i32) {
itmapUseAlpha = 0,
itmapUsePremultipliedAlpha = 1,
itmapIgnoreAlpha = 2,
ITMAPALPHACHANNELOPTIONS_FORCE_DWORD = 2147483647,
};
pub const WICBitmapUseAlpha = WICBitmapAlphaChannelOption.itmapUseAlpha;
pub const WICBitmapUsePremultipliedAlpha = WICBitmapAlphaChannelOption.itmapUsePremultipliedAlpha;
pub const WICBitmapIgnoreAlpha = WICBitmapAlphaChannelOption.itmapIgnoreAlpha;
pub const WICBITMAPALPHACHANNELOPTIONS_FORCE_DWORD = WICBitmapAlphaChannelOption.ITMAPALPHACHANNELOPTIONS_FORCE_DWORD;
pub const WICBitmapTransformOptions = enum(i32) {
itmapTransformRotate0 = 0,
itmapTransformRotate90 = 1,
itmapTransformRotate180 = 2,
itmapTransformRotate270 = 3,
itmapTransformFlipHorizontal = 8,
itmapTransformFlipVertical = 16,
ITMAPTRANSFORMOPTIONS_FORCE_DWORD = 2147483647,
};
pub const WICBitmapTransformRotate0 = WICBitmapTransformOptions.itmapTransformRotate0;
pub const WICBitmapTransformRotate90 = WICBitmapTransformOptions.itmapTransformRotate90;
pub const WICBitmapTransformRotate180 = WICBitmapTransformOptions.itmapTransformRotate180;
pub const WICBitmapTransformRotate270 = WICBitmapTransformOptions.itmapTransformRotate270;
pub const WICBitmapTransformFlipHorizontal = WICBitmapTransformOptions.itmapTransformFlipHorizontal;
pub const WICBitmapTransformFlipVertical = WICBitmapTransformOptions.itmapTransformFlipVertical;
pub const WICBITMAPTRANSFORMOPTIONS_FORCE_DWORD = WICBitmapTransformOptions.ITMAPTRANSFORMOPTIONS_FORCE_DWORD;
pub const WICBitmapLockFlags = enum(i32) {
itmapLockRead = 1,
itmapLockWrite = 2,
ITMAPLOCKFLAGS_FORCE_DWORD = 2147483647,
};
pub const WICBitmapLockRead = WICBitmapLockFlags.itmapLockRead;
pub const WICBitmapLockWrite = WICBitmapLockFlags.itmapLockWrite;
pub const WICBITMAPLOCKFLAGS_FORCE_DWORD = WICBitmapLockFlags.ITMAPLOCKFLAGS_FORCE_DWORD;
pub const WICBitmapDecoderCapabilities = enum(i32) {
itmapDecoderCapabilitySameEncoder = 1,
itmapDecoderCapabilityCanDecodeAllImages = 2,
itmapDecoderCapabilityCanDecodeSomeImages = 4,
itmapDecoderCapabilityCanEnumerateMetadata = 8,
itmapDecoderCapabilityCanDecodeThumbnail = 16,
ITMAPDECODERCAPABILITIES_FORCE_DWORD = 2147483647,
};
pub const WICBitmapDecoderCapabilitySameEncoder = WICBitmapDecoderCapabilities.itmapDecoderCapabilitySameEncoder;
pub const WICBitmapDecoderCapabilityCanDecodeAllImages = WICBitmapDecoderCapabilities.itmapDecoderCapabilityCanDecodeAllImages;
pub const WICBitmapDecoderCapabilityCanDecodeSomeImages = WICBitmapDecoderCapabilities.itmapDecoderCapabilityCanDecodeSomeImages;
pub const WICBitmapDecoderCapabilityCanEnumerateMetadata = WICBitmapDecoderCapabilities.itmapDecoderCapabilityCanEnumerateMetadata;
pub const WICBitmapDecoderCapabilityCanDecodeThumbnail = WICBitmapDecoderCapabilities.itmapDecoderCapabilityCanDecodeThumbnail;
pub const WICBITMAPDECODERCAPABILITIES_FORCE_DWORD = WICBitmapDecoderCapabilities.ITMAPDECODERCAPABILITIES_FORCE_DWORD;
pub const WICProgressOperation = enum(i32) {
rogressOperationCopyPixels = 1,
rogressOperationWritePixels = 2,
rogressOperationAll = 65535,
ROGRESSOPERATION_FORCE_DWORD = 2147483647,
};
pub const WICProgressOperationCopyPixels = WICProgressOperation.rogressOperationCopyPixels;
pub const WICProgressOperationWritePixels = WICProgressOperation.rogressOperationWritePixels;
pub const WICProgressOperationAll = WICProgressOperation.rogressOperationAll;
pub const WICPROGRESSOPERATION_FORCE_DWORD = WICProgressOperation.ROGRESSOPERATION_FORCE_DWORD;
pub const WICProgressNotification = enum(i32) {
rogressNotificationBegin = 65536,
rogressNotificationEnd = 131072,
rogressNotificationFrequent = 262144,
rogressNotificationAll = -65536,
ROGRESSNOTIFICATION_FORCE_DWORD = 2147483647,
};
pub const WICProgressNotificationBegin = WICProgressNotification.rogressNotificationBegin;
pub const WICProgressNotificationEnd = WICProgressNotification.rogressNotificationEnd;
pub const WICProgressNotificationFrequent = WICProgressNotification.rogressNotificationFrequent;
pub const WICProgressNotificationAll = WICProgressNotification.rogressNotificationAll;
pub const WICPROGRESSNOTIFICATION_FORCE_DWORD = WICProgressNotification.ROGRESSNOTIFICATION_FORCE_DWORD;
pub const WICComponentSigning = enum(i32) {
omponentSigned = 1,
omponentUnsigned = 2,
omponentSafe = 4,
omponentDisabled = -2147483648,
OMPONENTSIGNING_FORCE_DWORD = 2147483647,
};
pub const WICComponentSigned = WICComponentSigning.omponentSigned;
pub const WICComponentUnsigned = WICComponentSigning.omponentUnsigned;
pub const WICComponentSafe = WICComponentSigning.omponentSafe;
pub const WICComponentDisabled = WICComponentSigning.omponentDisabled;
pub const WICCOMPONENTSIGNING_FORCE_DWORD = WICComponentSigning.OMPONENTSIGNING_FORCE_DWORD;
pub const WICGifLogicalScreenDescriptorProperties = enum(u32) {
Signature = 1,
DescriptorWidth = 2,
DescriptorHeight = 3,
DescriptorGlobalColorTableFlag = 4,
DescriptorColorResolution = 5,
DescriptorSortFlag = 6,
DescriptorGlobalColorTableSize = 7,
DescriptorBackgroundColorIndex = 8,
DescriptorPixelAspectRatio = 9,
DescriptorProperties_FORCE_DWORD = 2147483647,
};
pub const WICGifLogicalScreenSignature = WICGifLogicalScreenDescriptorProperties.Signature;
pub const WICGifLogicalScreenDescriptorWidth = WICGifLogicalScreenDescriptorProperties.DescriptorWidth;
pub const WICGifLogicalScreenDescriptorHeight = WICGifLogicalScreenDescriptorProperties.DescriptorHeight;
pub const WICGifLogicalScreenDescriptorGlobalColorTableFlag = WICGifLogicalScreenDescriptorProperties.DescriptorGlobalColorTableFlag;
pub const WICGifLogicalScreenDescriptorColorResolution = WICGifLogicalScreenDescriptorProperties.DescriptorColorResolution;
pub const WICGifLogicalScreenDescriptorSortFlag = WICGifLogicalScreenDescriptorProperties.DescriptorSortFlag;
pub const WICGifLogicalScreenDescriptorGlobalColorTableSize = WICGifLogicalScreenDescriptorProperties.DescriptorGlobalColorTableSize;
pub const WICGifLogicalScreenDescriptorBackgroundColorIndex = WICGifLogicalScreenDescriptorProperties.DescriptorBackgroundColorIndex;
pub const WICGifLogicalScreenDescriptorPixelAspectRatio = WICGifLogicalScreenDescriptorProperties.DescriptorPixelAspectRatio;
pub const WICGifLogicalScreenDescriptorProperties_FORCE_DWORD = WICGifLogicalScreenDescriptorProperties.DescriptorProperties_FORCE_DWORD;
pub const WICGifImageDescriptorProperties = enum(u32) {
Left = 1,
Top = 2,
Width = 3,
Height = 4,
LocalColorTableFlag = 5,
InterlaceFlag = 6,
SortFlag = 7,
LocalColorTableSize = 8,
Properties_FORCE_DWORD = 2147483647,
};
pub const WICGifImageDescriptorLeft = WICGifImageDescriptorProperties.Left;
pub const WICGifImageDescriptorTop = WICGifImageDescriptorProperties.Top;
pub const WICGifImageDescriptorWidth = WICGifImageDescriptorProperties.Width;
pub const WICGifImageDescriptorHeight = WICGifImageDescriptorProperties.Height;
pub const WICGifImageDescriptorLocalColorTableFlag = WICGifImageDescriptorProperties.LocalColorTableFlag;
pub const WICGifImageDescriptorInterlaceFlag = WICGifImageDescriptorProperties.InterlaceFlag;
pub const WICGifImageDescriptorSortFlag = WICGifImageDescriptorProperties.SortFlag;
pub const WICGifImageDescriptorLocalColorTableSize = WICGifImageDescriptorProperties.LocalColorTableSize;
pub const WICGifImageDescriptorProperties_FORCE_DWORD = WICGifImageDescriptorProperties.Properties_FORCE_DWORD;
pub const WICGifGraphicControlExtensionProperties = enum(u32) {
Disposal = 1,
UserInputFlag = 2,
TransparencyFlag = 3,
Delay = 4,
TransparentColorIndex = 5,
Properties_FORCE_DWORD = 2147483647,
};
pub const WICGifGraphicControlExtensionDisposal = WICGifGraphicControlExtensionProperties.Disposal;
pub const WICGifGraphicControlExtensionUserInputFlag = WICGifGraphicControlExtensionProperties.UserInputFlag;
pub const WICGifGraphicControlExtensionTransparencyFlag = WICGifGraphicControlExtensionProperties.TransparencyFlag;
pub const WICGifGraphicControlExtensionDelay = WICGifGraphicControlExtensionProperties.Delay;
pub const WICGifGraphicControlExtensionTransparentColorIndex = WICGifGraphicControlExtensionProperties.TransparentColorIndex;
pub const WICGifGraphicControlExtensionProperties_FORCE_DWORD = WICGifGraphicControlExtensionProperties.Properties_FORCE_DWORD;
pub const WICGifApplicationExtensionProperties = enum(u32) {
Application = 1,
Data = 2,
Properties_FORCE_DWORD = 2147483647,
};
pub const WICGifApplicationExtensionApplication = WICGifApplicationExtensionProperties.Application;
pub const WICGifApplicationExtensionData = WICGifApplicationExtensionProperties.Data;
pub const WICGifApplicationExtensionProperties_FORCE_DWORD = WICGifApplicationExtensionProperties.Properties_FORCE_DWORD;
pub const WICGifCommentExtensionProperties = enum(u32) {
Text = 1,
Properties_FORCE_DWORD = 2147483647,
};
pub const WICGifCommentExtensionText = WICGifCommentExtensionProperties.Text;
pub const WICGifCommentExtensionProperties_FORCE_DWORD = WICGifCommentExtensionProperties.Properties_FORCE_DWORD;
pub const WICJpegCommentProperties = enum(u32) {
Text = 1,
Properties_FORCE_DWORD = 2147483647,
};
pub const WICJpegCommentText = WICJpegCommentProperties.Text;
pub const WICJpegCommentProperties_FORCE_DWORD = WICJpegCommentProperties.Properties_FORCE_DWORD;
pub const WICJpegLuminanceProperties = enum(u32) {
Table = 1,
Properties_FORCE_DWORD = 2147483647,
};
pub const WICJpegLuminanceTable = WICJpegLuminanceProperties.Table;
pub const WICJpegLuminanceProperties_FORCE_DWORD = WICJpegLuminanceProperties.Properties_FORCE_DWORD;
pub const WICJpegChrominanceProperties = enum(u32) {
Table = 1,
Properties_FORCE_DWORD = 2147483647,
};
pub const WICJpegChrominanceTable = WICJpegChrominanceProperties.Table;
pub const WICJpegChrominanceProperties_FORCE_DWORD = WICJpegChrominanceProperties.Properties_FORCE_DWORD;
pub const WIC8BIMIptcProperties = enum(u32) {
PString = 0,
EmbeddedIPTC = 1,
Properties_FORCE_DWORD = 2147483647,
};
pub const WIC8BIMIptcPString = WIC8BIMIptcProperties.PString;
pub const WIC8BIMIptcEmbeddedIPTC = WIC8BIMIptcProperties.EmbeddedIPTC;
pub const WIC8BIMIptcProperties_FORCE_DWORD = WIC8BIMIptcProperties.Properties_FORCE_DWORD;
pub const WIC8BIMResolutionInfoProperties = enum(u32) {
PString = 1,
HResolution = 2,
HResolutionUnit = 3,
WidthUnit = 4,
VResolution = 5,
VResolutionUnit = 6,
HeightUnit = 7,
Properties_FORCE_DWORD = 2147483647,
};
pub const WIC8BIMResolutionInfoPString = WIC8BIMResolutionInfoProperties.PString;
pub const WIC8BIMResolutionInfoHResolution = WIC8BIMResolutionInfoProperties.HResolution;
pub const WIC8BIMResolutionInfoHResolutionUnit = WIC8BIMResolutionInfoProperties.HResolutionUnit;
pub const WIC8BIMResolutionInfoWidthUnit = WIC8BIMResolutionInfoProperties.WidthUnit;
pub const WIC8BIMResolutionInfoVResolution = WIC8BIMResolutionInfoProperties.VResolution;
pub const WIC8BIMResolutionInfoVResolutionUnit = WIC8BIMResolutionInfoProperties.VResolutionUnit;
pub const WIC8BIMResolutionInfoHeightUnit = WIC8BIMResolutionInfoProperties.HeightUnit;
pub const WIC8BIMResolutionInfoProperties_FORCE_DWORD = WIC8BIMResolutionInfoProperties.Properties_FORCE_DWORD;
pub const WIC8BIMIptcDigestProperties = enum(u32) {
PString = 1,
IptcDigest = 2,
Properties_FORCE_DWORD = 2147483647,
};
pub const WIC8BIMIptcDigestPString = WIC8BIMIptcDigestProperties.PString;
pub const WIC8BIMIptcDigestIptcDigest = WIC8BIMIptcDigestProperties.IptcDigest;
pub const WIC8BIMIptcDigestProperties_FORCE_DWORD = WIC8BIMIptcDigestProperties.Properties_FORCE_DWORD;
pub const WICPngGamaProperties = enum(u32) {
Gamma = 1,
Properties_FORCE_DWORD = 2147483647,
};
pub const WICPngGamaGamma = WICPngGamaProperties.Gamma;
pub const WICPngGamaProperties_FORCE_DWORD = WICPngGamaProperties.Properties_FORCE_DWORD;
pub const WICPngBkgdProperties = enum(u32) {
BackgroundColor = 1,
Properties_FORCE_DWORD = 2147483647,
};
pub const WICPngBkgdBackgroundColor = WICPngBkgdProperties.BackgroundColor;
pub const WICPngBkgdProperties_FORCE_DWORD = WICPngBkgdProperties.Properties_FORCE_DWORD;
pub const WICPngItxtProperties = enum(u32) {
Keyword = 1,
CompressionFlag = 2,
LanguageTag = 3,
TranslatedKeyword = 4,
Text = 5,
Properties_FORCE_DWORD = 2147483647,
};
pub const WICPngItxtKeyword = WICPngItxtProperties.Keyword;
pub const WICPngItxtCompressionFlag = WICPngItxtProperties.CompressionFlag;
pub const WICPngItxtLanguageTag = WICPngItxtProperties.LanguageTag;
pub const WICPngItxtTranslatedKeyword = WICPngItxtProperties.TranslatedKeyword;
pub const WICPngItxtText = WICPngItxtProperties.Text;
pub const WICPngItxtProperties_FORCE_DWORD = WICPngItxtProperties.Properties_FORCE_DWORD;
pub const WICPngChrmProperties = enum(u32) {
WhitePointX = 1,
WhitePointY = 2,
RedX = 3,
RedY = 4,
GreenX = 5,
GreenY = 6,
BlueX = 7,
BlueY = 8,
Properties_FORCE_DWORD = 2147483647,
};
pub const WICPngChrmWhitePointX = WICPngChrmProperties.WhitePointX;
pub const WICPngChrmWhitePointY = WICPngChrmProperties.WhitePointY;
pub const WICPngChrmRedX = WICPngChrmProperties.RedX;
pub const WICPngChrmRedY = WICPngChrmProperties.RedY;
pub const WICPngChrmGreenX = WICPngChrmProperties.GreenX;
pub const WICPngChrmGreenY = WICPngChrmProperties.GreenY;
pub const WICPngChrmBlueX = WICPngChrmProperties.BlueX;
pub const WICPngChrmBlueY = WICPngChrmProperties.BlueY;
pub const WICPngChrmProperties_FORCE_DWORD = WICPngChrmProperties.Properties_FORCE_DWORD;
pub const WICPngHistProperties = enum(u32) {
Frequencies = 1,
Properties_FORCE_DWORD = 2147483647,
};
pub const WICPngHistFrequencies = WICPngHistProperties.Frequencies;
pub const WICPngHistProperties_FORCE_DWORD = WICPngHistProperties.Properties_FORCE_DWORD;
pub const WICPngIccpProperties = enum(u32) {
fileName = 1,
fileData = 2,
perties_FORCE_DWORD = 2147483647,
};
pub const WICPngIccpProfileName = WICPngIccpProperties.fileName;
pub const WICPngIccpProfileData = WICPngIccpProperties.fileData;
pub const WICPngIccpProperties_FORCE_DWORD = WICPngIccpProperties.perties_FORCE_DWORD;
pub const WICPngSrgbProperties = enum(u32) {
RenderingIntent = 1,
Properties_FORCE_DWORD = 2147483647,
};
pub const WICPngSrgbRenderingIntent = WICPngSrgbProperties.RenderingIntent;
pub const WICPngSrgbProperties_FORCE_DWORD = WICPngSrgbProperties.Properties_FORCE_DWORD;
pub const WICPngTimeProperties = enum(u32) {
Year = 1,
Month = 2,
Day = 3,
Hour = 4,
Minute = 5,
Second = 6,
Properties_FORCE_DWORD = 2147483647,
};
pub const WICPngTimeYear = WICPngTimeProperties.Year;
pub const WICPngTimeMonth = WICPngTimeProperties.Month;
pub const WICPngTimeDay = WICPngTimeProperties.Day;
pub const WICPngTimeHour = WICPngTimeProperties.Hour;
pub const WICPngTimeMinute = WICPngTimeProperties.Minute;
pub const WICPngTimeSecond = WICPngTimeProperties.Second;
pub const WICPngTimeProperties_FORCE_DWORD = WICPngTimeProperties.Properties_FORCE_DWORD;
pub const WICHeifProperties = enum(u32) {
Orientation = 1,
Properties_FORCE_DWORD = 2147483647,
};
pub const WICHeifOrientation = WICHeifProperties.Orientation;
pub const WICHeifProperties_FORCE_DWORD = WICHeifProperties.Properties_FORCE_DWORD;
pub const WICHeifHdrProperties = enum(u32) {
MaximumLuminanceLevel = 1,
MaximumFrameAverageLuminanceLevel = 2,
MinimumMasteringDisplayLuminanceLevel = 3,
MaximumMasteringDisplayLuminanceLevel = 4,
CustomVideoPrimaries = 5,
Properties_FORCE_DWORD = 2147483647,
};
pub const WICHeifHdrMaximumLuminanceLevel = WICHeifHdrProperties.MaximumLuminanceLevel;
pub const WICHeifHdrMaximumFrameAverageLuminanceLevel = WICHeifHdrProperties.MaximumFrameAverageLuminanceLevel;
pub const WICHeifHdrMinimumMasteringDisplayLuminanceLevel = WICHeifHdrProperties.MinimumMasteringDisplayLuminanceLevel;
pub const WICHeifHdrMaximumMasteringDisplayLuminanceLevel = WICHeifHdrProperties.MaximumMasteringDisplayLuminanceLevel;
pub const WICHeifHdrCustomVideoPrimaries = WICHeifHdrProperties.CustomVideoPrimaries;
pub const WICHeifHdrProperties_FORCE_DWORD = WICHeifHdrProperties.Properties_FORCE_DWORD;
pub const WICWebpAnimProperties = enum(u32) {
LoopCount = 1,
Properties_FORCE_DWORD = 2147483647,
};
pub const WICWebpAnimLoopCount = WICWebpAnimProperties.LoopCount;
pub const WICWebpAnimProperties_FORCE_DWORD = WICWebpAnimProperties.Properties_FORCE_DWORD;
pub const WICWebpAnmfProperties = enum(u32) {
FrameDuration = 1,
Properties_FORCE_DWORD = 2147483647,
};
pub const WICWebpAnmfFrameDuration = WICWebpAnmfProperties.FrameDuration;
pub const WICWebpAnmfProperties_FORCE_DWORD = WICWebpAnmfProperties.Properties_FORCE_DWORD;
pub const WICSectionAccessLevel = enum(u32) {
Read = 1,
ReadWrite = 3,
_FORCE_DWORD = 2147483647,
};
pub const WICSectionAccessLevelRead = WICSectionAccessLevel.Read;
pub const WICSectionAccessLevelReadWrite = WICSectionAccessLevel.ReadWrite;
pub const WICSectionAccessLevel_FORCE_DWORD = WICSectionAccessLevel._FORCE_DWORD;
pub const WICPixelFormatNumericRepresentation = enum(u32) {
Unspecified = 0,
Indexed = 1,
UnsignedInteger = 2,
SignedInteger = 3,
Fixed = 4,
Float = 5,
_FORCE_DWORD = 2147483647,
};
pub const WICPixelFormatNumericRepresentationUnspecified = WICPixelFormatNumericRepresentation.Unspecified;
pub const WICPixelFormatNumericRepresentationIndexed = WICPixelFormatNumericRepresentation.Indexed;
pub const WICPixelFormatNumericRepresentationUnsignedInteger = WICPixelFormatNumericRepresentation.UnsignedInteger;
pub const WICPixelFormatNumericRepresentationSignedInteger = WICPixelFormatNumericRepresentation.SignedInteger;
pub const WICPixelFormatNumericRepresentationFixed = WICPixelFormatNumericRepresentation.Fixed;
pub const WICPixelFormatNumericRepresentationFloat = WICPixelFormatNumericRepresentation.Float;
pub const WICPixelFormatNumericRepresentation_FORCE_DWORD = WICPixelFormatNumericRepresentation._FORCE_DWORD;
pub const WICPlanarOptions = enum(i32) {
lanarOptionsDefault = 0,
lanarOptionsPreserveSubsampling = 1,
LANAROPTIONS_FORCE_DWORD = 2147483647,
};
pub const WICPlanarOptionsDefault = WICPlanarOptions.lanarOptionsDefault;
pub const WICPlanarOptionsPreserveSubsampling = WICPlanarOptions.lanarOptionsPreserveSubsampling;
pub const WICPLANAROPTIONS_FORCE_DWORD = WICPlanarOptions.LANAROPTIONS_FORCE_DWORD;
pub const WICJpegIndexingOptions = enum(u32) {
GenerateOnDemand = 0,
GenerateOnLoad = 1,
_FORCE_DWORD = 2147483647,
};
pub const WICJpegIndexingOptionsGenerateOnDemand = WICJpegIndexingOptions.GenerateOnDemand;
pub const WICJpegIndexingOptionsGenerateOnLoad = WICJpegIndexingOptions.GenerateOnLoad;
pub const WICJpegIndexingOptions_FORCE_DWORD = WICJpegIndexingOptions._FORCE_DWORD;
pub const WICJpegTransferMatrix = enum(u32) {
Identity = 0,
BT601 = 1,
_FORCE_DWORD = 2147483647,
};
pub const WICJpegTransferMatrixIdentity = WICJpegTransferMatrix.Identity;
pub const WICJpegTransferMatrixBT601 = WICJpegTransferMatrix.BT601;
pub const WICJpegTransferMatrix_FORCE_DWORD = WICJpegTransferMatrix._FORCE_DWORD;
pub const WICJpegScanType = enum(u32) {
Interleaved = 0,
PlanarComponents = 1,
Progressive = 2,
_FORCE_DWORD = 2147483647,
};
pub const WICJpegScanTypeInterleaved = WICJpegScanType.Interleaved;
pub const WICJpegScanTypePlanarComponents = WICJpegScanType.PlanarComponents;
pub const WICJpegScanTypeProgressive = WICJpegScanType.Progressive;
pub const WICJpegScanType_FORCE_DWORD = WICJpegScanType._FORCE_DWORD;
pub const WICImageParameters = extern struct {
PixelFormat: D2D1_PIXEL_FORMAT,
DpiX: f32,
DpiY: f32,
Top: f32,
Left: f32,
PixelWidth: u32,
PixelHeight: u32,
};
pub const WICBitmapPlaneDescription = extern struct {
Format: Guid,
Width: u32,
Height: u32,
};
pub const WICBitmapPlane = extern struct {
Format: Guid,
pbBuffer: ?*u8,
cbStride: u32,
cbBufferSize: u32,
};
pub const WICJpegFrameHeader = extern struct {
Width: u32,
Height: u32,
TransferMatrix: WICJpegTransferMatrix,
ScanType: WICJpegScanType,
cComponents: u32,
ComponentIdentifiers: u32,
SampleFactors: u32,
QuantizationTableIndices: u32,
};
pub const WICJpegScanHeader = extern struct {
cComponents: u32,
RestartInterval: u32,
ComponentSelectors: u32,
HuffmanTableIndices: u32,
StartSpectralSelection: u8,
EndSpectralSelection: u8,
SuccessiveApproximationHigh: u8,
SuccessiveApproximationLow: u8,
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICPalette_Value = Guid.initString("00000040-a8f2-4877-ba0a-fd2b6645fb94");
pub const IID_IWICPalette = &IID_IWICPalette_Value;
pub const IWICPalette = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
InitializePredefined: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICPalette,
ePaletteType: WICBitmapPaletteType,
fAddTransparentColor: BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICPalette,
ePaletteType: WICBitmapPaletteType,
fAddTransparentColor: BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
InitializeCustom: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICPalette,
pColors: [*]u32,
cCount: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICPalette,
pColors: [*]u32,
cCount: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
InitializeFromBitmap: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICPalette,
pISurface: ?*IWICBitmapSource,
cCount: u32,
fAddTransparentColor: BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICPalette,
pISurface: ?*IWICBitmapSource,
cCount: u32,
fAddTransparentColor: BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
InitializeFromPalette: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICPalette,
pIPalette: ?*IWICPalette,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICPalette,
pIPalette: ?*IWICPalette,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetType: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICPalette,
pePaletteType: ?*WICBitmapPaletteType,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICPalette,
pePaletteType: ?*WICBitmapPaletteType,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetColorCount: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICPalette,
pcCount: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICPalette,
pcCount: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetColors: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICPalette,
cCount: u32,
pColors: [*]u32,
pcActualColors: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICPalette,
cCount: u32,
pColors: [*]u32,
pcActualColors: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
IsBlackWhite: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICPalette,
pfIsBlackWhite: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICPalette,
pfIsBlackWhite: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
IsGrayscale: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICPalette,
pfIsGrayscale: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICPalette,
pfIsGrayscale: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
HasAlpha: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICPalette,
pfHasAlpha: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICPalette,
pfHasAlpha: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICPalette_InitializePredefined(self: *const T, ePaletteType: WICBitmapPaletteType, fAddTransparentColor: BOOL) callconv(.Inline) HRESULT {
return @as(*const IWICPalette.VTable, @ptrCast(self.vtable)).InitializePredefined(@as(*const IWICPalette, @ptrCast(self)), ePaletteType, fAddTransparentColor);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICPalette_InitializeCustom(self: *const T, pColors: [*]u32, cCount: u32) callconv(.Inline) HRESULT {
return @as(*const IWICPalette.VTable, @ptrCast(self.vtable)).InitializeCustom(@as(*const IWICPalette, @ptrCast(self)), pColors, cCount);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICPalette_InitializeFromBitmap(self: *const T, pISurface: ?*IWICBitmapSource, cCount: u32, fAddTransparentColor: BOOL) callconv(.Inline) HRESULT {
return @as(*const IWICPalette.VTable, @ptrCast(self.vtable)).InitializeFromBitmap(@as(*const IWICPalette, @ptrCast(self)), pISurface, cCount, fAddTransparentColor);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICPalette_InitializeFromPalette(self: *const T, pIPalette: ?*IWICPalette) callconv(.Inline) HRESULT {
return @as(*const IWICPalette.VTable, @ptrCast(self.vtable)).InitializeFromPalette(@as(*const IWICPalette, @ptrCast(self)), pIPalette);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICPalette_GetType(self: *const T, pePaletteType: ?*WICBitmapPaletteType) callconv(.Inline) HRESULT {
return @as(*const IWICPalette.VTable, @ptrCast(self.vtable)).GetType(@as(*const IWICPalette, @ptrCast(self)), pePaletteType);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICPalette_GetColorCount(self: *const T, pcCount: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICPalette.VTable, @ptrCast(self.vtable)).GetColorCount(@as(*const IWICPalette, @ptrCast(self)), pcCount);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICPalette_GetColors(self: *const T, cCount: u32, pColors: [*]u32, pcActualColors: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICPalette.VTable, @ptrCast(self.vtable)).GetColors(@as(*const IWICPalette, @ptrCast(self)), cCount, pColors, pcActualColors);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICPalette_IsBlackWhite(self: *const T, pfIsBlackWhite: ?*BOOL) callconv(.Inline) HRESULT {
return @as(*const IWICPalette.VTable, @ptrCast(self.vtable)).IsBlackWhite(@as(*const IWICPalette, @ptrCast(self)), pfIsBlackWhite);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICPalette_IsGrayscale(self: *const T, pfIsGrayscale: ?*BOOL) callconv(.Inline) HRESULT {
return @as(*const IWICPalette.VTable, @ptrCast(self.vtable)).IsGrayscale(@as(*const IWICPalette, @ptrCast(self)), pfIsGrayscale);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICPalette_HasAlpha(self: *const T, pfHasAlpha: ?*BOOL) callconv(.Inline) HRESULT {
return @as(*const IWICPalette.VTable, @ptrCast(self.vtable)).HasAlpha(@as(*const IWICPalette, @ptrCast(self)), pfHasAlpha);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICBitmapSource_Value = Guid.initString("00000120-a8f2-4877-ba0a-fd2b6645fb94");
pub const IID_IWICBitmapSource = &IID_IWICBitmapSource_Value;
pub const IWICBitmapSource = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
GetSize: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapSource,
puiWidth: ?*u32,
puiHeight: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapSource,
puiWidth: ?*u32,
puiHeight: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetPixelFormat: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapSource,
pPixelFormat: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapSource,
pPixelFormat: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetResolution: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapSource,
pDpiX: ?*f64,
pDpiY: ?*f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapSource,
pDpiX: ?*f64,
pDpiY: ?*f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CopyPalette: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapSource,
pIPalette: ?*IWICPalette,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapSource,
pIPalette: ?*IWICPalette,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CopyPixels: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapSource,
prc: ?*const WICRect,
cbStride: u32,
cbBufferSize: u32,
pbBuffer: [*:0]u8,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapSource,
prc: ?*const WICRect,
cbStride: u32,
cbBufferSize: u32,
pbBuffer: [*:0]u8,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapSource_GetSize(self: *const T, puiWidth: ?*u32, puiHeight: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapSource.VTable, @ptrCast(self.vtable)).GetSize(@as(*const IWICBitmapSource, @ptrCast(self)), puiWidth, puiHeight);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapSource_GetPixelFormat(self: *const T, pPixelFormat: ?*Guid) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapSource.VTable, @ptrCast(self.vtable)).GetPixelFormat(@as(*const IWICBitmapSource, @ptrCast(self)), pPixelFormat);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapSource_GetResolution(self: *const T, pDpiX: ?*f64, pDpiY: ?*f64) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapSource.VTable, @ptrCast(self.vtable)).GetResolution(@as(*const IWICBitmapSource, @ptrCast(self)), pDpiX, pDpiY);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapSource_CopyPalette(self: *const T, pIPalette: ?*IWICPalette) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapSource.VTable, @ptrCast(self.vtable)).CopyPalette(@as(*const IWICBitmapSource, @ptrCast(self)), pIPalette);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapSource_CopyPixels(self: *const T, prc: ?*const WICRect, cbStride: u32, cbBufferSize: u32, pbBuffer: [*:0]u8) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapSource.VTable, @ptrCast(self.vtable)).CopyPixels(@as(*const IWICBitmapSource, @ptrCast(self)), prc, cbStride, cbBufferSize, pbBuffer);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICFormatConverter_Value = Guid.initString("00000301-a8f2-4877-ba0a-fd2b6645fb94");
pub const IID_IWICFormatConverter = &IID_IWICFormatConverter_Value;
pub const IWICFormatConverter = extern struct {
pub const VTable = extern struct {
base: IWICBitmapSource.VTable,
Initialize: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICFormatConverter,
pISource: ?*IWICBitmapSource,
dstFormat: ?*Guid,
dither: WICBitmapDitherType,
pIPalette: ?*IWICPalette,
alphaThresholdPercent: f64,
paletteTranslate: WICBitmapPaletteType,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICFormatConverter,
pISource: ?*IWICBitmapSource,
dstFormat: ?*Guid,
dither: WICBitmapDitherType,
pIPalette: ?*IWICPalette,
alphaThresholdPercent: f64,
paletteTranslate: WICBitmapPaletteType,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CanConvert: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICFormatConverter,
srcPixelFormat: ?*Guid,
dstPixelFormat: ?*Guid,
pfCanConvert: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICFormatConverter,
srcPixelFormat: ?*Guid,
dstPixelFormat: ?*Guid,
pfCanConvert: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IWICBitmapSource.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICFormatConverter_Initialize(self: *const T, pISource: ?*IWICBitmapSource, dstFormat: ?*Guid, dither: WICBitmapDitherType, pIPalette: ?*IWICPalette, alphaThresholdPercent: f64, paletteTranslate: WICBitmapPaletteType) callconv(.Inline) HRESULT {
return @as(*const IWICFormatConverter.VTable, @ptrCast(self.vtable)).Initialize(@as(*const IWICFormatConverter, @ptrCast(self)), pISource, dstFormat, dither, pIPalette, alphaThresholdPercent, paletteTranslate);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICFormatConverter_CanConvert(self: *const T, srcPixelFormat: ?*Guid, dstPixelFormat: ?*Guid, pfCanConvert: ?*BOOL) callconv(.Inline) HRESULT {
return @as(*const IWICFormatConverter.VTable, @ptrCast(self.vtable)).CanConvert(@as(*const IWICFormatConverter, @ptrCast(self)), srcPixelFormat, dstPixelFormat, pfCanConvert);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows8.1'
const IID_IWICPlanarFormatConverter_Value = Guid.initString("bebee9cb-83b0-4dcc-8132-b0aaa55eac96");
pub const IID_IWICPlanarFormatConverter = &IID_IWICPlanarFormatConverter_Value;
pub const IWICPlanarFormatConverter = extern struct {
pub const VTable = extern struct {
base: IWICBitmapSource.VTable,
Initialize: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICPlanarFormatConverter,
ppPlanes: [*]?*IWICBitmapSource,
cPlanes: u32,
dstFormat: ?*Guid,
dither: WICBitmapDitherType,
pIPalette: ?*IWICPalette,
alphaThresholdPercent: f64,
paletteTranslate: WICBitmapPaletteType,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICPlanarFormatConverter,
ppPlanes: [*]?*IWICBitmapSource,
cPlanes: u32,
dstFormat: ?*Guid,
dither: WICBitmapDitherType,
pIPalette: ?*IWICPalette,
alphaThresholdPercent: f64,
paletteTranslate: WICBitmapPaletteType,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CanConvert: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICPlanarFormatConverter,
pSrcPixelFormats: [*]const Guid,
cSrcPlanes: u32,
dstPixelFormat: ?*Guid,
pfCanConvert: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICPlanarFormatConverter,
pSrcPixelFormats: [*]const Guid,
cSrcPlanes: u32,
dstPixelFormat: ?*Guid,
pfCanConvert: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IWICBitmapSource.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICPlanarFormatConverter_Initialize(self: *const T, ppPlanes: [*]?*IWICBitmapSource, cPlanes: u32, dstFormat: ?*Guid, dither: WICBitmapDitherType, pIPalette: ?*IWICPalette, alphaThresholdPercent: f64, paletteTranslate: WICBitmapPaletteType) callconv(.Inline) HRESULT {
return @as(*const IWICPlanarFormatConverter.VTable, @ptrCast(self.vtable)).Initialize(@as(*const IWICPlanarFormatConverter, @ptrCast(self)), ppPlanes, cPlanes, dstFormat, dither, pIPalette, alphaThresholdPercent, paletteTranslate);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICPlanarFormatConverter_CanConvert(self: *const T, pSrcPixelFormats: [*]const Guid, cSrcPlanes: u32, dstPixelFormat: ?*Guid, pfCanConvert: ?*BOOL) callconv(.Inline) HRESULT {
return @as(*const IWICPlanarFormatConverter.VTable, @ptrCast(self.vtable)).CanConvert(@as(*const IWICPlanarFormatConverter, @ptrCast(self)), pSrcPixelFormats, cSrcPlanes, dstPixelFormat, pfCanConvert);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICBitmapScaler_Value = Guid.initString("00000302-a8f2-4877-ba0a-fd2b6645fb94");
pub const IID_IWICBitmapScaler = &IID_IWICBitmapScaler_Value;
pub const IWICBitmapScaler = extern struct {
pub const VTable = extern struct {
base: IWICBitmapSource.VTable,
Initialize: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapScaler,
pISource: ?*IWICBitmapSource,
uiWidth: u32,
uiHeight: u32,
mode: WICBitmapInterpolationMode,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapScaler,
pISource: ?*IWICBitmapSource,
uiWidth: u32,
uiHeight: u32,
mode: WICBitmapInterpolationMode,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IWICBitmapSource.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapScaler_Initialize(self: *const T, pISource: ?*IWICBitmapSource, uiWidth: u32, uiHeight: u32, mode: WICBitmapInterpolationMode) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapScaler.VTable, @ptrCast(self.vtable)).Initialize(@as(*const IWICBitmapScaler, @ptrCast(self)), pISource, uiWidth, uiHeight, mode);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICBitmapClipper_Value = Guid.initString("e4fbcf03-223d-4e81-9333-d635556dd1b5");
pub const IID_IWICBitmapClipper = &IID_IWICBitmapClipper_Value;
pub const IWICBitmapClipper = extern struct {
pub const VTable = extern struct {
base: IWICBitmapSource.VTable,
Initialize: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapClipper,
pISource: ?*IWICBitmapSource,
prc: ?*const WICRect,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapClipper,
pISource: ?*IWICBitmapSource,
prc: ?*const WICRect,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IWICBitmapSource.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapClipper_Initialize(self: *const T, pISource: ?*IWICBitmapSource, prc: ?*const WICRect) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapClipper.VTable, @ptrCast(self.vtable)).Initialize(@as(*const IWICBitmapClipper, @ptrCast(self)), pISource, prc);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICBitmapFlipRotator_Value = Guid.initString("5009834f-2d6a-41ce-9e1b-17c5aff7a782");
pub const IID_IWICBitmapFlipRotator = &IID_IWICBitmapFlipRotator_Value;
pub const IWICBitmapFlipRotator = extern struct {
pub const VTable = extern struct {
base: IWICBitmapSource.VTable,
Initialize: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapFlipRotator,
pISource: ?*IWICBitmapSource,
options: WICBitmapTransformOptions,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapFlipRotator,
pISource: ?*IWICBitmapSource,
options: WICBitmapTransformOptions,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IWICBitmapSource.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapFlipRotator_Initialize(self: *const T, pISource: ?*IWICBitmapSource, options: WICBitmapTransformOptions) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapFlipRotator.VTable, @ptrCast(self.vtable)).Initialize(@as(*const IWICBitmapFlipRotator, @ptrCast(self)), pISource, options);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICBitmapLock_Value = Guid.initString("00000123-a8f2-4877-ba0a-fd2b6645fb94");
pub const IID_IWICBitmapLock = &IID_IWICBitmapLock_Value;
pub const IWICBitmapLock = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
GetSize: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapLock,
puiWidth: ?*u32,
puiHeight: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapLock,
puiWidth: ?*u32,
puiHeight: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetStride: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapLock,
pcbStride: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapLock,
pcbStride: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetDataPointer: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapLock,
pcbBufferSize: ?*u32,
ppbData: [*]?*u8,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapLock,
pcbBufferSize: ?*u32,
ppbData: [*]?*u8,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetPixelFormat: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapLock,
pPixelFormat: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapLock,
pPixelFormat: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapLock_GetSize(self: *const T, puiWidth: ?*u32, puiHeight: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapLock.VTable, @ptrCast(self.vtable)).GetSize(@as(*const IWICBitmapLock, @ptrCast(self)), puiWidth, puiHeight);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapLock_GetStride(self: *const T, pcbStride: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapLock.VTable, @ptrCast(self.vtable)).GetStride(@as(*const IWICBitmapLock, @ptrCast(self)), pcbStride);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapLock_GetDataPointer(self: *const T, pcbBufferSize: ?*u32, ppbData: [*]?*u8) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapLock.VTable, @ptrCast(self.vtable)).GetDataPointer(@as(*const IWICBitmapLock, @ptrCast(self)), pcbBufferSize, ppbData);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapLock_GetPixelFormat(self: *const T, pPixelFormat: ?*Guid) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapLock.VTable, @ptrCast(self.vtable)).GetPixelFormat(@as(*const IWICBitmapLock, @ptrCast(self)), pPixelFormat);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICBitmap_Value = Guid.initString("00000121-a8f2-4877-ba0a-fd2b6645fb94");
pub const IID_IWICBitmap = &IID_IWICBitmap_Value;
pub const IWICBitmap = extern struct {
pub const VTable = extern struct {
base: IWICBitmapSource.VTable,
Lock: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmap,
prcLock: ?*const WICRect,
flags: u32,
ppILock: ?*?*IWICBitmapLock,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmap,
prcLock: ?*const WICRect,
flags: u32,
ppILock: ?*?*IWICBitmapLock,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetPalette: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmap,
pIPalette: ?*IWICPalette,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmap,
pIPalette: ?*IWICPalette,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetResolution: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmap,
dpiX: f64,
dpiY: f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmap,
dpiX: f64,
dpiY: f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IWICBitmapSource.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmap_Lock(self: *const T, prcLock: ?*const WICRect, flags: u32, ppILock: ?*?*IWICBitmapLock) callconv(.Inline) HRESULT {
return @as(*const IWICBitmap.VTable, @ptrCast(self.vtable)).Lock(@as(*const IWICBitmap, @ptrCast(self)), prcLock, flags, ppILock);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmap_SetPalette(self: *const T, pIPalette: ?*IWICPalette) callconv(.Inline) HRESULT {
return @as(*const IWICBitmap.VTable, @ptrCast(self.vtable)).SetPalette(@as(*const IWICBitmap, @ptrCast(self)), pIPalette);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmap_SetResolution(self: *const T, dpiX: f64, dpiY: f64) callconv(.Inline) HRESULT {
return @as(*const IWICBitmap.VTable, @ptrCast(self.vtable)).SetResolution(@as(*const IWICBitmap, @ptrCast(self)), dpiX, dpiY);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICColorContext_Value = Guid.initString("3c613a02-34b2-44ea-9a7c-45aea9c6fd6d");
pub const IID_IWICColorContext = &IID_IWICColorContext_Value;
pub const IWICColorContext = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
InitializeFromFilename: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICColorContext,
wzFilename: ?[*:0]const u16,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICColorContext,
wzFilename: ?[*:0]const u16,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
InitializeFromMemory: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICColorContext,
pbBuffer: [*:0]const u8,
cbBufferSize: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICColorContext,
pbBuffer: [*:0]const u8,
cbBufferSize: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
InitializeFromExifColorSpace: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICColorContext,
value: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICColorContext,
value: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetType: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICColorContext,
pType: ?*WICColorContextType,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICColorContext,
pType: ?*WICColorContextType,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetProfileBytes: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICColorContext,
cbBuffer: u32,
pbBuffer: [*:0]u8,
pcbActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICColorContext,
cbBuffer: u32,
pbBuffer: [*:0]u8,
pcbActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetExifColorSpace: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICColorContext,
pValue: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICColorContext,
pValue: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICColorContext_InitializeFromFilename(self: *const T, wzFilename: ?[*:0]const u16) callconv(.Inline) HRESULT {
return @as(*const IWICColorContext.VTable, @ptrCast(self.vtable)).InitializeFromFilename(@as(*const IWICColorContext, @ptrCast(self)), wzFilename);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICColorContext_InitializeFromMemory(self: *const T, pbBuffer: [*:0]const u8, cbBufferSize: u32) callconv(.Inline) HRESULT {
return @as(*const IWICColorContext.VTable, @ptrCast(self.vtable)).InitializeFromMemory(@as(*const IWICColorContext, @ptrCast(self)), pbBuffer, cbBufferSize);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICColorContext_InitializeFromExifColorSpace(self: *const T, value: u32) callconv(.Inline) HRESULT {
return @as(*const IWICColorContext.VTable, @ptrCast(self.vtable)).InitializeFromExifColorSpace(@as(*const IWICColorContext, @ptrCast(self)), value);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICColorContext_GetType(self: *const T, pType: ?*WICColorContextType) callconv(.Inline) HRESULT {
return @as(*const IWICColorContext.VTable, @ptrCast(self.vtable)).GetType(@as(*const IWICColorContext, @ptrCast(self)), pType);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICColorContext_GetProfileBytes(self: *const T, cbBuffer: u32, pbBuffer: [*:0]u8, pcbActual: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICColorContext.VTable, @ptrCast(self.vtable)).GetProfileBytes(@as(*const IWICColorContext, @ptrCast(self)), cbBuffer, pbBuffer, pcbActual);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICColorContext_GetExifColorSpace(self: *const T, pValue: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICColorContext.VTable, @ptrCast(self.vtable)).GetExifColorSpace(@as(*const IWICColorContext, @ptrCast(self)), pValue);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICColorTransform_Value = Guid.initString("b66f034f-d0e2-40ab-b436-6de39e321a94");
pub const IID_IWICColorTransform = &IID_IWICColorTransform_Value;
pub const IWICColorTransform = extern struct {
pub const VTable = extern struct {
base: IWICBitmapSource.VTable,
Initialize: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICColorTransform,
pIBitmapSource: ?*IWICBitmapSource,
pIContextSource: ?*IWICColorContext,
pIContextDest: ?*IWICColorContext,
pixelFmtDest: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICColorTransform,
pIBitmapSource: ?*IWICBitmapSource,
pIContextSource: ?*IWICColorContext,
pIContextDest: ?*IWICColorContext,
pixelFmtDest: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IWICBitmapSource.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICColorTransform_Initialize(self: *const T, pIBitmapSource: ?*IWICBitmapSource, pIContextSource: ?*IWICColorContext, pIContextDest: ?*IWICColorContext, pixelFmtDest: ?*Guid) callconv(.Inline) HRESULT {
return @as(*const IWICColorTransform.VTable, @ptrCast(self.vtable)).Initialize(@as(*const IWICColorTransform, @ptrCast(self)), pIBitmapSource, pIContextSource, pIContextDest, pixelFmtDest);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICFastMetadataEncoder_Value = Guid.initString("b84e2c09-78c9-4ac4-8bd3-524ae1663a2f");
pub const IID_IWICFastMetadataEncoder = &IID_IWICFastMetadataEncoder_Value;
pub const IWICFastMetadataEncoder = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
Commit: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICFastMetadataEncoder,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICFastMetadataEncoder,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetMetadataQueryWriter: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICFastMetadataEncoder,
ppIMetadataQueryWriter: ?*?*IWICMetadataQueryWriter,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICFastMetadataEncoder,
ppIMetadataQueryWriter: ?*?*IWICMetadataQueryWriter,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICFastMetadataEncoder_Commit(self: *const T) callconv(.Inline) HRESULT {
return @as(*const IWICFastMetadataEncoder.VTable, @ptrCast(self.vtable)).Commit(@as(*const IWICFastMetadataEncoder, @ptrCast(self)));
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICFastMetadataEncoder_GetMetadataQueryWriter(self: *const T, ppIMetadataQueryWriter: ?*?*IWICMetadataQueryWriter) callconv(.Inline) HRESULT {
return @as(*const IWICFastMetadataEncoder.VTable, @ptrCast(self.vtable)).GetMetadataQueryWriter(@as(*const IWICFastMetadataEncoder, @ptrCast(self)), ppIMetadataQueryWriter);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICStream_Value = Guid.initString("135ff860-22b7-4ddf-b0f6-218f4f299a43");
pub const IID_IWICStream = &IID_IWICStream_Value;
pub const IWICStream = extern struct {
pub const VTable = extern struct {
base: IStream.VTable,
InitializeFromIStream: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICStream,
pIStream: ?*IStream,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICStream,
pIStream: ?*IStream,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
InitializeFromFilename: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICStream,
wzFileName: ?[*:0]const u16,
dwDesiredAccess: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICStream,
wzFileName: ?[*:0]const u16,
dwDesiredAccess: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
InitializeFromMemory: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICStream,
pbBuffer: [*:0]u8,
cbBufferSize: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICStream,
pbBuffer: [*:0]u8,
cbBufferSize: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
InitializeFromIStreamRegion: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICStream,
pIStream: ?*IStream,
ulOffset: ULARGE_INTEGER,
ulMaxSize: ULARGE_INTEGER,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICStream,
pIStream: ?*IStream,
ulOffset: ULARGE_INTEGER,
ulMaxSize: ULARGE_INTEGER,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IStream.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICStream_InitializeFromIStream(self: *const T, pIStream: ?*IStream) callconv(.Inline) HRESULT {
return @as(*const IWICStream.VTable, @ptrCast(self.vtable)).InitializeFromIStream(@as(*const IWICStream, @ptrCast(self)), pIStream);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICStream_InitializeFromFilename(self: *const T, wzFileName: ?[*:0]const u16, dwDesiredAccess: u32) callconv(.Inline) HRESULT {
return @as(*const IWICStream.VTable, @ptrCast(self.vtable)).InitializeFromFilename(@as(*const IWICStream, @ptrCast(self)), wzFileName, dwDesiredAccess);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICStream_InitializeFromMemory(self: *const T, pbBuffer: [*:0]u8, cbBufferSize: u32) callconv(.Inline) HRESULT {
return @as(*const IWICStream.VTable, @ptrCast(self.vtable)).InitializeFromMemory(@as(*const IWICStream, @ptrCast(self)), pbBuffer, cbBufferSize);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICStream_InitializeFromIStreamRegion(self: *const T, pIStream: ?*IStream, ulOffset: ULARGE_INTEGER, ulMaxSize: ULARGE_INTEGER) callconv(.Inline) HRESULT {
return @as(*const IWICStream.VTable, @ptrCast(self.vtable)).InitializeFromIStreamRegion(@as(*const IWICStream, @ptrCast(self)), pIStream, ulOffset, ulMaxSize);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICEnumMetadataItem_Value = Guid.initString("dc2bb46d-3f07-481e-8625-220c4aedbb33");
pub const IID_IWICEnumMetadataItem = &IID_IWICEnumMetadataItem_Value;
pub const IWICEnumMetadataItem = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
Next: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICEnumMetadataItem,
celt: u32,
rgeltSchema: [*]PROPVARIANT,
rgeltId: [*]PROPVARIANT,
rgeltValue: [*]PROPVARIANT,
pceltFetched: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICEnumMetadataItem,
celt: u32,
rgeltSchema: [*]PROPVARIANT,
rgeltId: [*]PROPVARIANT,
rgeltValue: [*]PROPVARIANT,
pceltFetched: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
Skip: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICEnumMetadataItem,
celt: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICEnumMetadataItem,
celt: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
Reset: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICEnumMetadataItem,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICEnumMetadataItem,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
Clone: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICEnumMetadataItem,
ppIEnumMetadataItem: ?*?*IWICEnumMetadataItem,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICEnumMetadataItem,
ppIEnumMetadataItem: ?*?*IWICEnumMetadataItem,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICEnumMetadataItem_Next(self: *const T, celt: u32, rgeltSchema: [*]PROPVARIANT, rgeltId: [*]PROPVARIANT, rgeltValue: [*]PROPVARIANT, pceltFetched: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICEnumMetadataItem.VTable, @ptrCast(self.vtable)).Next(@as(*const IWICEnumMetadataItem, @ptrCast(self)), celt, rgeltSchema, rgeltId, rgeltValue, pceltFetched);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICEnumMetadataItem_Skip(self: *const T, celt: u32) callconv(.Inline) HRESULT {
return @as(*const IWICEnumMetadataItem.VTable, @ptrCast(self.vtable)).Skip(@as(*const IWICEnumMetadataItem, @ptrCast(self)), celt);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICEnumMetadataItem_Reset(self: *const T) callconv(.Inline) HRESULT {
return @as(*const IWICEnumMetadataItem.VTable, @ptrCast(self.vtable)).Reset(@as(*const IWICEnumMetadataItem, @ptrCast(self)));
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICEnumMetadataItem_Clone(self: *const T, ppIEnumMetadataItem: ?*?*IWICEnumMetadataItem) callconv(.Inline) HRESULT {
return @as(*const IWICEnumMetadataItem.VTable, @ptrCast(self.vtable)).Clone(@as(*const IWICEnumMetadataItem, @ptrCast(self)), ppIEnumMetadataItem);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICMetadataQueryReader_Value = Guid.initString("30989668-e1c9-4597-b395-458eedb808df");
pub const IID_IWICMetadataQueryReader = &IID_IWICMetadataQueryReader_Value;
pub const IWICMetadataQueryReader = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
GetContainerFormat: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataQueryReader,
pguidContainerFormat: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataQueryReader,
pguidContainerFormat: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetLocation: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataQueryReader,
cchMaxLength: u32,
wzNamespace: [*:0]u16,
pcchActualLength: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataQueryReader,
cchMaxLength: u32,
wzNamespace: [*:0]u16,
pcchActualLength: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetMetadataByName: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataQueryReader,
wzName: ?[*:0]const u16,
pvarValue: ?*PROPVARIANT,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataQueryReader,
wzName: ?[*:0]const u16,
pvarValue: ?*PROPVARIANT,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetEnumerator: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataQueryReader,
ppIEnumString: ?*?*IEnumString,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataQueryReader,
ppIEnumString: ?*?*IEnumString,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataQueryReader_GetContainerFormat(self: *const T, pguidContainerFormat: ?*Guid) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataQueryReader.VTable, @ptrCast(self.vtable)).GetContainerFormat(@as(*const IWICMetadataQueryReader, @ptrCast(self)), pguidContainerFormat);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataQueryReader_GetLocation(self: *const T, cchMaxLength: u32, wzNamespace: [*:0]u16, pcchActualLength: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataQueryReader.VTable, @ptrCast(self.vtable)).GetLocation(@as(*const IWICMetadataQueryReader, @ptrCast(self)), cchMaxLength, wzNamespace, pcchActualLength);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataQueryReader_GetMetadataByName(self: *const T, wzName: ?[*:0]const u16, pvarValue: ?*PROPVARIANT) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataQueryReader.VTable, @ptrCast(self.vtable)).GetMetadataByName(@as(*const IWICMetadataQueryReader, @ptrCast(self)), wzName, pvarValue);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataQueryReader_GetEnumerator(self: *const T, ppIEnumString: ?*?*IEnumString) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataQueryReader.VTable, @ptrCast(self.vtable)).GetEnumerator(@as(*const IWICMetadataQueryReader, @ptrCast(self)), ppIEnumString);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICMetadataQueryWriter_Value = Guid.initString("a721791a-0def-4d06-bd91-2118bf1db10b");
pub const IID_IWICMetadataQueryWriter = &IID_IWICMetadataQueryWriter_Value;
pub const IWICMetadataQueryWriter = extern struct {
pub const VTable = extern struct {
base: IWICMetadataQueryReader.VTable,
SetMetadataByName: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataQueryWriter,
wzName: ?[*:0]const u16,
pvarValue: ?*const PROPVARIANT,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataQueryWriter,
wzName: ?[*:0]const u16,
pvarValue: ?*const PROPVARIANT,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
RemoveMetadataByName: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataQueryWriter,
wzName: ?[*:0]const u16,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataQueryWriter,
wzName: ?[*:0]const u16,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IWICMetadataQueryReader.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataQueryWriter_SetMetadataByName(self: *const T, wzName: ?[*:0]const u16, pvarValue: ?*const PROPVARIANT) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataQueryWriter.VTable, @ptrCast(self.vtable)).SetMetadataByName(@as(*const IWICMetadataQueryWriter, @ptrCast(self)), wzName, pvarValue);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataQueryWriter_RemoveMetadataByName(self: *const T, wzName: ?[*:0]const u16) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataQueryWriter.VTable, @ptrCast(self.vtable)).RemoveMetadataByName(@as(*const IWICMetadataQueryWriter, @ptrCast(self)), wzName);
}
};}
pub usingnamespace MethodMixin(@This());
};
const IID_IWICBitmapEncoder_Value = Guid.initString("00000103-a8f2-4877-ba0a-fd2b6645fb94");
pub const IID_IWICBitmapEncoder = &IID_IWICBitmapEncoder_Value;
pub const IWICBitmapEncoder = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
Initialize: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapEncoder,
pIStream: ?*IStream,
cacheOption: WICBitmapEncoderCacheOption,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapEncoder,
pIStream: ?*IStream,
cacheOption: WICBitmapEncoderCacheOption,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetContainerFormat: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapEncoder,
pguidContainerFormat: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapEncoder,
pguidContainerFormat: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetEncoderInfo: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapEncoder,
ppIEncoderInfo: ?*?*IWICBitmapEncoderInfo,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapEncoder,
ppIEncoderInfo: ?*?*IWICBitmapEncoderInfo,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetColorContexts: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapEncoder,
cCount: u32,
ppIColorContext: [*]?*IWICColorContext,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapEncoder,
cCount: u32,
ppIColorContext: [*]?*IWICColorContext,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetPalette: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapEncoder,
pIPalette: ?*IWICPalette,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapEncoder,
pIPalette: ?*IWICPalette,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetThumbnail: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapEncoder,
pIThumbnail: ?*IWICBitmapSource,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapEncoder,
pIThumbnail: ?*IWICBitmapSource,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetPreview: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapEncoder,
pIPreview: ?*IWICBitmapSource,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapEncoder,
pIPreview: ?*IWICBitmapSource,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateNewFrame: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapEncoder,
ppIFrameEncode: ?*?*IWICBitmapFrameEncode,
ppIEncoderOptions: ?*?*IPropertyBag2,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapEncoder,
ppIFrameEncode: ?*?*IWICBitmapFrameEncode,
ppIEncoderOptions: ?*?*IPropertyBag2,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
Commit: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapEncoder,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapEncoder,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetMetadataQueryWriter: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapEncoder,
ppIMetadataQueryWriter: ?*?*IWICMetadataQueryWriter,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapEncoder,
ppIMetadataQueryWriter: ?*?*IWICMetadataQueryWriter,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapEncoder_Initialize(self: *const T, pIStream: ?*IStream, cacheOption: WICBitmapEncoderCacheOption) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapEncoder.VTable, @ptrCast(self.vtable)).Initialize(@as(*const IWICBitmapEncoder, @ptrCast(self)), pIStream, cacheOption);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapEncoder_GetContainerFormat(self: *const T, pguidContainerFormat: ?*Guid) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapEncoder.VTable, @ptrCast(self.vtable)).GetContainerFormat(@as(*const IWICBitmapEncoder, @ptrCast(self)), pguidContainerFormat);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapEncoder_GetEncoderInfo(self: *const T, ppIEncoderInfo: ?*?*IWICBitmapEncoderInfo) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapEncoder.VTable, @ptrCast(self.vtable)).GetEncoderInfo(@as(*const IWICBitmapEncoder, @ptrCast(self)), ppIEncoderInfo);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapEncoder_SetColorContexts(self: *const T, cCount: u32, ppIColorContext: [*]?*IWICColorContext) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapEncoder.VTable, @ptrCast(self.vtable)).SetColorContexts(@as(*const IWICBitmapEncoder, @ptrCast(self)), cCount, ppIColorContext);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapEncoder_SetPalette(self: *const T, pIPalette: ?*IWICPalette) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapEncoder.VTable, @ptrCast(self.vtable)).SetPalette(@as(*const IWICBitmapEncoder, @ptrCast(self)), pIPalette);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapEncoder_SetThumbnail(self: *const T, pIThumbnail: ?*IWICBitmapSource) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapEncoder.VTable, @ptrCast(self.vtable)).SetThumbnail(@as(*const IWICBitmapEncoder, @ptrCast(self)), pIThumbnail);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapEncoder_SetPreview(self: *const T, pIPreview: ?*IWICBitmapSource) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapEncoder.VTable, @ptrCast(self.vtable)).SetPreview(@as(*const IWICBitmapEncoder, @ptrCast(self)), pIPreview);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapEncoder_CreateNewFrame(self: *const T, ppIFrameEncode: ?*?*IWICBitmapFrameEncode, ppIEncoderOptions: ?*?*IPropertyBag2) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapEncoder.VTable, @ptrCast(self.vtable)).CreateNewFrame(@as(*const IWICBitmapEncoder, @ptrCast(self)), ppIFrameEncode, ppIEncoderOptions);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapEncoder_Commit(self: *const T) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapEncoder.VTable, @ptrCast(self.vtable)).Commit(@as(*const IWICBitmapEncoder, @ptrCast(self)));
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapEncoder_GetMetadataQueryWriter(self: *const T, ppIMetadataQueryWriter: ?*?*IWICMetadataQueryWriter) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapEncoder.VTable, @ptrCast(self.vtable)).GetMetadataQueryWriter(@as(*const IWICBitmapEncoder, @ptrCast(self)), ppIMetadataQueryWriter);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICBitmapFrameEncode_Value = Guid.initString("00000105-a8f2-4877-ba0a-fd2b6645fb94");
pub const IID_IWICBitmapFrameEncode = &IID_IWICBitmapFrameEncode_Value;
pub const IWICBitmapFrameEncode = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
Initialize: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapFrameEncode,
pIEncoderOptions: ?*IPropertyBag2,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapFrameEncode,
pIEncoderOptions: ?*IPropertyBag2,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetSize: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapFrameEncode,
uiWidth: u32,
uiHeight: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapFrameEncode,
uiWidth: u32,
uiHeight: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetResolution: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapFrameEncode,
dpiX: f64,
dpiY: f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapFrameEncode,
dpiX: f64,
dpiY: f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetPixelFormat: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapFrameEncode,
pPixelFormat: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapFrameEncode,
pPixelFormat: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetColorContexts: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapFrameEncode,
cCount: u32,
ppIColorContext: [*]?*IWICColorContext,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapFrameEncode,
cCount: u32,
ppIColorContext: [*]?*IWICColorContext,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetPalette: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapFrameEncode,
pIPalette: ?*IWICPalette,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapFrameEncode,
pIPalette: ?*IWICPalette,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetThumbnail: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapFrameEncode,
pIThumbnail: ?*IWICBitmapSource,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapFrameEncode,
pIThumbnail: ?*IWICBitmapSource,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
WritePixels: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapFrameEncode,
lineCount: u32,
cbStride: u32,
cbBufferSize: u32,
pbPixels: [*:0]u8,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapFrameEncode,
lineCount: u32,
cbStride: u32,
cbBufferSize: u32,
pbPixels: [*:0]u8,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
WriteSource: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapFrameEncode,
pIBitmapSource: ?*IWICBitmapSource,
prc: ?*WICRect,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapFrameEncode,
pIBitmapSource: ?*IWICBitmapSource,
prc: ?*WICRect,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
Commit: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapFrameEncode,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapFrameEncode,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetMetadataQueryWriter: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapFrameEncode,
ppIMetadataQueryWriter: ?*?*IWICMetadataQueryWriter,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapFrameEncode,
ppIMetadataQueryWriter: ?*?*IWICMetadataQueryWriter,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapFrameEncode_Initialize(self: *const T, pIEncoderOptions: ?*IPropertyBag2) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapFrameEncode.VTable, @ptrCast(self.vtable)).Initialize(@as(*const IWICBitmapFrameEncode, @ptrCast(self)), pIEncoderOptions);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapFrameEncode_SetSize(self: *const T, uiWidth: u32, uiHeight: u32) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapFrameEncode.VTable, @ptrCast(self.vtable)).SetSize(@as(*const IWICBitmapFrameEncode, @ptrCast(self)), uiWidth, uiHeight);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapFrameEncode_SetResolution(self: *const T, dpiX: f64, dpiY: f64) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapFrameEncode.VTable, @ptrCast(self.vtable)).SetResolution(@as(*const IWICBitmapFrameEncode, @ptrCast(self)), dpiX, dpiY);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapFrameEncode_SetPixelFormat(self: *const T, pPixelFormat: ?*Guid) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapFrameEncode.VTable, @ptrCast(self.vtable)).SetPixelFormat(@as(*const IWICBitmapFrameEncode, @ptrCast(self)), pPixelFormat);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapFrameEncode_SetColorContexts(self: *const T, cCount: u32, ppIColorContext: [*]?*IWICColorContext) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapFrameEncode.VTable, @ptrCast(self.vtable)).SetColorContexts(@as(*const IWICBitmapFrameEncode, @ptrCast(self)), cCount, ppIColorContext);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapFrameEncode_SetPalette(self: *const T, pIPalette: ?*IWICPalette) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapFrameEncode.VTable, @ptrCast(self.vtable)).SetPalette(@as(*const IWICBitmapFrameEncode, @ptrCast(self)), pIPalette);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapFrameEncode_SetThumbnail(self: *const T, pIThumbnail: ?*IWICBitmapSource) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapFrameEncode.VTable, @ptrCast(self.vtable)).SetThumbnail(@as(*const IWICBitmapFrameEncode, @ptrCast(self)), pIThumbnail);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapFrameEncode_WritePixels(self: *const T, lineCount: u32, cbStride: u32, cbBufferSize: u32, pbPixels: [*:0]u8) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapFrameEncode.VTable, @ptrCast(self.vtable)).WritePixels(@as(*const IWICBitmapFrameEncode, @ptrCast(self)), lineCount, cbStride, cbBufferSize, pbPixels);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapFrameEncode_WriteSource(self: *const T, pIBitmapSource: ?*IWICBitmapSource, prc: ?*WICRect) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapFrameEncode.VTable, @ptrCast(self.vtable)).WriteSource(@as(*const IWICBitmapFrameEncode, @ptrCast(self)), pIBitmapSource, prc);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapFrameEncode_Commit(self: *const T) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapFrameEncode.VTable, @ptrCast(self.vtable)).Commit(@as(*const IWICBitmapFrameEncode, @ptrCast(self)));
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapFrameEncode_GetMetadataQueryWriter(self: *const T, ppIMetadataQueryWriter: ?*?*IWICMetadataQueryWriter) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapFrameEncode.VTable, @ptrCast(self.vtable)).GetMetadataQueryWriter(@as(*const IWICBitmapFrameEncode, @ptrCast(self)), ppIMetadataQueryWriter);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows8.1'
const IID_IWICPlanarBitmapFrameEncode_Value = Guid.initString("f928b7b8-2221-40c1-b72e-7e82f1974d1a");
pub const IID_IWICPlanarBitmapFrameEncode = &IID_IWICPlanarBitmapFrameEncode_Value;
pub const IWICPlanarBitmapFrameEncode = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
WritePixels: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICPlanarBitmapFrameEncode,
lineCount: u32,
pPlanes: [*]WICBitmapPlane,
cPlanes: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICPlanarBitmapFrameEncode,
lineCount: u32,
pPlanes: [*]WICBitmapPlane,
cPlanes: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
WriteSource: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICPlanarBitmapFrameEncode,
ppPlanes: [*]?*IWICBitmapSource,
cPlanes: u32,
prcSource: ?*WICRect,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICPlanarBitmapFrameEncode,
ppPlanes: [*]?*IWICBitmapSource,
cPlanes: u32,
prcSource: ?*WICRect,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICPlanarBitmapFrameEncode_WritePixels(self: *const T, lineCount: u32, pPlanes: [*]WICBitmapPlane, cPlanes: u32) callconv(.Inline) HRESULT {
return @as(*const IWICPlanarBitmapFrameEncode.VTable, @ptrCast(self.vtable)).WritePixels(@as(*const IWICPlanarBitmapFrameEncode, @ptrCast(self)), lineCount, pPlanes, cPlanes);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICPlanarBitmapFrameEncode_WriteSource(self: *const T, ppPlanes: [*]?*IWICBitmapSource, cPlanes: u32, prcSource: ?*WICRect) callconv(.Inline) HRESULT {
return @as(*const IWICPlanarBitmapFrameEncode.VTable, @ptrCast(self.vtable)).WriteSource(@as(*const IWICPlanarBitmapFrameEncode, @ptrCast(self)), ppPlanes, cPlanes, prcSource);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICBitmapDecoder_Value = Guid.initString("9edde9e7-8dee-47ea-99df-e6faf2ed44bf");
pub const IID_IWICBitmapDecoder = &IID_IWICBitmapDecoder_Value;
pub const IWICBitmapDecoder = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
QueryCapability: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapDecoder,
pIStream: ?*IStream,
pdwCapability: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapDecoder,
pIStream: ?*IStream,
pdwCapability: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
Initialize: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapDecoder,
pIStream: ?*IStream,
cacheOptions: WICDecodeOptions,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapDecoder,
pIStream: ?*IStream,
cacheOptions: WICDecodeOptions,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetContainerFormat: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapDecoder,
pguidContainerFormat: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapDecoder,
pguidContainerFormat: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetDecoderInfo: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapDecoder,
ppIDecoderInfo: ?*?*IWICBitmapDecoderInfo,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapDecoder,
ppIDecoderInfo: ?*?*IWICBitmapDecoderInfo,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CopyPalette: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapDecoder,
pIPalette: ?*IWICPalette,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapDecoder,
pIPalette: ?*IWICPalette,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetMetadataQueryReader: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapDecoder,
ppIMetadataQueryReader: ?*?*IWICMetadataQueryReader,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapDecoder,
ppIMetadataQueryReader: ?*?*IWICMetadataQueryReader,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetPreview: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapDecoder,
ppIBitmapSource: ?*?*IWICBitmapSource,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapDecoder,
ppIBitmapSource: ?*?*IWICBitmapSource,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetColorContexts: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapDecoder,
cCount: u32,
ppIColorContexts: [*]?*IWICColorContext,
pcActualCount: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapDecoder,
cCount: u32,
ppIColorContexts: [*]?*IWICColorContext,
pcActualCount: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetThumbnail: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapDecoder,
ppIThumbnail: ?*?*IWICBitmapSource,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapDecoder,
ppIThumbnail: ?*?*IWICBitmapSource,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetFrameCount: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapDecoder,
pCount: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapDecoder,
pCount: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetFrame: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapDecoder,
index: u32,
ppIBitmapFrame: ?*?*IWICBitmapFrameDecode,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapDecoder,
index: u32,
ppIBitmapFrame: ?*?*IWICBitmapFrameDecode,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapDecoder_QueryCapability(self: *const T, pIStream: ?*IStream, pdwCapability: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapDecoder.VTable, @ptrCast(self.vtable)).QueryCapability(@as(*const IWICBitmapDecoder, @ptrCast(self)), pIStream, pdwCapability);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapDecoder_Initialize(self: *const T, pIStream: ?*IStream, cacheOptions: WICDecodeOptions) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapDecoder.VTable, @ptrCast(self.vtable)).Initialize(@as(*const IWICBitmapDecoder, @ptrCast(self)), pIStream, cacheOptions);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapDecoder_GetContainerFormat(self: *const T, pguidContainerFormat: ?*Guid) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapDecoder.VTable, @ptrCast(self.vtable)).GetContainerFormat(@as(*const IWICBitmapDecoder, @ptrCast(self)), pguidContainerFormat);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapDecoder_GetDecoderInfo(self: *const T, ppIDecoderInfo: ?*?*IWICBitmapDecoderInfo) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapDecoder.VTable, @ptrCast(self.vtable)).GetDecoderInfo(@as(*const IWICBitmapDecoder, @ptrCast(self)), ppIDecoderInfo);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapDecoder_CopyPalette(self: *const T, pIPalette: ?*IWICPalette) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapDecoder.VTable, @ptrCast(self.vtable)).CopyPalette(@as(*const IWICBitmapDecoder, @ptrCast(self)), pIPalette);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapDecoder_GetMetadataQueryReader(self: *const T, ppIMetadataQueryReader: ?*?*IWICMetadataQueryReader) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapDecoder.VTable, @ptrCast(self.vtable)).GetMetadataQueryReader(@as(*const IWICBitmapDecoder, @ptrCast(self)), ppIMetadataQueryReader);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapDecoder_GetPreview(self: *const T, ppIBitmapSource: ?*?*IWICBitmapSource) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapDecoder.VTable, @ptrCast(self.vtable)).GetPreview(@as(*const IWICBitmapDecoder, @ptrCast(self)), ppIBitmapSource);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapDecoder_GetColorContexts(self: *const T, cCount: u32, ppIColorContexts: [*]?*IWICColorContext, pcActualCount: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapDecoder.VTable, @ptrCast(self.vtable)).GetColorContexts(@as(*const IWICBitmapDecoder, @ptrCast(self)), cCount, ppIColorContexts, pcActualCount);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapDecoder_GetThumbnail(self: *const T, ppIThumbnail: ?*?*IWICBitmapSource) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapDecoder.VTable, @ptrCast(self.vtable)).GetThumbnail(@as(*const IWICBitmapDecoder, @ptrCast(self)), ppIThumbnail);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapDecoder_GetFrameCount(self: *const T, pCount: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapDecoder.VTable, @ptrCast(self.vtable)).GetFrameCount(@as(*const IWICBitmapDecoder, @ptrCast(self)), pCount);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapDecoder_GetFrame(self: *const T, index: u32, ppIBitmapFrame: ?*?*IWICBitmapFrameDecode) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapDecoder.VTable, @ptrCast(self.vtable)).GetFrame(@as(*const IWICBitmapDecoder, @ptrCast(self)), index, ppIBitmapFrame);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICBitmapSourceTransform_Value = Guid.initString("3b16811b-6a43-4ec9-b713-3d5a0c13b940");
pub const IID_IWICBitmapSourceTransform = &IID_IWICBitmapSourceTransform_Value;
pub const IWICBitmapSourceTransform = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
CopyPixels: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapSourceTransform,
prc: ?*const WICRect,
uiWidth: u32,
uiHeight: u32,
pguidDstFormat: ?*Guid,
dstTransform: WICBitmapTransformOptions,
nStride: u32,
cbBufferSize: u32,
pbBuffer: [*:0]u8,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapSourceTransform,
prc: ?*const WICRect,
uiWidth: u32,
uiHeight: u32,
pguidDstFormat: ?*Guid,
dstTransform: WICBitmapTransformOptions,
nStride: u32,
cbBufferSize: u32,
pbBuffer: [*:0]u8,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetClosestSize: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapSourceTransform,
puiWidth: ?*u32,
puiHeight: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapSourceTransform,
puiWidth: ?*u32,
puiHeight: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetClosestPixelFormat: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapSourceTransform,
pguidDstFormat: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapSourceTransform,
pguidDstFormat: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
DoesSupportTransform: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapSourceTransform,
dstTransform: WICBitmapTransformOptions,
pfIsSupported: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapSourceTransform,
dstTransform: WICBitmapTransformOptions,
pfIsSupported: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapSourceTransform_CopyPixels(self: *const T, prc: ?*const WICRect, uiWidth: u32, uiHeight: u32, pguidDstFormat: ?*Guid, dstTransform: WICBitmapTransformOptions, nStride: u32, cbBufferSize: u32, pbBuffer: [*:0]u8) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapSourceTransform.VTable, @ptrCast(self.vtable)).CopyPixels(@as(*const IWICBitmapSourceTransform, @ptrCast(self)), prc, uiWidth, uiHeight, pguidDstFormat, dstTransform, nStride, cbBufferSize, pbBuffer);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapSourceTransform_GetClosestSize(self: *const T, puiWidth: ?*u32, puiHeight: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapSourceTransform.VTable, @ptrCast(self.vtable)).GetClosestSize(@as(*const IWICBitmapSourceTransform, @ptrCast(self)), puiWidth, puiHeight);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapSourceTransform_GetClosestPixelFormat(self: *const T, pguidDstFormat: ?*Guid) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapSourceTransform.VTable, @ptrCast(self.vtable)).GetClosestPixelFormat(@as(*const IWICBitmapSourceTransform, @ptrCast(self)), pguidDstFormat);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapSourceTransform_DoesSupportTransform(self: *const T, dstTransform: WICBitmapTransformOptions, pfIsSupported: ?*BOOL) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapSourceTransform.VTable, @ptrCast(self.vtable)).DoesSupportTransform(@as(*const IWICBitmapSourceTransform, @ptrCast(self)), dstTransform, pfIsSupported);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows8.1'
const IID_IWICPlanarBitmapSourceTransform_Value = Guid.initString("3aff9cce-be95-4303-b927-e7d16ff4a613");
pub const IID_IWICPlanarBitmapSourceTransform = &IID_IWICPlanarBitmapSourceTransform_Value;
pub const IWICPlanarBitmapSourceTransform = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
DoesSupportTransform: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICPlanarBitmapSourceTransform,
puiWidth: ?*u32,
puiHeight: ?*u32,
dstTransform: WICBitmapTransformOptions,
dstPlanarOptions: WICPlanarOptions,
pguidDstFormats: [*]const Guid,
pPlaneDescriptions: [*]WICBitmapPlaneDescription,
cPlanes: u32,
pfIsSupported: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICPlanarBitmapSourceTransform,
puiWidth: ?*u32,
puiHeight: ?*u32,
dstTransform: WICBitmapTransformOptions,
dstPlanarOptions: WICPlanarOptions,
pguidDstFormats: [*]const Guid,
pPlaneDescriptions: [*]WICBitmapPlaneDescription,
cPlanes: u32,
pfIsSupported: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CopyPixels: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICPlanarBitmapSourceTransform,
prcSource: ?*const WICRect,
uiWidth: u32,
uiHeight: u32,
dstTransform: WICBitmapTransformOptions,
dstPlanarOptions: WICPlanarOptions,
pDstPlanes: [*]const WICBitmapPlane,
cPlanes: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICPlanarBitmapSourceTransform,
prcSource: ?*const WICRect,
uiWidth: u32,
uiHeight: u32,
dstTransform: WICBitmapTransformOptions,
dstPlanarOptions: WICPlanarOptions,
pDstPlanes: [*]const WICBitmapPlane,
cPlanes: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICPlanarBitmapSourceTransform_DoesSupportTransform(self: *const T, puiWidth: ?*u32, puiHeight: ?*u32, dstTransform: WICBitmapTransformOptions, dstPlanarOptions: WICPlanarOptions, pguidDstFormats: [*]const Guid, pPlaneDescriptions: [*]WICBitmapPlaneDescription, cPlanes: u32, pfIsSupported: ?*BOOL) callconv(.Inline) HRESULT {
return @as(*const IWICPlanarBitmapSourceTransform.VTable, @ptrCast(self.vtable)).DoesSupportTransform(@as(*const IWICPlanarBitmapSourceTransform, @ptrCast(self)), puiWidth, puiHeight, dstTransform, dstPlanarOptions, pguidDstFormats, pPlaneDescriptions, cPlanes, pfIsSupported);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICPlanarBitmapSourceTransform_CopyPixels(self: *const T, prcSource: ?*const WICRect, uiWidth: u32, uiHeight: u32, dstTransform: WICBitmapTransformOptions, dstPlanarOptions: WICPlanarOptions, pDstPlanes: [*]const WICBitmapPlane, cPlanes: u32) callconv(.Inline) HRESULT {
return @as(*const IWICPlanarBitmapSourceTransform.VTable, @ptrCast(self.vtable)).CopyPixels(@as(*const IWICPlanarBitmapSourceTransform, @ptrCast(self)), prcSource, uiWidth, uiHeight, dstTransform, dstPlanarOptions, pDstPlanes, cPlanes);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICBitmapFrameDecode_Value = Guid.initString("3b16811b-6a43-4ec9-a813-3d930c13b940");
pub const IID_IWICBitmapFrameDecode = &IID_IWICBitmapFrameDecode_Value;
pub const IWICBitmapFrameDecode = extern struct {
pub const VTable = extern struct {
base: IWICBitmapSource.VTable,
GetMetadataQueryReader: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapFrameDecode,
ppIMetadataQueryReader: ?*?*IWICMetadataQueryReader,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapFrameDecode,
ppIMetadataQueryReader: ?*?*IWICMetadataQueryReader,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetColorContexts: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapFrameDecode,
cCount: u32,
ppIColorContexts: [*]?*IWICColorContext,
pcActualCount: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapFrameDecode,
cCount: u32,
ppIColorContexts: [*]?*IWICColorContext,
pcActualCount: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetThumbnail: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapFrameDecode,
ppIThumbnail: ?*?*IWICBitmapSource,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapFrameDecode,
ppIThumbnail: ?*?*IWICBitmapSource,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IWICBitmapSource.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapFrameDecode_GetMetadataQueryReader(self: *const T, ppIMetadataQueryReader: ?*?*IWICMetadataQueryReader) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapFrameDecode.VTable, @ptrCast(self.vtable)).GetMetadataQueryReader(@as(*const IWICBitmapFrameDecode, @ptrCast(self)), ppIMetadataQueryReader);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapFrameDecode_GetColorContexts(self: *const T, cCount: u32, ppIColorContexts: [*]?*IWICColorContext, pcActualCount: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapFrameDecode.VTable, @ptrCast(self.vtable)).GetColorContexts(@as(*const IWICBitmapFrameDecode, @ptrCast(self)), cCount, ppIColorContexts, pcActualCount);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapFrameDecode_GetThumbnail(self: *const T, ppIThumbnail: ?*?*IWICBitmapSource) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapFrameDecode.VTable, @ptrCast(self.vtable)).GetThumbnail(@as(*const IWICBitmapFrameDecode, @ptrCast(self)), ppIThumbnail);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows6.1'
const IID_IWICProgressiveLevelControl_Value = Guid.initString("daac296f-7aa5-4dbf-8d15-225c5976f891");
pub const IID_IWICProgressiveLevelControl = &IID_IWICProgressiveLevelControl_Value;
pub const IWICProgressiveLevelControl = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
GetLevelCount: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICProgressiveLevelControl,
pcLevels: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICProgressiveLevelControl,
pcLevels: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetCurrentLevel: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICProgressiveLevelControl,
pnLevel: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICProgressiveLevelControl,
pnLevel: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetCurrentLevel: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICProgressiveLevelControl,
nLevel: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICProgressiveLevelControl,
nLevel: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICProgressiveLevelControl_GetLevelCount(self: *const T, pcLevels: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICProgressiveLevelControl.VTable, @ptrCast(self.vtable)).GetLevelCount(@as(*const IWICProgressiveLevelControl, @ptrCast(self)), pcLevels);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICProgressiveLevelControl_GetCurrentLevel(self: *const T, pnLevel: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICProgressiveLevelControl.VTable, @ptrCast(self.vtable)).GetCurrentLevel(@as(*const IWICProgressiveLevelControl, @ptrCast(self)), pnLevel);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICProgressiveLevelControl_SetCurrentLevel(self: *const T, nLevel: u32) callconv(.Inline) HRESULT {
return @as(*const IWICProgressiveLevelControl.VTable, @ptrCast(self.vtable)).SetCurrentLevel(@as(*const IWICProgressiveLevelControl, @ptrCast(self)), nLevel);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows6.1'
const IID_IWICProgressCallback_Value = Guid.initString("4776f9cd-9517-45fa-bf24-e89c5ec5c60c");
pub const IID_IWICProgressCallback = &IID_IWICProgressCallback_Value;
pub const IWICProgressCallback = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
Notify: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICProgressCallback,
uFrameNum: u32,
operation: WICProgressOperation,
dblProgress: f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICProgressCallback,
uFrameNum: u32,
operation: WICProgressOperation,
dblProgress: f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICProgressCallback_Notify(self: *const T, uFrameNum: u32, operation: WICProgressOperation, dblProgress: f64) callconv(.Inline) HRESULT {
return @as(*const IWICProgressCallback.VTable, @ptrCast(self.vtable)).Notify(@as(*const IWICProgressCallback, @ptrCast(self)), uFrameNum, operation, dblProgress);
}
};}
pub usingnamespace MethodMixin(@This());
};
pub const PFNProgressNotification = switch (@import("builtin").zig_backend) {
.stage1 => fn(
pvData: ?*anyopaque,
uFrameNum: u32,
operation: WICProgressOperation,
dblProgress: f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
pvData: ?*anyopaque,
uFrameNum: u32,
operation: WICProgressOperation,
dblProgress: f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
} ;
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICBitmapCodecProgressNotification_Value = Guid.initString("64c1024e-c3cf-4462-8078-88c2b11c46d9");
pub const IID_IWICBitmapCodecProgressNotification = &IID_IWICBitmapCodecProgressNotification_Value;
pub const IWICBitmapCodecProgressNotification = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
RegisterProgressNotification: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapCodecProgressNotification,
pfnProgressNotification: ?PFNProgressNotification,
pvData: ?*anyopaque,
dwProgressFlags: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapCodecProgressNotification,
pfnProgressNotification: ?PFNProgressNotification,
pvData: ?*anyopaque,
dwProgressFlags: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapCodecProgressNotification_RegisterProgressNotification(self: *const T, pfnProgressNotification: ?PFNProgressNotification, pvData: ?*anyopaque, dwProgressFlags: u32) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapCodecProgressNotification.VTable, @ptrCast(self.vtable)).RegisterProgressNotification(@as(*const IWICBitmapCodecProgressNotification, @ptrCast(self)), pfnProgressNotification, pvData, dwProgressFlags);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICComponentInfo_Value = Guid.initString("23bc3f0a-698b-4357-886b-f24d50671334");
pub const IID_IWICComponentInfo = &IID_IWICComponentInfo_Value;
pub const IWICComponentInfo = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
GetComponentType: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICComponentInfo,
pType: ?*WICComponentType,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICComponentInfo,
pType: ?*WICComponentType,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetCLSID: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICComponentInfo,
pclsid: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICComponentInfo,
pclsid: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetSigningStatus: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICComponentInfo,
pStatus: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICComponentInfo,
pStatus: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetAuthor: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICComponentInfo,
cchAuthor: u32,
wzAuthor: [*:0]u16,
pcchActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICComponentInfo,
cchAuthor: u32,
wzAuthor: [*:0]u16,
pcchActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetVendorGUID: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICComponentInfo,
pguidVendor: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICComponentInfo,
pguidVendor: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetVersion: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICComponentInfo,
cchVersion: u32,
wzVersion: [*:0]u16,
pcchActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICComponentInfo,
cchVersion: u32,
wzVersion: [*:0]u16,
pcchActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetSpecVersion: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICComponentInfo,
cchSpecVersion: u32,
wzSpecVersion: [*:0]u16,
pcchActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICComponentInfo,
cchSpecVersion: u32,
wzSpecVersion: [*:0]u16,
pcchActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetFriendlyName: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICComponentInfo,
cchFriendlyName: u32,
wzFriendlyName: [*:0]u16,
pcchActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICComponentInfo,
cchFriendlyName: u32,
wzFriendlyName: [*:0]u16,
pcchActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICComponentInfo_GetComponentType(self: *const T, pType: ?*WICComponentType) callconv(.Inline) HRESULT {
return @as(*const IWICComponentInfo.VTable, @ptrCast(self.vtable)).GetComponentType(@as(*const IWICComponentInfo, @ptrCast(self)), pType);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICComponentInfo_GetCLSID(self: *const T, pclsid: ?*Guid) callconv(.Inline) HRESULT {
return @as(*const IWICComponentInfo.VTable, @ptrCast(self.vtable)).GetCLSID(@as(*const IWICComponentInfo, @ptrCast(self)), pclsid);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICComponentInfo_GetSigningStatus(self: *const T, pStatus: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICComponentInfo.VTable, @ptrCast(self.vtable)).GetSigningStatus(@as(*const IWICComponentInfo, @ptrCast(self)), pStatus);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICComponentInfo_GetAuthor(self: *const T, cchAuthor: u32, wzAuthor: [*:0]u16, pcchActual: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICComponentInfo.VTable, @ptrCast(self.vtable)).GetAuthor(@as(*const IWICComponentInfo, @ptrCast(self)), cchAuthor, wzAuthor, pcchActual);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICComponentInfo_GetVendorGUID(self: *const T, pguidVendor: ?*Guid) callconv(.Inline) HRESULT {
return @as(*const IWICComponentInfo.VTable, @ptrCast(self.vtable)).GetVendorGUID(@as(*const IWICComponentInfo, @ptrCast(self)), pguidVendor);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICComponentInfo_GetVersion(self: *const T, cchVersion: u32, wzVersion: [*:0]u16, pcchActual: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICComponentInfo.VTable, @ptrCast(self.vtable)).GetVersion(@as(*const IWICComponentInfo, @ptrCast(self)), cchVersion, wzVersion, pcchActual);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICComponentInfo_GetSpecVersion(self: *const T, cchSpecVersion: u32, wzSpecVersion: [*:0]u16, pcchActual: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICComponentInfo.VTable, @ptrCast(self.vtable)).GetSpecVersion(@as(*const IWICComponentInfo, @ptrCast(self)), cchSpecVersion, wzSpecVersion, pcchActual);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICComponentInfo_GetFriendlyName(self: *const T, cchFriendlyName: u32, wzFriendlyName: [*:0]u16, pcchActual: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICComponentInfo.VTable, @ptrCast(self.vtable)).GetFriendlyName(@as(*const IWICComponentInfo, @ptrCast(self)), cchFriendlyName, wzFriendlyName, pcchActual);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICFormatConverterInfo_Value = Guid.initString("9f34fb65-13f4-4f15-bc57-3726b5e53d9f");
pub const IID_IWICFormatConverterInfo = &IID_IWICFormatConverterInfo_Value;
pub const IWICFormatConverterInfo = extern struct {
pub const VTable = extern struct {
base: IWICComponentInfo.VTable,
GetPixelFormats: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICFormatConverterInfo,
cFormats: u32,
pPixelFormatGUIDs: [*]Guid,
pcActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICFormatConverterInfo,
cFormats: u32,
pPixelFormatGUIDs: [*]Guid,
pcActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateInstance: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICFormatConverterInfo,
ppIConverter: ?*?*IWICFormatConverter,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICFormatConverterInfo,
ppIConverter: ?*?*IWICFormatConverter,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IWICComponentInfo.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICFormatConverterInfo_GetPixelFormats(self: *const T, cFormats: u32, pPixelFormatGUIDs: [*]Guid, pcActual: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICFormatConverterInfo.VTable, @ptrCast(self.vtable)).GetPixelFormats(@as(*const IWICFormatConverterInfo, @ptrCast(self)), cFormats, pPixelFormatGUIDs, pcActual);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICFormatConverterInfo_CreateInstance(self: *const T, ppIConverter: ?*?*IWICFormatConverter) callconv(.Inline) HRESULT {
return @as(*const IWICFormatConverterInfo.VTable, @ptrCast(self.vtable)).CreateInstance(@as(*const IWICFormatConverterInfo, @ptrCast(self)), ppIConverter);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICBitmapCodecInfo_Value = Guid.initString("e87a44c4-b76e-4c47-8b09-298eb12a2714");
pub const IID_IWICBitmapCodecInfo = &IID_IWICBitmapCodecInfo_Value;
pub const IWICBitmapCodecInfo = extern struct {
pub const VTable = extern struct {
base: IWICComponentInfo.VTable,
GetContainerFormat: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapCodecInfo,
pguidContainerFormat: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapCodecInfo,
pguidContainerFormat: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetPixelFormats: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapCodecInfo,
cFormats: u32,
pguidPixelFormats: [*]Guid,
pcActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapCodecInfo,
cFormats: u32,
pguidPixelFormats: [*]Guid,
pcActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetColorManagementVersion: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapCodecInfo,
cchColorManagementVersion: u32,
wzColorManagementVersion: [*:0]u16,
pcchActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapCodecInfo,
cchColorManagementVersion: u32,
wzColorManagementVersion: [*:0]u16,
pcchActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetDeviceManufacturer: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapCodecInfo,
cchDeviceManufacturer: u32,
wzDeviceManufacturer: [*:0]u16,
pcchActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapCodecInfo,
cchDeviceManufacturer: u32,
wzDeviceManufacturer: [*:0]u16,
pcchActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetDeviceModels: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapCodecInfo,
cchDeviceModels: u32,
wzDeviceModels: [*:0]u16,
pcchActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapCodecInfo,
cchDeviceModels: u32,
wzDeviceModels: [*:0]u16,
pcchActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetMimeTypes: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapCodecInfo,
cchMimeTypes: u32,
wzMimeTypes: [*:0]u16,
pcchActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapCodecInfo,
cchMimeTypes: u32,
wzMimeTypes: [*:0]u16,
pcchActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetFileExtensions: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapCodecInfo,
cchFileExtensions: u32,
wzFileExtensions: [*:0]u16,
pcchActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapCodecInfo,
cchFileExtensions: u32,
wzFileExtensions: [*:0]u16,
pcchActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
DoesSupportAnimation: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapCodecInfo,
pfSupportAnimation: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapCodecInfo,
pfSupportAnimation: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
DoesSupportChromakey: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapCodecInfo,
pfSupportChromakey: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapCodecInfo,
pfSupportChromakey: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
DoesSupportLossless: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapCodecInfo,
pfSupportLossless: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapCodecInfo,
pfSupportLossless: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
DoesSupportMultiframe: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapCodecInfo,
pfSupportMultiframe: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapCodecInfo,
pfSupportMultiframe: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
MatchesMimeType: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapCodecInfo,
wzMimeType: ?[*:0]const u16,
pfMatches: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapCodecInfo,
wzMimeType: ?[*:0]const u16,
pfMatches: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IWICComponentInfo.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapCodecInfo_GetContainerFormat(self: *const T, pguidContainerFormat: ?*Guid) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapCodecInfo.VTable, @ptrCast(self.vtable)).GetContainerFormat(@as(*const IWICBitmapCodecInfo, @ptrCast(self)), pguidContainerFormat);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapCodecInfo_GetPixelFormats(self: *const T, cFormats: u32, pguidPixelFormats: [*]Guid, pcActual: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapCodecInfo.VTable, @ptrCast(self.vtable)).GetPixelFormats(@as(*const IWICBitmapCodecInfo, @ptrCast(self)), cFormats, pguidPixelFormats, pcActual);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapCodecInfo_GetColorManagementVersion(self: *const T, cchColorManagementVersion: u32, wzColorManagementVersion: [*:0]u16, pcchActual: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapCodecInfo.VTable, @ptrCast(self.vtable)).GetColorManagementVersion(@as(*const IWICBitmapCodecInfo, @ptrCast(self)), cchColorManagementVersion, wzColorManagementVersion, pcchActual);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapCodecInfo_GetDeviceManufacturer(self: *const T, cchDeviceManufacturer: u32, wzDeviceManufacturer: [*:0]u16, pcchActual: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapCodecInfo.VTable, @ptrCast(self.vtable)).GetDeviceManufacturer(@as(*const IWICBitmapCodecInfo, @ptrCast(self)), cchDeviceManufacturer, wzDeviceManufacturer, pcchActual);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapCodecInfo_GetDeviceModels(self: *const T, cchDeviceModels: u32, wzDeviceModels: [*:0]u16, pcchActual: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapCodecInfo.VTable, @ptrCast(self.vtable)).GetDeviceModels(@as(*const IWICBitmapCodecInfo, @ptrCast(self)), cchDeviceModels, wzDeviceModels, pcchActual);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapCodecInfo_GetMimeTypes(self: *const T, cchMimeTypes: u32, wzMimeTypes: [*:0]u16, pcchActual: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapCodecInfo.VTable, @ptrCast(self.vtable)).GetMimeTypes(@as(*const IWICBitmapCodecInfo, @ptrCast(self)), cchMimeTypes, wzMimeTypes, pcchActual);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapCodecInfo_GetFileExtensions(self: *const T, cchFileExtensions: u32, wzFileExtensions: [*:0]u16, pcchActual: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapCodecInfo.VTable, @ptrCast(self.vtable)).GetFileExtensions(@as(*const IWICBitmapCodecInfo, @ptrCast(self)), cchFileExtensions, wzFileExtensions, pcchActual);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapCodecInfo_DoesSupportAnimation(self: *const T, pfSupportAnimation: ?*BOOL) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapCodecInfo.VTable, @ptrCast(self.vtable)).DoesSupportAnimation(@as(*const IWICBitmapCodecInfo, @ptrCast(self)), pfSupportAnimation);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapCodecInfo_DoesSupportChromakey(self: *const T, pfSupportChromakey: ?*BOOL) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapCodecInfo.VTable, @ptrCast(self.vtable)).DoesSupportChromakey(@as(*const IWICBitmapCodecInfo, @ptrCast(self)), pfSupportChromakey);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapCodecInfo_DoesSupportLossless(self: *const T, pfSupportLossless: ?*BOOL) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapCodecInfo.VTable, @ptrCast(self.vtable)).DoesSupportLossless(@as(*const IWICBitmapCodecInfo, @ptrCast(self)), pfSupportLossless);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapCodecInfo_DoesSupportMultiframe(self: *const T, pfSupportMultiframe: ?*BOOL) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapCodecInfo.VTable, @ptrCast(self.vtable)).DoesSupportMultiframe(@as(*const IWICBitmapCodecInfo, @ptrCast(self)), pfSupportMultiframe);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapCodecInfo_MatchesMimeType(self: *const T, wzMimeType: ?[*:0]const u16, pfMatches: ?*BOOL) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapCodecInfo.VTable, @ptrCast(self.vtable)).MatchesMimeType(@as(*const IWICBitmapCodecInfo, @ptrCast(self)), wzMimeType, pfMatches);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICBitmapEncoderInfo_Value = Guid.initString("94c9b4ee-a09f-4f92-8a1e-4a9bce7e76fb");
pub const IID_IWICBitmapEncoderInfo = &IID_IWICBitmapEncoderInfo_Value;
pub const IWICBitmapEncoderInfo = extern struct {
pub const VTable = extern struct {
base: IWICBitmapCodecInfo.VTable,
CreateInstance: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapEncoderInfo,
ppIBitmapEncoder: ?*?*IWICBitmapEncoder,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapEncoderInfo,
ppIBitmapEncoder: ?*?*IWICBitmapEncoder,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IWICBitmapCodecInfo.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapEncoderInfo_CreateInstance(self: *const T, ppIBitmapEncoder: ?*?*IWICBitmapEncoder) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapEncoderInfo.VTable, @ptrCast(self.vtable)).CreateInstance(@as(*const IWICBitmapEncoderInfo, @ptrCast(self)), ppIBitmapEncoder);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICBitmapDecoderInfo_Value = Guid.initString("d8cd007f-d08f-4191-9bfc-236ea7f0e4b5");
pub const IID_IWICBitmapDecoderInfo = &IID_IWICBitmapDecoderInfo_Value;
pub const IWICBitmapDecoderInfo = extern struct {
pub const VTable = extern struct {
base: IWICBitmapCodecInfo.VTable,
GetPatterns: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapDecoderInfo,
cbSizePatterns: u32,
// TODO: what to do with BytesParamIndex 0?
pPatterns: ?*WICBitmapPattern,
pcPatterns: ?*u32,
pcbPatternsActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapDecoderInfo,
cbSizePatterns: u32,
// TODO: what to do with BytesParamIndex 0?
pPatterns: ?*WICBitmapPattern,
pcPatterns: ?*u32,
pcbPatternsActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
MatchesPattern: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapDecoderInfo,
pIStream: ?*IStream,
pfMatches: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapDecoderInfo,
pIStream: ?*IStream,
pfMatches: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateInstance: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICBitmapDecoderInfo,
ppIBitmapDecoder: ?*?*IWICBitmapDecoder,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICBitmapDecoderInfo,
ppIBitmapDecoder: ?*?*IWICBitmapDecoder,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IWICBitmapCodecInfo.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapDecoderInfo_GetPatterns(self: *const T, cbSizePatterns: u32, pPatterns: ?*WICBitmapPattern, pcPatterns: ?*u32, pcbPatternsActual: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapDecoderInfo.VTable, @ptrCast(self.vtable)).GetPatterns(@as(*const IWICBitmapDecoderInfo, @ptrCast(self)), cbSizePatterns, pPatterns, pcPatterns, pcbPatternsActual);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapDecoderInfo_MatchesPattern(self: *const T, pIStream: ?*IStream, pfMatches: ?*BOOL) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapDecoderInfo.VTable, @ptrCast(self.vtable)).MatchesPattern(@as(*const IWICBitmapDecoderInfo, @ptrCast(self)), pIStream, pfMatches);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICBitmapDecoderInfo_CreateInstance(self: *const T, ppIBitmapDecoder: ?*?*IWICBitmapDecoder) callconv(.Inline) HRESULT {
return @as(*const IWICBitmapDecoderInfo.VTable, @ptrCast(self.vtable)).CreateInstance(@as(*const IWICBitmapDecoderInfo, @ptrCast(self)), ppIBitmapDecoder);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICPixelFormatInfo_Value = Guid.initString("e8eda601-3d48-431a-ab44-69059be88bbe");
pub const IID_IWICPixelFormatInfo = &IID_IWICPixelFormatInfo_Value;
pub const IWICPixelFormatInfo = extern struct {
pub const VTable = extern struct {
base: IWICComponentInfo.VTable,
GetFormatGUID: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICPixelFormatInfo,
pFormat: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICPixelFormatInfo,
pFormat: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetColorContext: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICPixelFormatInfo,
ppIColorContext: ?*?*IWICColorContext,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICPixelFormatInfo,
ppIColorContext: ?*?*IWICColorContext,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetBitsPerPixel: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICPixelFormatInfo,
puiBitsPerPixel: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICPixelFormatInfo,
puiBitsPerPixel: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetChannelCount: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICPixelFormatInfo,
puiChannelCount: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICPixelFormatInfo,
puiChannelCount: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetChannelMask: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICPixelFormatInfo,
uiChannelIndex: u32,
cbMaskBuffer: u32,
pbMaskBuffer: [*:0]u8,
pcbActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICPixelFormatInfo,
uiChannelIndex: u32,
cbMaskBuffer: u32,
pbMaskBuffer: [*:0]u8,
pcbActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IWICComponentInfo.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICPixelFormatInfo_GetFormatGUID(self: *const T, pFormat: ?*Guid) callconv(.Inline) HRESULT {
return @as(*const IWICPixelFormatInfo.VTable, @ptrCast(self.vtable)).GetFormatGUID(@as(*const IWICPixelFormatInfo, @ptrCast(self)), pFormat);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICPixelFormatInfo_GetColorContext(self: *const T, ppIColorContext: ?*?*IWICColorContext) callconv(.Inline) HRESULT {
return @as(*const IWICPixelFormatInfo.VTable, @ptrCast(self.vtable)).GetColorContext(@as(*const IWICPixelFormatInfo, @ptrCast(self)), ppIColorContext);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICPixelFormatInfo_GetBitsPerPixel(self: *const T, puiBitsPerPixel: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICPixelFormatInfo.VTable, @ptrCast(self.vtable)).GetBitsPerPixel(@as(*const IWICPixelFormatInfo, @ptrCast(self)), puiBitsPerPixel);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICPixelFormatInfo_GetChannelCount(self: *const T, puiChannelCount: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICPixelFormatInfo.VTable, @ptrCast(self.vtable)).GetChannelCount(@as(*const IWICPixelFormatInfo, @ptrCast(self)), puiChannelCount);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICPixelFormatInfo_GetChannelMask(self: *const T, uiChannelIndex: u32, cbMaskBuffer: u32, pbMaskBuffer: [*:0]u8, pcbActual: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICPixelFormatInfo.VTable, @ptrCast(self.vtable)).GetChannelMask(@as(*const IWICPixelFormatInfo, @ptrCast(self)), uiChannelIndex, cbMaskBuffer, pbMaskBuffer, pcbActual);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows6.1'
const IID_IWICPixelFormatInfo2_Value = Guid.initString("a9db33a2-af5f-43c7-b679-74f5984b5aa4");
pub const IID_IWICPixelFormatInfo2 = &IID_IWICPixelFormatInfo2_Value;
pub const IWICPixelFormatInfo2 = extern struct {
pub const VTable = extern struct {
base: IWICPixelFormatInfo.VTable,
SupportsTransparency: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICPixelFormatInfo2,
pfSupportsTransparency: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICPixelFormatInfo2,
pfSupportsTransparency: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetNumericRepresentation: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICPixelFormatInfo2,
pNumericRepresentation: ?*WICPixelFormatNumericRepresentation,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICPixelFormatInfo2,
pNumericRepresentation: ?*WICPixelFormatNumericRepresentation,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IWICPixelFormatInfo.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICPixelFormatInfo2_SupportsTransparency(self: *const T, pfSupportsTransparency: ?*BOOL) callconv(.Inline) HRESULT {
return @as(*const IWICPixelFormatInfo2.VTable, @ptrCast(self.vtable)).SupportsTransparency(@as(*const IWICPixelFormatInfo2, @ptrCast(self)), pfSupportsTransparency);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICPixelFormatInfo2_GetNumericRepresentation(self: *const T, pNumericRepresentation: ?*WICPixelFormatNumericRepresentation) callconv(.Inline) HRESULT {
return @as(*const IWICPixelFormatInfo2.VTable, @ptrCast(self.vtable)).GetNumericRepresentation(@as(*const IWICPixelFormatInfo2, @ptrCast(self)), pNumericRepresentation);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICImagingFactory_Value = Guid.initString("ec5ec8a9-c395-4314-9c77-54d7a935ff70");
pub const IID_IWICImagingFactory = &IID_IWICImagingFactory_Value;
pub const IWICImagingFactory = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
CreateDecoderFromFilename: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICImagingFactory,
wzFilename: ?[*:0]const u16,
pguidVendor: ?*const Guid,
dwDesiredAccess: u32,
metadataOptions: WICDecodeOptions,
ppIDecoder: ?*?*IWICBitmapDecoder,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICImagingFactory,
wzFilename: ?[*:0]const u16,
pguidVendor: ?*const Guid,
dwDesiredAccess: u32,
metadataOptions: WICDecodeOptions,
ppIDecoder: ?*?*IWICBitmapDecoder,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateDecoderFromStream: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICImagingFactory,
pIStream: ?*IStream,
pguidVendor: ?*const Guid,
metadataOptions: WICDecodeOptions,
ppIDecoder: ?*?*IWICBitmapDecoder,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICImagingFactory,
pIStream: ?*IStream,
pguidVendor: ?*const Guid,
metadataOptions: WICDecodeOptions,
ppIDecoder: ?*?*IWICBitmapDecoder,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateDecoderFromFileHandle: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICImagingFactory,
hFile: usize,
pguidVendor: ?*const Guid,
metadataOptions: WICDecodeOptions,
ppIDecoder: ?*?*IWICBitmapDecoder,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICImagingFactory,
hFile: usize,
pguidVendor: ?*const Guid,
metadataOptions: WICDecodeOptions,
ppIDecoder: ?*?*IWICBitmapDecoder,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateComponentInfo: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICImagingFactory,
clsidComponent: ?*const Guid,
ppIInfo: ?*?*IWICComponentInfo,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICImagingFactory,
clsidComponent: ?*const Guid,
ppIInfo: ?*?*IWICComponentInfo,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateDecoder: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICImagingFactory,
guidContainerFormat: ?*const Guid,
pguidVendor: ?*const Guid,
ppIDecoder: ?*?*IWICBitmapDecoder,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICImagingFactory,
guidContainerFormat: ?*const Guid,
pguidVendor: ?*const Guid,
ppIDecoder: ?*?*IWICBitmapDecoder,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateEncoder: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICImagingFactory,
guidContainerFormat: ?*const Guid,
pguidVendor: ?*const Guid,
ppIEncoder: ?*?*IWICBitmapEncoder,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICImagingFactory,
guidContainerFormat: ?*const Guid,
pguidVendor: ?*const Guid,
ppIEncoder: ?*?*IWICBitmapEncoder,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreatePalette: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICImagingFactory,
ppIPalette: ?*?*IWICPalette,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICImagingFactory,
ppIPalette: ?*?*IWICPalette,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateFormatConverter: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICImagingFactory,
ppIFormatConverter: ?*?*IWICFormatConverter,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICImagingFactory,
ppIFormatConverter: ?*?*IWICFormatConverter,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateBitmapScaler: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICImagingFactory,
ppIBitmapScaler: ?*?*IWICBitmapScaler,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICImagingFactory,
ppIBitmapScaler: ?*?*IWICBitmapScaler,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateBitmapClipper: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICImagingFactory,
ppIBitmapClipper: ?*?*IWICBitmapClipper,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICImagingFactory,
ppIBitmapClipper: ?*?*IWICBitmapClipper,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateBitmapFlipRotator: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICImagingFactory,
ppIBitmapFlipRotator: ?*?*IWICBitmapFlipRotator,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICImagingFactory,
ppIBitmapFlipRotator: ?*?*IWICBitmapFlipRotator,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateStream: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICImagingFactory,
ppIWICStream: ?*?*IWICStream,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICImagingFactory,
ppIWICStream: ?*?*IWICStream,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateColorContext: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICImagingFactory,
ppIWICColorContext: ?*?*IWICColorContext,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICImagingFactory,
ppIWICColorContext: ?*?*IWICColorContext,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateColorTransformer: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICImagingFactory,
ppIWICColorTransform: ?*?*IWICColorTransform,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICImagingFactory,
ppIWICColorTransform: ?*?*IWICColorTransform,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateBitmap: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICImagingFactory,
uiWidth: u32,
uiHeight: u32,
pixelFormat: ?*Guid,
option: WICBitmapCreateCacheOption,
ppIBitmap: ?*?*IWICBitmap,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICImagingFactory,
uiWidth: u32,
uiHeight: u32,
pixelFormat: ?*Guid,
option: WICBitmapCreateCacheOption,
ppIBitmap: ?*?*IWICBitmap,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateBitmapFromSource: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICImagingFactory,
pIBitmapSource: ?*IWICBitmapSource,
option: WICBitmapCreateCacheOption,
ppIBitmap: ?*?*IWICBitmap,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICImagingFactory,
pIBitmapSource: ?*IWICBitmapSource,
option: WICBitmapCreateCacheOption,
ppIBitmap: ?*?*IWICBitmap,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateBitmapFromSourceRect: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICImagingFactory,
pIBitmapSource: ?*IWICBitmapSource,
x: u32,
y: u32,
width: u32,
height: u32,
ppIBitmap: ?*?*IWICBitmap,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICImagingFactory,
pIBitmapSource: ?*IWICBitmapSource,
x: u32,
y: u32,
width: u32,
height: u32,
ppIBitmap: ?*?*IWICBitmap,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateBitmapFromMemory: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICImagingFactory,
uiWidth: u32,
uiHeight: u32,
pixelFormat: ?*Guid,
cbStride: u32,
cbBufferSize: u32,
pbBuffer: [*:0]u8,
ppIBitmap: ?*?*IWICBitmap,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICImagingFactory,
uiWidth: u32,
uiHeight: u32,
pixelFormat: ?*Guid,
cbStride: u32,
cbBufferSize: u32,
pbBuffer: [*:0]u8,
ppIBitmap: ?*?*IWICBitmap,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateBitmapFromHBITMAP: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICImagingFactory,
hBitmap: ?HBITMAP,
hPalette: ?HPALETTE,
options: WICBitmapAlphaChannelOption,
ppIBitmap: ?*?*IWICBitmap,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICImagingFactory,
hBitmap: ?HBITMAP,
hPalette: ?HPALETTE,
options: WICBitmapAlphaChannelOption,
ppIBitmap: ?*?*IWICBitmap,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateBitmapFromHICON: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICImagingFactory,
hIcon: ?HICON,
ppIBitmap: ?*?*IWICBitmap,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICImagingFactory,
hIcon: ?HICON,
ppIBitmap: ?*?*IWICBitmap,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateComponentEnumerator: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICImagingFactory,
componentTypes: u32,
options: u32,
ppIEnumUnknown: ?*?*IEnumUnknown,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICImagingFactory,
componentTypes: u32,
options: u32,
ppIEnumUnknown: ?*?*IEnumUnknown,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateFastMetadataEncoderFromDecoder: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICImagingFactory,
pIDecoder: ?*IWICBitmapDecoder,
ppIFastEncoder: ?*?*IWICFastMetadataEncoder,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICImagingFactory,
pIDecoder: ?*IWICBitmapDecoder,
ppIFastEncoder: ?*?*IWICFastMetadataEncoder,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateFastMetadataEncoderFromFrameDecode: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICImagingFactory,
pIFrameDecoder: ?*IWICBitmapFrameDecode,
ppIFastEncoder: ?*?*IWICFastMetadataEncoder,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICImagingFactory,
pIFrameDecoder: ?*IWICBitmapFrameDecode,
ppIFastEncoder: ?*?*IWICFastMetadataEncoder,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateQueryWriter: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICImagingFactory,
guidMetadataFormat: ?*const Guid,
pguidVendor: ?*const Guid,
ppIQueryWriter: ?*?*IWICMetadataQueryWriter,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICImagingFactory,
guidMetadataFormat: ?*const Guid,
pguidVendor: ?*const Guid,
ppIQueryWriter: ?*?*IWICMetadataQueryWriter,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateQueryWriterFromReader: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICImagingFactory,
pIQueryReader: ?*IWICMetadataQueryReader,
pguidVendor: ?*const Guid,
ppIQueryWriter: ?*?*IWICMetadataQueryWriter,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICImagingFactory,
pIQueryReader: ?*IWICMetadataQueryReader,
pguidVendor: ?*const Guid,
ppIQueryWriter: ?*?*IWICMetadataQueryWriter,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICImagingFactory_CreateDecoderFromFilename(self: *const T, wzFilename: ?[*:0]const u16, pguidVendor: ?*const Guid, dwDesiredAccess: u32, metadataOptions: WICDecodeOptions, ppIDecoder: ?*?*IWICBitmapDecoder) callconv(.Inline) HRESULT {
return @as(*const IWICImagingFactory.VTable, @ptrCast(self.vtable)).CreateDecoderFromFilename(@as(*const IWICImagingFactory, @ptrCast(self)), wzFilename, pguidVendor, dwDesiredAccess, metadataOptions, ppIDecoder);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICImagingFactory_CreateDecoderFromStream(self: *const T, pIStream: ?*IStream, pguidVendor: ?*const Guid, metadataOptions: WICDecodeOptions, ppIDecoder: ?*?*IWICBitmapDecoder) callconv(.Inline) HRESULT {
return @as(*const IWICImagingFactory.VTable, @ptrCast(self.vtable)).CreateDecoderFromStream(@as(*const IWICImagingFactory, @ptrCast(self)), pIStream, pguidVendor, metadataOptions, ppIDecoder);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICImagingFactory_CreateDecoderFromFileHandle(self: *const T, hFile: usize, pguidVendor: ?*const Guid, metadataOptions: WICDecodeOptions, ppIDecoder: ?*?*IWICBitmapDecoder) callconv(.Inline) HRESULT {
return @as(*const IWICImagingFactory.VTable, @ptrCast(self.vtable)).CreateDecoderFromFileHandle(@as(*const IWICImagingFactory, @ptrCast(self)), hFile, pguidVendor, metadataOptions, ppIDecoder);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICImagingFactory_CreateComponentInfo(self: *const T, clsidComponent: ?*const Guid, ppIInfo: ?*?*IWICComponentInfo) callconv(.Inline) HRESULT {
return @as(*const IWICImagingFactory.VTable, @ptrCast(self.vtable)).CreateComponentInfo(@as(*const IWICImagingFactory, @ptrCast(self)), clsidComponent, ppIInfo);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICImagingFactory_CreateDecoder(self: *const T, guidContainerFormat: ?*const Guid, pguidVendor: ?*const Guid, ppIDecoder: ?*?*IWICBitmapDecoder) callconv(.Inline) HRESULT {
return @as(*const IWICImagingFactory.VTable, @ptrCast(self.vtable)).CreateDecoder(@as(*const IWICImagingFactory, @ptrCast(self)), guidContainerFormat, pguidVendor, ppIDecoder);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICImagingFactory_CreateEncoder(self: *const T, guidContainerFormat: ?*const Guid, pguidVendor: ?*const Guid, ppIEncoder: ?*?*IWICBitmapEncoder) callconv(.Inline) HRESULT {
return @as(*const IWICImagingFactory.VTable, @ptrCast(self.vtable)).CreateEncoder(@as(*const IWICImagingFactory, @ptrCast(self)), guidContainerFormat, pguidVendor, ppIEncoder);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICImagingFactory_CreatePalette(self: *const T, ppIPalette: ?*?*IWICPalette) callconv(.Inline) HRESULT {
return @as(*const IWICImagingFactory.VTable, @ptrCast(self.vtable)).CreatePalette(@as(*const IWICImagingFactory, @ptrCast(self)), ppIPalette);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICImagingFactory_CreateFormatConverter(self: *const T, ppIFormatConverter: ?*?*IWICFormatConverter) callconv(.Inline) HRESULT {
return @as(*const IWICImagingFactory.VTable, @ptrCast(self.vtable)).CreateFormatConverter(@as(*const IWICImagingFactory, @ptrCast(self)), ppIFormatConverter);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICImagingFactory_CreateBitmapScaler(self: *const T, ppIBitmapScaler: ?*?*IWICBitmapScaler) callconv(.Inline) HRESULT {
return @as(*const IWICImagingFactory.VTable, @ptrCast(self.vtable)).CreateBitmapScaler(@as(*const IWICImagingFactory, @ptrCast(self)), ppIBitmapScaler);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICImagingFactory_CreateBitmapClipper(self: *const T, ppIBitmapClipper: ?*?*IWICBitmapClipper) callconv(.Inline) HRESULT {
return @as(*const IWICImagingFactory.VTable, @ptrCast(self.vtable)).CreateBitmapClipper(@as(*const IWICImagingFactory, @ptrCast(self)), ppIBitmapClipper);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICImagingFactory_CreateBitmapFlipRotator(self: *const T, ppIBitmapFlipRotator: ?*?*IWICBitmapFlipRotator) callconv(.Inline) HRESULT {
return @as(*const IWICImagingFactory.VTable, @ptrCast(self.vtable)).CreateBitmapFlipRotator(@as(*const IWICImagingFactory, @ptrCast(self)), ppIBitmapFlipRotator);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICImagingFactory_CreateStream(self: *const T, ppIWICStream: ?*?*IWICStream) callconv(.Inline) HRESULT {
return @as(*const IWICImagingFactory.VTable, @ptrCast(self.vtable)).CreateStream(@as(*const IWICImagingFactory, @ptrCast(self)), ppIWICStream);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICImagingFactory_CreateColorContext(self: *const T, ppIWICColorContext: ?*?*IWICColorContext) callconv(.Inline) HRESULT {
return @as(*const IWICImagingFactory.VTable, @ptrCast(self.vtable)).CreateColorContext(@as(*const IWICImagingFactory, @ptrCast(self)), ppIWICColorContext);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICImagingFactory_CreateColorTransformer(self: *const T, ppIWICColorTransform: ?*?*IWICColorTransform) callconv(.Inline) HRESULT {
return @as(*const IWICImagingFactory.VTable, @ptrCast(self.vtable)).CreateColorTransformer(@as(*const IWICImagingFactory, @ptrCast(self)), ppIWICColorTransform);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICImagingFactory_CreateBitmap(self: *const T, uiWidth: u32, uiHeight: u32, pixelFormat: ?*Guid, option: WICBitmapCreateCacheOption, ppIBitmap: ?*?*IWICBitmap) callconv(.Inline) HRESULT {
return @as(*const IWICImagingFactory.VTable, @ptrCast(self.vtable)).CreateBitmap(@as(*const IWICImagingFactory, @ptrCast(self)), uiWidth, uiHeight, pixelFormat, option, ppIBitmap);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICImagingFactory_CreateBitmapFromSource(self: *const T, pIBitmapSource: ?*IWICBitmapSource, option: WICBitmapCreateCacheOption, ppIBitmap: ?*?*IWICBitmap) callconv(.Inline) HRESULT {
return @as(*const IWICImagingFactory.VTable, @ptrCast(self.vtable)).CreateBitmapFromSource(@as(*const IWICImagingFactory, @ptrCast(self)), pIBitmapSource, option, ppIBitmap);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICImagingFactory_CreateBitmapFromSourceRect(self: *const T, pIBitmapSource: ?*IWICBitmapSource, x: u32, y: u32, width: u32, height: u32, ppIBitmap: ?*?*IWICBitmap) callconv(.Inline) HRESULT {
return @as(*const IWICImagingFactory.VTable, @ptrCast(self.vtable)).CreateBitmapFromSourceRect(@as(*const IWICImagingFactory, @ptrCast(self)), pIBitmapSource, x, y, width, height, ppIBitmap);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICImagingFactory_CreateBitmapFromMemory(self: *const T, uiWidth: u32, uiHeight: u32, pixelFormat: ?*Guid, cbStride: u32, cbBufferSize: u32, pbBuffer: [*:0]u8, ppIBitmap: ?*?*IWICBitmap) callconv(.Inline) HRESULT {
return @as(*const IWICImagingFactory.VTable, @ptrCast(self.vtable)).CreateBitmapFromMemory(@as(*const IWICImagingFactory, @ptrCast(self)), uiWidth, uiHeight, pixelFormat, cbStride, cbBufferSize, pbBuffer, ppIBitmap);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICImagingFactory_CreateBitmapFromHBITMAP(self: *const T, hBitmap: ?HBITMAP, hPalette: ?HPALETTE, options: WICBitmapAlphaChannelOption, ppIBitmap: ?*?*IWICBitmap) callconv(.Inline) HRESULT {
return @as(*const IWICImagingFactory.VTable, @ptrCast(self.vtable)).CreateBitmapFromHBITMAP(@as(*const IWICImagingFactory, @ptrCast(self)), hBitmap, hPalette, options, ppIBitmap);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICImagingFactory_CreateBitmapFromHICON(self: *const T, hIcon: ?HICON, ppIBitmap: ?*?*IWICBitmap) callconv(.Inline) HRESULT {
return @as(*const IWICImagingFactory.VTable, @ptrCast(self.vtable)).CreateBitmapFromHICON(@as(*const IWICImagingFactory, @ptrCast(self)), hIcon, ppIBitmap);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICImagingFactory_CreateComponentEnumerator(self: *const T, componentTypes: u32, options: u32, ppIEnumUnknown: ?*?*IEnumUnknown) callconv(.Inline) HRESULT {
return @as(*const IWICImagingFactory.VTable, @ptrCast(self.vtable)).CreateComponentEnumerator(@as(*const IWICImagingFactory, @ptrCast(self)), componentTypes, options, ppIEnumUnknown);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICImagingFactory_CreateFastMetadataEncoderFromDecoder(self: *const T, pIDecoder: ?*IWICBitmapDecoder, ppIFastEncoder: ?*?*IWICFastMetadataEncoder) callconv(.Inline) HRESULT {
return @as(*const IWICImagingFactory.VTable, @ptrCast(self.vtable)).CreateFastMetadataEncoderFromDecoder(@as(*const IWICImagingFactory, @ptrCast(self)), pIDecoder, ppIFastEncoder);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICImagingFactory_CreateFastMetadataEncoderFromFrameDecode(self: *const T, pIFrameDecoder: ?*IWICBitmapFrameDecode, ppIFastEncoder: ?*?*IWICFastMetadataEncoder) callconv(.Inline) HRESULT {
return @as(*const IWICImagingFactory.VTable, @ptrCast(self.vtable)).CreateFastMetadataEncoderFromFrameDecode(@as(*const IWICImagingFactory, @ptrCast(self)), pIFrameDecoder, ppIFastEncoder);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICImagingFactory_CreateQueryWriter(self: *const T, guidMetadataFormat: ?*const Guid, pguidVendor: ?*const Guid, ppIQueryWriter: ?*?*IWICMetadataQueryWriter) callconv(.Inline) HRESULT {
return @as(*const IWICImagingFactory.VTable, @ptrCast(self.vtable)).CreateQueryWriter(@as(*const IWICImagingFactory, @ptrCast(self)), guidMetadataFormat, pguidVendor, ppIQueryWriter);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICImagingFactory_CreateQueryWriterFromReader(self: *const T, pIQueryReader: ?*IWICMetadataQueryReader, pguidVendor: ?*const Guid, ppIQueryWriter: ?*?*IWICMetadataQueryWriter) callconv(.Inline) HRESULT {
return @as(*const IWICImagingFactory.VTable, @ptrCast(self.vtable)).CreateQueryWriterFromReader(@as(*const IWICImagingFactory, @ptrCast(self)), pIQueryReader, pguidVendor, ppIQueryWriter);
}
};}
pub usingnamespace MethodMixin(@This());
};
pub const WICTiffCompressionOption = enum(i32) {
iffCompressionDontCare = 0,
iffCompressionNone = 1,
iffCompressionCCITT3 = 2,
iffCompressionCCITT4 = 3,
iffCompressionLZW = 4,
iffCompressionRLE = 5,
iffCompressionZIP = 6,
iffCompressionLZWHDifferencing = 7,
IFFCOMPRESSIONOPTION_FORCE_DWORD = 2147483647,
};
pub const WICTiffCompressionDontCare = WICTiffCompressionOption.iffCompressionDontCare;
pub const WICTiffCompressionNone = WICTiffCompressionOption.iffCompressionNone;
pub const WICTiffCompressionCCITT3 = WICTiffCompressionOption.iffCompressionCCITT3;
pub const WICTiffCompressionCCITT4 = WICTiffCompressionOption.iffCompressionCCITT4;
pub const WICTiffCompressionLZW = WICTiffCompressionOption.iffCompressionLZW;
pub const WICTiffCompressionRLE = WICTiffCompressionOption.iffCompressionRLE;
pub const WICTiffCompressionZIP = WICTiffCompressionOption.iffCompressionZIP;
pub const WICTiffCompressionLZWHDifferencing = WICTiffCompressionOption.iffCompressionLZWHDifferencing;
pub const WICTIFFCOMPRESSIONOPTION_FORCE_DWORD = WICTiffCompressionOption.IFFCOMPRESSIONOPTION_FORCE_DWORD;
pub const WICJpegYCrCbSubsamplingOption = enum(i32) {
pegYCrCbSubsamplingDefault = 0,
pegYCrCbSubsampling420 = 1,
pegYCrCbSubsampling422 = 2,
pegYCrCbSubsampling444 = 3,
pegYCrCbSubsampling440 = 4,
PEGYCRCBSUBSAMPLING_FORCE_DWORD = 2147483647,
};
pub const WICJpegYCrCbSubsamplingDefault = WICJpegYCrCbSubsamplingOption.pegYCrCbSubsamplingDefault;
pub const WICJpegYCrCbSubsampling420 = WICJpegYCrCbSubsamplingOption.pegYCrCbSubsampling420;
pub const WICJpegYCrCbSubsampling422 = WICJpegYCrCbSubsamplingOption.pegYCrCbSubsampling422;
pub const WICJpegYCrCbSubsampling444 = WICJpegYCrCbSubsamplingOption.pegYCrCbSubsampling444;
pub const WICJpegYCrCbSubsampling440 = WICJpegYCrCbSubsamplingOption.pegYCrCbSubsampling440;
pub const WICJPEGYCRCBSUBSAMPLING_FORCE_DWORD = WICJpegYCrCbSubsamplingOption.PEGYCRCBSUBSAMPLING_FORCE_DWORD;
pub const WICPngFilterOption = enum(i32) {
ngFilterUnspecified = 0,
ngFilterNone = 1,
ngFilterSub = 2,
ngFilterUp = 3,
ngFilterAverage = 4,
ngFilterPaeth = 5,
ngFilterAdaptive = 6,
NGFILTEROPTION_FORCE_DWORD = 2147483647,
};
pub const WICPngFilterUnspecified = WICPngFilterOption.ngFilterUnspecified;
pub const WICPngFilterNone = WICPngFilterOption.ngFilterNone;
pub const WICPngFilterSub = WICPngFilterOption.ngFilterSub;
pub const WICPngFilterUp = WICPngFilterOption.ngFilterUp;
pub const WICPngFilterAverage = WICPngFilterOption.ngFilterAverage;
pub const WICPngFilterPaeth = WICPngFilterOption.ngFilterPaeth;
pub const WICPngFilterAdaptive = WICPngFilterOption.ngFilterAdaptive;
pub const WICPNGFILTEROPTION_FORCE_DWORD = WICPngFilterOption.NGFILTEROPTION_FORCE_DWORD;
pub const WICNamedWhitePoint = enum(i32) {
WhitePointDefault = 1,
WhitePointDaylight = 2,
WhitePointCloudy = 4,
WhitePointShade = 8,
WhitePointTungsten = 16,
WhitePointFluorescent = 32,
WhitePointFlash = 64,
WhitePointUnderwater = 128,
WhitePointCustom = 256,
WhitePointAutoWhiteBalance = 512,
// WhitePointAsShot = 1, this enum value conflicts with WhitePointDefault
NAMEDWHITEPOINT_FORCE_DWORD = 2147483647,
};
pub const WICWhitePointDefault = WICNamedWhitePoint.WhitePointDefault;
pub const WICWhitePointDaylight = WICNamedWhitePoint.WhitePointDaylight;
pub const WICWhitePointCloudy = WICNamedWhitePoint.WhitePointCloudy;
pub const WICWhitePointShade = WICNamedWhitePoint.WhitePointShade;
pub const WICWhitePointTungsten = WICNamedWhitePoint.WhitePointTungsten;
pub const WICWhitePointFluorescent = WICNamedWhitePoint.WhitePointFluorescent;
pub const WICWhitePointFlash = WICNamedWhitePoint.WhitePointFlash;
pub const WICWhitePointUnderwater = WICNamedWhitePoint.WhitePointUnderwater;
pub const WICWhitePointCustom = WICNamedWhitePoint.WhitePointCustom;
pub const WICWhitePointAutoWhiteBalance = WICNamedWhitePoint.WhitePointAutoWhiteBalance;
pub const WICWhitePointAsShot = WICNamedWhitePoint.WhitePointDefault;
pub const WICNAMEDWHITEPOINT_FORCE_DWORD = WICNamedWhitePoint.NAMEDWHITEPOINT_FORCE_DWORD;
pub const WICRawCapabilities = enum(i32) {
awCapabilityNotSupported = 0,
awCapabilityGetSupported = 1,
awCapabilityFullySupported = 2,
AWCAPABILITIES_FORCE_DWORD = 2147483647,
};
pub const WICRawCapabilityNotSupported = WICRawCapabilities.awCapabilityNotSupported;
pub const WICRawCapabilityGetSupported = WICRawCapabilities.awCapabilityGetSupported;
pub const WICRawCapabilityFullySupported = WICRawCapabilities.awCapabilityFullySupported;
pub const WICRAWCAPABILITIES_FORCE_DWORD = WICRawCapabilities.AWCAPABILITIES_FORCE_DWORD;
pub const WICRawRotationCapabilities = enum(i32) {
awRotationCapabilityNotSupported = 0,
awRotationCapabilityGetSupported = 1,
awRotationCapabilityNinetyDegreesSupported = 2,
awRotationCapabilityFullySupported = 3,
AWROTATIONCAPABILITIES_FORCE_DWORD = 2147483647,
};
pub const WICRawRotationCapabilityNotSupported = WICRawRotationCapabilities.awRotationCapabilityNotSupported;
pub const WICRawRotationCapabilityGetSupported = WICRawRotationCapabilities.awRotationCapabilityGetSupported;
pub const WICRawRotationCapabilityNinetyDegreesSupported = WICRawRotationCapabilities.awRotationCapabilityNinetyDegreesSupported;
pub const WICRawRotationCapabilityFullySupported = WICRawRotationCapabilities.awRotationCapabilityFullySupported;
pub const WICRAWROTATIONCAPABILITIES_FORCE_DWORD = WICRawRotationCapabilities.AWROTATIONCAPABILITIES_FORCE_DWORD;
pub const WICRawCapabilitiesInfo = extern struct {
cbSize: u32,
CodecMajorVersion: u32,
CodecMinorVersion: u32,
ExposureCompensationSupport: WICRawCapabilities,
ContrastSupport: WICRawCapabilities,
RGBWhitePointSupport: WICRawCapabilities,
NamedWhitePointSupport: WICRawCapabilities,
NamedWhitePointSupportMask: u32,
KelvinWhitePointSupport: WICRawCapabilities,
GammaSupport: WICRawCapabilities,
TintSupport: WICRawCapabilities,
SaturationSupport: WICRawCapabilities,
SharpnessSupport: WICRawCapabilities,
NoiseReductionSupport: WICRawCapabilities,
DestinationColorProfileSupport: WICRawCapabilities,
ToneCurveSupport: WICRawCapabilities,
RotationSupport: WICRawRotationCapabilities,
RenderModeSupport: WICRawCapabilities,
};
pub const WICRawParameterSet = enum(i32) {
AsShotParameterSet = 1,
UserAdjustedParameterSet = 2,
AutoAdjustedParameterSet = 3,
RAWPARAMETERSET_FORCE_DWORD = 2147483647,
};
pub const WICAsShotParameterSet = WICRawParameterSet.AsShotParameterSet;
pub const WICUserAdjustedParameterSet = WICRawParameterSet.UserAdjustedParameterSet;
pub const WICAutoAdjustedParameterSet = WICRawParameterSet.AutoAdjustedParameterSet;
pub const WICRAWPARAMETERSET_FORCE_DWORD = WICRawParameterSet.RAWPARAMETERSET_FORCE_DWORD;
pub const WICRawRenderMode = enum(i32) {
awRenderModeDraft = 1,
awRenderModeNormal = 2,
awRenderModeBestQuality = 3,
AWRENDERMODE_FORCE_DWORD = 2147483647,
};
pub const WICRawRenderModeDraft = WICRawRenderMode.awRenderModeDraft;
pub const WICRawRenderModeNormal = WICRawRenderMode.awRenderModeNormal;
pub const WICRawRenderModeBestQuality = WICRawRenderMode.awRenderModeBestQuality;
pub const WICRAWRENDERMODE_FORCE_DWORD = WICRawRenderMode.AWRENDERMODE_FORCE_DWORD;
pub const WICRawToneCurvePoint = extern struct {
Input: f64,
Output: f64,
};
pub const WICRawToneCurve = extern struct {
cPoints: u32,
aPoints: [1]WICRawToneCurvePoint,
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICDevelopRawNotificationCallback_Value = Guid.initString("95c75a6e-3e8c-4ec2-85a8-aebcc551e59b");
pub const IID_IWICDevelopRawNotificationCallback = &IID_IWICDevelopRawNotificationCallback_Value;
pub const IWICDevelopRawNotificationCallback = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
Notify: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRawNotificationCallback,
NotificationMask: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRawNotificationCallback,
NotificationMask: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRawNotificationCallback_Notify(self: *const T, NotificationMask: u32) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRawNotificationCallback.VTable, @ptrCast(self.vtable)).Notify(@as(*const IWICDevelopRawNotificationCallback, @ptrCast(self)), NotificationMask);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICDevelopRaw_Value = Guid.initString("fbec5e44-f7be-4b65-b7f8-c0c81fef026d");
pub const IID_IWICDevelopRaw = &IID_IWICDevelopRaw_Value;
pub const IWICDevelopRaw = extern struct {
pub const VTable = extern struct {
base: IWICBitmapFrameDecode.VTable,
QueryRawCapabilitiesInfo: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
pInfo: ?*WICRawCapabilitiesInfo,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
pInfo: ?*WICRawCapabilitiesInfo,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
LoadParameterSet: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
ParameterSet: WICRawParameterSet,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
ParameterSet: WICRawParameterSet,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetCurrentParameterSet: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
ppCurrentParameterSet: ?*?*IPropertyBag2,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
ppCurrentParameterSet: ?*?*IPropertyBag2,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetExposureCompensation: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
ev: f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
ev: f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetExposureCompensation: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
pEV: ?*f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
pEV: ?*f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetWhitePointRGB: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
Red: u32,
Green: u32,
Blue: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
Red: u32,
Green: u32,
Blue: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetWhitePointRGB: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
pRed: ?*u32,
pGreen: ?*u32,
pBlue: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
pRed: ?*u32,
pGreen: ?*u32,
pBlue: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetNamedWhitePoint: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
WhitePoint: WICNamedWhitePoint,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
WhitePoint: WICNamedWhitePoint,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetNamedWhitePoint: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
pWhitePoint: ?*WICNamedWhitePoint,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
pWhitePoint: ?*WICNamedWhitePoint,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetWhitePointKelvin: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
WhitePointKelvin: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
WhitePointKelvin: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetWhitePointKelvin: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
pWhitePointKelvin: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
pWhitePointKelvin: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetKelvinRangeInfo: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
pMinKelvinTemp: ?*u32,
pMaxKelvinTemp: ?*u32,
pKelvinTempStepValue: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
pMinKelvinTemp: ?*u32,
pMaxKelvinTemp: ?*u32,
pKelvinTempStepValue: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetContrast: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
Contrast: f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
Contrast: f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetContrast: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
pContrast: ?*f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
pContrast: ?*f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetGamma: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
Gamma: f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
Gamma: f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetGamma: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
pGamma: ?*f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
pGamma: ?*f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetSharpness: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
Sharpness: f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
Sharpness: f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetSharpness: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
pSharpness: ?*f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
pSharpness: ?*f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetSaturation: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
Saturation: f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
Saturation: f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetSaturation: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
pSaturation: ?*f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
pSaturation: ?*f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetTint: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
Tint: f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
Tint: f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetTint: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
pTint: ?*f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
pTint: ?*f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetNoiseReduction: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
NoiseReduction: f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
NoiseReduction: f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetNoiseReduction: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
pNoiseReduction: ?*f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
pNoiseReduction: ?*f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetDestinationColorContext: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
pColorContext: ?*IWICColorContext,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
pColorContext: ?*IWICColorContext,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetToneCurve: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
cbToneCurveSize: u32,
// TODO: what to do with BytesParamIndex 0?
pToneCurve: ?*const WICRawToneCurve,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
cbToneCurveSize: u32,
// TODO: what to do with BytesParamIndex 0?
pToneCurve: ?*const WICRawToneCurve,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetToneCurve: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
cbToneCurveBufferSize: u32,
// TODO: what to do with BytesParamIndex 0?
pToneCurve: ?*WICRawToneCurve,
pcbActualToneCurveBufferSize: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
cbToneCurveBufferSize: u32,
// TODO: what to do with BytesParamIndex 0?
pToneCurve: ?*WICRawToneCurve,
pcbActualToneCurveBufferSize: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetRotation: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
Rotation: f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
Rotation: f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetRotation: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
pRotation: ?*f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
pRotation: ?*f64,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetRenderMode: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
RenderMode: WICRawRenderMode,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
RenderMode: WICRawRenderMode,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetRenderMode: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
pRenderMode: ?*WICRawRenderMode,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
pRenderMode: ?*WICRawRenderMode,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetNotificationCallback: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDevelopRaw,
pCallback: ?*IWICDevelopRawNotificationCallback,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDevelopRaw,
pCallback: ?*IWICDevelopRawNotificationCallback,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IWICBitmapFrameDecode.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_QueryRawCapabilitiesInfo(self: *const T, pInfo: ?*WICRawCapabilitiesInfo) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).QueryRawCapabilitiesInfo(@as(*const IWICDevelopRaw, @ptrCast(self)), pInfo);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_LoadParameterSet(self: *const T, ParameterSet: WICRawParameterSet) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).LoadParameterSet(@as(*const IWICDevelopRaw, @ptrCast(self)), ParameterSet);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_GetCurrentParameterSet(self: *const T, ppCurrentParameterSet: ?*?*IPropertyBag2) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).GetCurrentParameterSet(@as(*const IWICDevelopRaw, @ptrCast(self)), ppCurrentParameterSet);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_SetExposureCompensation(self: *const T, ev: f64) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).SetExposureCompensation(@as(*const IWICDevelopRaw, @ptrCast(self)), ev);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_GetExposureCompensation(self: *const T, pEV: ?*f64) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).GetExposureCompensation(@as(*const IWICDevelopRaw, @ptrCast(self)), pEV);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_SetWhitePointRGB(self: *const T, Red: u32, Green: u32, Blue: u32) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).SetWhitePointRGB(@as(*const IWICDevelopRaw, @ptrCast(self)), Red, Green, Blue);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_GetWhitePointRGB(self: *const T, pRed: ?*u32, pGreen: ?*u32, pBlue: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).GetWhitePointRGB(@as(*const IWICDevelopRaw, @ptrCast(self)), pRed, pGreen, pBlue);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_SetNamedWhitePoint(self: *const T, WhitePoint: WICNamedWhitePoint) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).SetNamedWhitePoint(@as(*const IWICDevelopRaw, @ptrCast(self)), WhitePoint);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_GetNamedWhitePoint(self: *const T, pWhitePoint: ?*WICNamedWhitePoint) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).GetNamedWhitePoint(@as(*const IWICDevelopRaw, @ptrCast(self)), pWhitePoint);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_SetWhitePointKelvin(self: *const T, WhitePointKelvin: u32) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).SetWhitePointKelvin(@as(*const IWICDevelopRaw, @ptrCast(self)), WhitePointKelvin);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_GetWhitePointKelvin(self: *const T, pWhitePointKelvin: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).GetWhitePointKelvin(@as(*const IWICDevelopRaw, @ptrCast(self)), pWhitePointKelvin);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_GetKelvinRangeInfo(self: *const T, pMinKelvinTemp: ?*u32, pMaxKelvinTemp: ?*u32, pKelvinTempStepValue: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).GetKelvinRangeInfo(@as(*const IWICDevelopRaw, @ptrCast(self)), pMinKelvinTemp, pMaxKelvinTemp, pKelvinTempStepValue);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_SetContrast(self: *const T, Contrast: f64) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).SetContrast(@as(*const IWICDevelopRaw, @ptrCast(self)), Contrast);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_GetContrast(self: *const T, pContrast: ?*f64) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).GetContrast(@as(*const IWICDevelopRaw, @ptrCast(self)), pContrast);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_SetGamma(self: *const T, Gamma: f64) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).SetGamma(@as(*const IWICDevelopRaw, @ptrCast(self)), Gamma);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_GetGamma(self: *const T, pGamma: ?*f64) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).GetGamma(@as(*const IWICDevelopRaw, @ptrCast(self)), pGamma);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_SetSharpness(self: *const T, Sharpness: f64) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).SetSharpness(@as(*const IWICDevelopRaw, @ptrCast(self)), Sharpness);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_GetSharpness(self: *const T, pSharpness: ?*f64) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).GetSharpness(@as(*const IWICDevelopRaw, @ptrCast(self)), pSharpness);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_SetSaturation(self: *const T, Saturation: f64) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).SetSaturation(@as(*const IWICDevelopRaw, @ptrCast(self)), Saturation);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_GetSaturation(self: *const T, pSaturation: ?*f64) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).GetSaturation(@as(*const IWICDevelopRaw, @ptrCast(self)), pSaturation);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_SetTint(self: *const T, Tint: f64) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).SetTint(@as(*const IWICDevelopRaw, @ptrCast(self)), Tint);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_GetTint(self: *const T, pTint: ?*f64) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).GetTint(@as(*const IWICDevelopRaw, @ptrCast(self)), pTint);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_SetNoiseReduction(self: *const T, NoiseReduction: f64) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).SetNoiseReduction(@as(*const IWICDevelopRaw, @ptrCast(self)), NoiseReduction);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_GetNoiseReduction(self: *const T, pNoiseReduction: ?*f64) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).GetNoiseReduction(@as(*const IWICDevelopRaw, @ptrCast(self)), pNoiseReduction);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_SetDestinationColorContext(self: *const T, pColorContext: ?*IWICColorContext) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).SetDestinationColorContext(@as(*const IWICDevelopRaw, @ptrCast(self)), pColorContext);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_SetToneCurve(self: *const T, cbToneCurveSize: u32, pToneCurve: ?*const WICRawToneCurve) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).SetToneCurve(@as(*const IWICDevelopRaw, @ptrCast(self)), cbToneCurveSize, pToneCurve);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_GetToneCurve(self: *const T, cbToneCurveBufferSize: u32, pToneCurve: ?*WICRawToneCurve, pcbActualToneCurveBufferSize: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).GetToneCurve(@as(*const IWICDevelopRaw, @ptrCast(self)), cbToneCurveBufferSize, pToneCurve, pcbActualToneCurveBufferSize);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_SetRotation(self: *const T, Rotation: f64) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).SetRotation(@as(*const IWICDevelopRaw, @ptrCast(self)), Rotation);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_GetRotation(self: *const T, pRotation: ?*f64) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).GetRotation(@as(*const IWICDevelopRaw, @ptrCast(self)), pRotation);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_SetRenderMode(self: *const T, RenderMode: WICRawRenderMode) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).SetRenderMode(@as(*const IWICDevelopRaw, @ptrCast(self)), RenderMode);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_GetRenderMode(self: *const T, pRenderMode: ?*WICRawRenderMode) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).GetRenderMode(@as(*const IWICDevelopRaw, @ptrCast(self)), pRenderMode);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDevelopRaw_SetNotificationCallback(self: *const T, pCallback: ?*IWICDevelopRawNotificationCallback) callconv(.Inline) HRESULT {
return @as(*const IWICDevelopRaw.VTable, @ptrCast(self.vtable)).SetNotificationCallback(@as(*const IWICDevelopRaw, @ptrCast(self)), pCallback);
}
};}
pub usingnamespace MethodMixin(@This());
};
pub const WICDdsDimension = enum(i32) {
dsTexture1D = 0,
dsTexture2D = 1,
dsTexture3D = 2,
dsTextureCube = 3,
DSTEXTURE_FORCE_DWORD = 2147483647,
};
pub const WICDdsTexture1D = WICDdsDimension.dsTexture1D;
pub const WICDdsTexture2D = WICDdsDimension.dsTexture2D;
pub const WICDdsTexture3D = WICDdsDimension.dsTexture3D;
pub const WICDdsTextureCube = WICDdsDimension.dsTextureCube;
pub const WICDDSTEXTURE_FORCE_DWORD = WICDdsDimension.DSTEXTURE_FORCE_DWORD;
pub const WICDdsAlphaMode = enum(i32) {
dsAlphaModeUnknown = 0,
dsAlphaModeStraight = 1,
dsAlphaModePremultiplied = 2,
dsAlphaModeOpaque = 3,
dsAlphaModeCustom = 4,
DSALPHAMODE_FORCE_DWORD = 2147483647,
};
pub const WICDdsAlphaModeUnknown = WICDdsAlphaMode.dsAlphaModeUnknown;
pub const WICDdsAlphaModeStraight = WICDdsAlphaMode.dsAlphaModeStraight;
pub const WICDdsAlphaModePremultiplied = WICDdsAlphaMode.dsAlphaModePremultiplied;
pub const WICDdsAlphaModeOpaque = WICDdsAlphaMode.dsAlphaModeOpaque;
pub const WICDdsAlphaModeCustom = WICDdsAlphaMode.dsAlphaModeCustom;
pub const WICDDSALPHAMODE_FORCE_DWORD = WICDdsAlphaMode.DSALPHAMODE_FORCE_DWORD;
pub const WICDdsParameters = extern struct {
Width: u32,
Height: u32,
Depth: u32,
MipLevels: u32,
ArraySize: u32,
DxgiFormat: DXGI_FORMAT,
Dimension: WICDdsDimension,
AlphaMode: WICDdsAlphaMode,
};
// TODO: this type is limited to platform 'windows8.1'
const IID_IWICDdsDecoder_Value = Guid.initString("409cd537-8532-40cb-9774-e2feb2df4e9c");
pub const IID_IWICDdsDecoder = &IID_IWICDdsDecoder_Value;
pub const IWICDdsDecoder = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
GetParameters: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDdsDecoder,
pParameters: ?*WICDdsParameters,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDdsDecoder,
pParameters: ?*WICDdsParameters,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetFrame: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDdsDecoder,
arrayIndex: u32,
mipLevel: u32,
sliceIndex: u32,
ppIBitmapFrame: ?*?*IWICBitmapFrameDecode,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDdsDecoder,
arrayIndex: u32,
mipLevel: u32,
sliceIndex: u32,
ppIBitmapFrame: ?*?*IWICBitmapFrameDecode,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDdsDecoder_GetParameters(self: *const T, pParameters: ?*WICDdsParameters) callconv(.Inline) HRESULT {
return @as(*const IWICDdsDecoder.VTable, @ptrCast(self.vtable)).GetParameters(@as(*const IWICDdsDecoder, @ptrCast(self)), pParameters);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDdsDecoder_GetFrame(self: *const T, arrayIndex: u32, mipLevel: u32, sliceIndex: u32, ppIBitmapFrame: ?*?*IWICBitmapFrameDecode) callconv(.Inline) HRESULT {
return @as(*const IWICDdsDecoder.VTable, @ptrCast(self.vtable)).GetFrame(@as(*const IWICDdsDecoder, @ptrCast(self)), arrayIndex, mipLevel, sliceIndex, ppIBitmapFrame);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows8.1'
const IID_IWICDdsEncoder_Value = Guid.initString("5cacdb4c-407e-41b3-b936-d0f010cd6732");
pub const IID_IWICDdsEncoder = &IID_IWICDdsEncoder_Value;
pub const IWICDdsEncoder = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
SetParameters: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDdsEncoder,
pParameters: ?*WICDdsParameters,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDdsEncoder,
pParameters: ?*WICDdsParameters,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetParameters: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDdsEncoder,
pParameters: ?*WICDdsParameters,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDdsEncoder,
pParameters: ?*WICDdsParameters,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateNewFrame: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDdsEncoder,
ppIFrameEncode: ?*?*IWICBitmapFrameEncode,
pArrayIndex: ?*u32,
pMipLevel: ?*u32,
pSliceIndex: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDdsEncoder,
ppIFrameEncode: ?*?*IWICBitmapFrameEncode,
pArrayIndex: ?*u32,
pMipLevel: ?*u32,
pSliceIndex: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDdsEncoder_SetParameters(self: *const T, pParameters: ?*WICDdsParameters) callconv(.Inline) HRESULT {
return @as(*const IWICDdsEncoder.VTable, @ptrCast(self.vtable)).SetParameters(@as(*const IWICDdsEncoder, @ptrCast(self)), pParameters);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDdsEncoder_GetParameters(self: *const T, pParameters: ?*WICDdsParameters) callconv(.Inline) HRESULT {
return @as(*const IWICDdsEncoder.VTable, @ptrCast(self.vtable)).GetParameters(@as(*const IWICDdsEncoder, @ptrCast(self)), pParameters);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDdsEncoder_CreateNewFrame(self: *const T, ppIFrameEncode: ?*?*IWICBitmapFrameEncode, pArrayIndex: ?*u32, pMipLevel: ?*u32, pSliceIndex: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICDdsEncoder.VTable, @ptrCast(self.vtable)).CreateNewFrame(@as(*const IWICDdsEncoder, @ptrCast(self)), ppIFrameEncode, pArrayIndex, pMipLevel, pSliceIndex);
}
};}
pub usingnamespace MethodMixin(@This());
};
pub const WICDdsFormatInfo = extern struct {
DxgiFormat: DXGI_FORMAT,
BytesPerBlock: u32,
BlockWidth: u32,
BlockHeight: u32,
};
// TODO: this type is limited to platform 'windows8.1'
const IID_IWICDdsFrameDecode_Value = Guid.initString("3d4c0c61-18a4-41e4-bd80-481a4fc9f464");
pub const IID_IWICDdsFrameDecode = &IID_IWICDdsFrameDecode_Value;
pub const IWICDdsFrameDecode = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
GetSizeInBlocks: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDdsFrameDecode,
pWidthInBlocks: ?*u32,
pHeightInBlocks: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDdsFrameDecode,
pWidthInBlocks: ?*u32,
pHeightInBlocks: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetFormatInfo: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDdsFrameDecode,
pFormatInfo: ?*WICDdsFormatInfo,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDdsFrameDecode,
pFormatInfo: ?*WICDdsFormatInfo,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CopyBlocks: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICDdsFrameDecode,
prcBoundsInBlocks: ?*const WICRect,
cbStride: u32,
cbBufferSize: u32,
pbBuffer: [*:0]u8,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICDdsFrameDecode,
prcBoundsInBlocks: ?*const WICRect,
cbStride: u32,
cbBufferSize: u32,
pbBuffer: [*:0]u8,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDdsFrameDecode_GetSizeInBlocks(self: *const T, pWidthInBlocks: ?*u32, pHeightInBlocks: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICDdsFrameDecode.VTable, @ptrCast(self.vtable)).GetSizeInBlocks(@as(*const IWICDdsFrameDecode, @ptrCast(self)), pWidthInBlocks, pHeightInBlocks);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDdsFrameDecode_GetFormatInfo(self: *const T, pFormatInfo: ?*WICDdsFormatInfo) callconv(.Inline) HRESULT {
return @as(*const IWICDdsFrameDecode.VTable, @ptrCast(self.vtable)).GetFormatInfo(@as(*const IWICDdsFrameDecode, @ptrCast(self)), pFormatInfo);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICDdsFrameDecode_CopyBlocks(self: *const T, prcBoundsInBlocks: ?*const WICRect, cbStride: u32, cbBufferSize: u32, pbBuffer: [*:0]u8) callconv(.Inline) HRESULT {
return @as(*const IWICDdsFrameDecode.VTable, @ptrCast(self.vtable)).CopyBlocks(@as(*const IWICDdsFrameDecode, @ptrCast(self)), prcBoundsInBlocks, cbStride, cbBufferSize, pbBuffer);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows10.0.10240'
const IID_IWICJpegFrameDecode_Value = Guid.initString("8939f66e-c46a-4c21-a9d1-98b327ce1679");
pub const IID_IWICJpegFrameDecode = &IID_IWICJpegFrameDecode_Value;
pub const IWICJpegFrameDecode = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
DoesSupportIndexing: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICJpegFrameDecode,
pfIndexingSupported: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICJpegFrameDecode,
pfIndexingSupported: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetIndexing: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICJpegFrameDecode,
options: WICJpegIndexingOptions,
horizontalIntervalSize: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICJpegFrameDecode,
options: WICJpegIndexingOptions,
horizontalIntervalSize: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
ClearIndexing: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICJpegFrameDecode,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICJpegFrameDecode,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetAcHuffmanTable: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICJpegFrameDecode,
scanIndex: u32,
tableIndex: u32,
pAcHuffmanTable: ?*DXGI_JPEG_AC_HUFFMAN_TABLE,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICJpegFrameDecode,
scanIndex: u32,
tableIndex: u32,
pAcHuffmanTable: ?*DXGI_JPEG_AC_HUFFMAN_TABLE,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetDcHuffmanTable: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICJpegFrameDecode,
scanIndex: u32,
tableIndex: u32,
pDcHuffmanTable: ?*DXGI_JPEG_DC_HUFFMAN_TABLE,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICJpegFrameDecode,
scanIndex: u32,
tableIndex: u32,
pDcHuffmanTable: ?*DXGI_JPEG_DC_HUFFMAN_TABLE,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetQuantizationTable: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICJpegFrameDecode,
scanIndex: u32,
tableIndex: u32,
pQuantizationTable: ?*DXGI_JPEG_QUANTIZATION_TABLE,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICJpegFrameDecode,
scanIndex: u32,
tableIndex: u32,
pQuantizationTable: ?*DXGI_JPEG_QUANTIZATION_TABLE,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetFrameHeader: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICJpegFrameDecode,
pFrameHeader: ?*WICJpegFrameHeader,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICJpegFrameDecode,
pFrameHeader: ?*WICJpegFrameHeader,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetScanHeader: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICJpegFrameDecode,
scanIndex: u32,
pScanHeader: ?*WICJpegScanHeader,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICJpegFrameDecode,
scanIndex: u32,
pScanHeader: ?*WICJpegScanHeader,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CopyScan: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICJpegFrameDecode,
scanIndex: u32,
scanOffset: u32,
cbScanData: u32,
pbScanData: [*:0]u8,
pcbScanDataActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICJpegFrameDecode,
scanIndex: u32,
scanOffset: u32,
cbScanData: u32,
pbScanData: [*:0]u8,
pcbScanDataActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CopyMinimalStream: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICJpegFrameDecode,
streamOffset: u32,
cbStreamData: u32,
pbStreamData: [*:0]u8,
pcbStreamDataActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICJpegFrameDecode,
streamOffset: u32,
cbStreamData: u32,
pbStreamData: [*:0]u8,
pcbStreamDataActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICJpegFrameDecode_DoesSupportIndexing(self: *const T, pfIndexingSupported: ?*BOOL) callconv(.Inline) HRESULT {
return @as(*const IWICJpegFrameDecode.VTable, @ptrCast(self.vtable)).DoesSupportIndexing(@as(*const IWICJpegFrameDecode, @ptrCast(self)), pfIndexingSupported);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICJpegFrameDecode_SetIndexing(self: *const T, options: WICJpegIndexingOptions, horizontalIntervalSize: u32) callconv(.Inline) HRESULT {
return @as(*const IWICJpegFrameDecode.VTable, @ptrCast(self.vtable)).SetIndexing(@as(*const IWICJpegFrameDecode, @ptrCast(self)), options, horizontalIntervalSize);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICJpegFrameDecode_ClearIndexing(self: *const T) callconv(.Inline) HRESULT {
return @as(*const IWICJpegFrameDecode.VTable, @ptrCast(self.vtable)).ClearIndexing(@as(*const IWICJpegFrameDecode, @ptrCast(self)));
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICJpegFrameDecode_GetAcHuffmanTable(self: *const T, scanIndex: u32, tableIndex: u32, pAcHuffmanTable: ?*DXGI_JPEG_AC_HUFFMAN_TABLE) callconv(.Inline) HRESULT {
return @as(*const IWICJpegFrameDecode.VTable, @ptrCast(self.vtable)).GetAcHuffmanTable(@as(*const IWICJpegFrameDecode, @ptrCast(self)), scanIndex, tableIndex, pAcHuffmanTable);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICJpegFrameDecode_GetDcHuffmanTable(self: *const T, scanIndex: u32, tableIndex: u32, pDcHuffmanTable: ?*DXGI_JPEG_DC_HUFFMAN_TABLE) callconv(.Inline) HRESULT {
return @as(*const IWICJpegFrameDecode.VTable, @ptrCast(self.vtable)).GetDcHuffmanTable(@as(*const IWICJpegFrameDecode, @ptrCast(self)), scanIndex, tableIndex, pDcHuffmanTable);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICJpegFrameDecode_GetQuantizationTable(self: *const T, scanIndex: u32, tableIndex: u32, pQuantizationTable: ?*DXGI_JPEG_QUANTIZATION_TABLE) callconv(.Inline) HRESULT {
return @as(*const IWICJpegFrameDecode.VTable, @ptrCast(self.vtable)).GetQuantizationTable(@as(*const IWICJpegFrameDecode, @ptrCast(self)), scanIndex, tableIndex, pQuantizationTable);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICJpegFrameDecode_GetFrameHeader(self: *const T, pFrameHeader: ?*WICJpegFrameHeader) callconv(.Inline) HRESULT {
return @as(*const IWICJpegFrameDecode.VTable, @ptrCast(self.vtable)).GetFrameHeader(@as(*const IWICJpegFrameDecode, @ptrCast(self)), pFrameHeader);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICJpegFrameDecode_GetScanHeader(self: *const T, scanIndex: u32, pScanHeader: ?*WICJpegScanHeader) callconv(.Inline) HRESULT {
return @as(*const IWICJpegFrameDecode.VTable, @ptrCast(self.vtable)).GetScanHeader(@as(*const IWICJpegFrameDecode, @ptrCast(self)), scanIndex, pScanHeader);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICJpegFrameDecode_CopyScan(self: *const T, scanIndex: u32, scanOffset: u32, cbScanData: u32, pbScanData: [*:0]u8, pcbScanDataActual: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICJpegFrameDecode.VTable, @ptrCast(self.vtable)).CopyScan(@as(*const IWICJpegFrameDecode, @ptrCast(self)), scanIndex, scanOffset, cbScanData, pbScanData, pcbScanDataActual);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICJpegFrameDecode_CopyMinimalStream(self: *const T, streamOffset: u32, cbStreamData: u32, pbStreamData: [*:0]u8, pcbStreamDataActual: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICJpegFrameDecode.VTable, @ptrCast(self.vtable)).CopyMinimalStream(@as(*const IWICJpegFrameDecode, @ptrCast(self)), streamOffset, cbStreamData, pbStreamData, pcbStreamDataActual);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows10.0.10240'
const IID_IWICJpegFrameEncode_Value = Guid.initString("2f0c601f-d2c6-468c-abfa-49495d983ed1");
pub const IID_IWICJpegFrameEncode = &IID_IWICJpegFrameEncode_Value;
pub const IWICJpegFrameEncode = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
GetAcHuffmanTable: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICJpegFrameEncode,
scanIndex: u32,
tableIndex: u32,
pAcHuffmanTable: ?*DXGI_JPEG_AC_HUFFMAN_TABLE,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICJpegFrameEncode,
scanIndex: u32,
tableIndex: u32,
pAcHuffmanTable: ?*DXGI_JPEG_AC_HUFFMAN_TABLE,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetDcHuffmanTable: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICJpegFrameEncode,
scanIndex: u32,
tableIndex: u32,
pDcHuffmanTable: ?*DXGI_JPEG_DC_HUFFMAN_TABLE,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICJpegFrameEncode,
scanIndex: u32,
tableIndex: u32,
pDcHuffmanTable: ?*DXGI_JPEG_DC_HUFFMAN_TABLE,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetQuantizationTable: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICJpegFrameEncode,
scanIndex: u32,
tableIndex: u32,
pQuantizationTable: ?*DXGI_JPEG_QUANTIZATION_TABLE,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICJpegFrameEncode,
scanIndex: u32,
tableIndex: u32,
pQuantizationTable: ?*DXGI_JPEG_QUANTIZATION_TABLE,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
WriteScan: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICJpegFrameEncode,
cbScanData: u32,
pbScanData: [*:0]const u8,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICJpegFrameEncode,
cbScanData: u32,
pbScanData: [*:0]const u8,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICJpegFrameEncode_GetAcHuffmanTable(self: *const T, scanIndex: u32, tableIndex: u32, pAcHuffmanTable: ?*DXGI_JPEG_AC_HUFFMAN_TABLE) callconv(.Inline) HRESULT {
return @as(*const IWICJpegFrameEncode.VTable, @ptrCast(self.vtable)).GetAcHuffmanTable(@as(*const IWICJpegFrameEncode, @ptrCast(self)), scanIndex, tableIndex, pAcHuffmanTable);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICJpegFrameEncode_GetDcHuffmanTable(self: *const T, scanIndex: u32, tableIndex: u32, pDcHuffmanTable: ?*DXGI_JPEG_DC_HUFFMAN_TABLE) callconv(.Inline) HRESULT {
return @as(*const IWICJpegFrameEncode.VTable, @ptrCast(self.vtable)).GetDcHuffmanTable(@as(*const IWICJpegFrameEncode, @ptrCast(self)), scanIndex, tableIndex, pDcHuffmanTable);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICJpegFrameEncode_GetQuantizationTable(self: *const T, scanIndex: u32, tableIndex: u32, pQuantizationTable: ?*DXGI_JPEG_QUANTIZATION_TABLE) callconv(.Inline) HRESULT {
return @as(*const IWICJpegFrameEncode.VTable, @ptrCast(self.vtable)).GetQuantizationTable(@as(*const IWICJpegFrameEncode, @ptrCast(self)), scanIndex, tableIndex, pQuantizationTable);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICJpegFrameEncode_WriteScan(self: *const T, cbScanData: u32, pbScanData: [*:0]const u8) callconv(.Inline) HRESULT {
return @as(*const IWICJpegFrameEncode.VTable, @ptrCast(self.vtable)).WriteScan(@as(*const IWICJpegFrameEncode, @ptrCast(self)), cbScanData, pbScanData);
}
};}
pub usingnamespace MethodMixin(@This());
};
pub const WICMetadataCreationOptions = enum(i32) {
Default = 0,
// AllowUnknown = 0, this enum value conflicts with Default
FailUnknown = 65536,
Mask = -65536,
};
pub const WICMetadataCreationDefault = WICMetadataCreationOptions.Default;
pub const WICMetadataCreationAllowUnknown = WICMetadataCreationOptions.Default;
pub const WICMetadataCreationFailUnknown = WICMetadataCreationOptions.FailUnknown;
pub const WICMetadataCreationMask = WICMetadataCreationOptions.Mask;
pub const WICPersistOptions = enum(i32) {
Default = 0,
// LittleEndian = 0, this enum value conflicts with Default
BigEndian = 1,
StrictFormat = 2,
NoCacheStream = 4,
PreferUTF8 = 8,
Mask = 65535,
};
pub const WICPersistOptionDefault = WICPersistOptions.Default;
pub const WICPersistOptionLittleEndian = WICPersistOptions.Default;
pub const WICPersistOptionBigEndian = WICPersistOptions.BigEndian;
pub const WICPersistOptionStrictFormat = WICPersistOptions.StrictFormat;
pub const WICPersistOptionNoCacheStream = WICPersistOptions.NoCacheStream;
pub const WICPersistOptionPreferUTF8 = WICPersistOptions.PreferUTF8;
pub const WICPersistOptionMask = WICPersistOptions.Mask;
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICMetadataBlockReader_Value = Guid.initString("feaa2a8d-b3f3-43e4-b25c-d1de990a1ae1");
pub const IID_IWICMetadataBlockReader = &IID_IWICMetadataBlockReader_Value;
pub const IWICMetadataBlockReader = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
GetContainerFormat: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataBlockReader,
pguidContainerFormat: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataBlockReader,
pguidContainerFormat: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetCount: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataBlockReader,
pcCount: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataBlockReader,
pcCount: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetReaderByIndex: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataBlockReader,
nIndex: u32,
ppIMetadataReader: ?*?*IWICMetadataReader,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataBlockReader,
nIndex: u32,
ppIMetadataReader: ?*?*IWICMetadataReader,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetEnumerator: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataBlockReader,
ppIEnumMetadata: ?*?*IEnumUnknown,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataBlockReader,
ppIEnumMetadata: ?*?*IEnumUnknown,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataBlockReader_GetContainerFormat(self: *const T, pguidContainerFormat: ?*Guid) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataBlockReader.VTable, @ptrCast(self.vtable)).GetContainerFormat(@as(*const IWICMetadataBlockReader, @ptrCast(self)), pguidContainerFormat);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataBlockReader_GetCount(self: *const T, pcCount: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataBlockReader.VTable, @ptrCast(self.vtable)).GetCount(@as(*const IWICMetadataBlockReader, @ptrCast(self)), pcCount);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataBlockReader_GetReaderByIndex(self: *const T, nIndex: u32, ppIMetadataReader: ?*?*IWICMetadataReader) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataBlockReader.VTable, @ptrCast(self.vtable)).GetReaderByIndex(@as(*const IWICMetadataBlockReader, @ptrCast(self)), nIndex, ppIMetadataReader);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataBlockReader_GetEnumerator(self: *const T, ppIEnumMetadata: ?*?*IEnumUnknown) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataBlockReader.VTable, @ptrCast(self.vtable)).GetEnumerator(@as(*const IWICMetadataBlockReader, @ptrCast(self)), ppIEnumMetadata);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICMetadataBlockWriter_Value = Guid.initString("08fb9676-b444-41e8-8dbe-6a53a542bff1");
pub const IID_IWICMetadataBlockWriter = &IID_IWICMetadataBlockWriter_Value;
pub const IWICMetadataBlockWriter = extern struct {
pub const VTable = extern struct {
base: IWICMetadataBlockReader.VTable,
InitializeFromBlockReader: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataBlockWriter,
pIMDBlockReader: ?*IWICMetadataBlockReader,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataBlockWriter,
pIMDBlockReader: ?*IWICMetadataBlockReader,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetWriterByIndex: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataBlockWriter,
nIndex: u32,
ppIMetadataWriter: ?*?*IWICMetadataWriter,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataBlockWriter,
nIndex: u32,
ppIMetadataWriter: ?*?*IWICMetadataWriter,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
AddWriter: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataBlockWriter,
pIMetadataWriter: ?*IWICMetadataWriter,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataBlockWriter,
pIMetadataWriter: ?*IWICMetadataWriter,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetWriterByIndex: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataBlockWriter,
nIndex: u32,
pIMetadataWriter: ?*IWICMetadataWriter,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataBlockWriter,
nIndex: u32,
pIMetadataWriter: ?*IWICMetadataWriter,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
RemoveWriterByIndex: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataBlockWriter,
nIndex: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataBlockWriter,
nIndex: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IWICMetadataBlockReader.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataBlockWriter_InitializeFromBlockReader(self: *const T, pIMDBlockReader: ?*IWICMetadataBlockReader) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataBlockWriter.VTable, @ptrCast(self.vtable)).InitializeFromBlockReader(@as(*const IWICMetadataBlockWriter, @ptrCast(self)), pIMDBlockReader);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataBlockWriter_GetWriterByIndex(self: *const T, nIndex: u32, ppIMetadataWriter: ?*?*IWICMetadataWriter) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataBlockWriter.VTable, @ptrCast(self.vtable)).GetWriterByIndex(@as(*const IWICMetadataBlockWriter, @ptrCast(self)), nIndex, ppIMetadataWriter);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataBlockWriter_AddWriter(self: *const T, pIMetadataWriter: ?*IWICMetadataWriter) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataBlockWriter.VTable, @ptrCast(self.vtable)).AddWriter(@as(*const IWICMetadataBlockWriter, @ptrCast(self)), pIMetadataWriter);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataBlockWriter_SetWriterByIndex(self: *const T, nIndex: u32, pIMetadataWriter: ?*IWICMetadataWriter) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataBlockWriter.VTable, @ptrCast(self.vtable)).SetWriterByIndex(@as(*const IWICMetadataBlockWriter, @ptrCast(self)), nIndex, pIMetadataWriter);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataBlockWriter_RemoveWriterByIndex(self: *const T, nIndex: u32) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataBlockWriter.VTable, @ptrCast(self.vtable)).RemoveWriterByIndex(@as(*const IWICMetadataBlockWriter, @ptrCast(self)), nIndex);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICMetadataReader_Value = Guid.initString("9204fe99-d8fc-4fd5-a001-9536b067a899");
pub const IID_IWICMetadataReader = &IID_IWICMetadataReader_Value;
pub const IWICMetadataReader = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
GetMetadataFormat: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataReader,
pguidMetadataFormat: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataReader,
pguidMetadataFormat: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetMetadataHandlerInfo: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataReader,
ppIHandler: ?*?*IWICMetadataHandlerInfo,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataReader,
ppIHandler: ?*?*IWICMetadataHandlerInfo,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetCount: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataReader,
pcCount: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataReader,
pcCount: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetValueByIndex: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataReader,
nIndex: u32,
pvarSchema: ?*PROPVARIANT,
pvarId: ?*PROPVARIANT,
pvarValue: ?*PROPVARIANT,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataReader,
nIndex: u32,
pvarSchema: ?*PROPVARIANT,
pvarId: ?*PROPVARIANT,
pvarValue: ?*PROPVARIANT,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetValue: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataReader,
pvarSchema: ?*const PROPVARIANT,
pvarId: ?*const PROPVARIANT,
pvarValue: ?*PROPVARIANT,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataReader,
pvarSchema: ?*const PROPVARIANT,
pvarId: ?*const PROPVARIANT,
pvarValue: ?*PROPVARIANT,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetEnumerator: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataReader,
ppIEnumMetadata: ?*?*IWICEnumMetadataItem,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataReader,
ppIEnumMetadata: ?*?*IWICEnumMetadataItem,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataReader_GetMetadataFormat(self: *const T, pguidMetadataFormat: ?*Guid) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataReader.VTable, @ptrCast(self.vtable)).GetMetadataFormat(@as(*const IWICMetadataReader, @ptrCast(self)), pguidMetadataFormat);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataReader_GetMetadataHandlerInfo(self: *const T, ppIHandler: ?*?*IWICMetadataHandlerInfo) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataReader.VTable, @ptrCast(self.vtable)).GetMetadataHandlerInfo(@as(*const IWICMetadataReader, @ptrCast(self)), ppIHandler);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataReader_GetCount(self: *const T, pcCount: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataReader.VTable, @ptrCast(self.vtable)).GetCount(@as(*const IWICMetadataReader, @ptrCast(self)), pcCount);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataReader_GetValueByIndex(self: *const T, nIndex: u32, pvarSchema: ?*PROPVARIANT, pvarId: ?*PROPVARIANT, pvarValue: ?*PROPVARIANT) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataReader.VTable, @ptrCast(self.vtable)).GetValueByIndex(@as(*const IWICMetadataReader, @ptrCast(self)), nIndex, pvarSchema, pvarId, pvarValue);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataReader_GetValue(self: *const T, pvarSchema: ?*const PROPVARIANT, pvarId: ?*const PROPVARIANT, pvarValue: ?*PROPVARIANT) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataReader.VTable, @ptrCast(self.vtable)).GetValue(@as(*const IWICMetadataReader, @ptrCast(self)), pvarSchema, pvarId, pvarValue);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataReader_GetEnumerator(self: *const T, ppIEnumMetadata: ?*?*IWICEnumMetadataItem) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataReader.VTable, @ptrCast(self.vtable)).GetEnumerator(@as(*const IWICMetadataReader, @ptrCast(self)), ppIEnumMetadata);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICMetadataWriter_Value = Guid.initString("f7836e16-3be0-470b-86bb-160d0aecd7de");
pub const IID_IWICMetadataWriter = &IID_IWICMetadataWriter_Value;
pub const IWICMetadataWriter = extern struct {
pub const VTable = extern struct {
base: IWICMetadataReader.VTable,
SetValue: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataWriter,
pvarSchema: ?*const PROPVARIANT,
pvarId: ?*const PROPVARIANT,
pvarValue: ?*const PROPVARIANT,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataWriter,
pvarSchema: ?*const PROPVARIANT,
pvarId: ?*const PROPVARIANT,
pvarValue: ?*const PROPVARIANT,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetValueByIndex: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataWriter,
nIndex: u32,
pvarSchema: ?*const PROPVARIANT,
pvarId: ?*const PROPVARIANT,
pvarValue: ?*const PROPVARIANT,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataWriter,
nIndex: u32,
pvarSchema: ?*const PROPVARIANT,
pvarId: ?*const PROPVARIANT,
pvarValue: ?*const PROPVARIANT,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
RemoveValue: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataWriter,
pvarSchema: ?*const PROPVARIANT,
pvarId: ?*const PROPVARIANT,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataWriter,
pvarSchema: ?*const PROPVARIANT,
pvarId: ?*const PROPVARIANT,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
RemoveValueByIndex: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataWriter,
nIndex: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataWriter,
nIndex: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IWICMetadataReader.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataWriter_SetValue(self: *const T, pvarSchema: ?*const PROPVARIANT, pvarId: ?*const PROPVARIANT, pvarValue: ?*const PROPVARIANT) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataWriter.VTable, @ptrCast(self.vtable)).SetValue(@as(*const IWICMetadataWriter, @ptrCast(self)), pvarSchema, pvarId, pvarValue);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataWriter_SetValueByIndex(self: *const T, nIndex: u32, pvarSchema: ?*const PROPVARIANT, pvarId: ?*const PROPVARIANT, pvarValue: ?*const PROPVARIANT) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataWriter.VTable, @ptrCast(self.vtable)).SetValueByIndex(@as(*const IWICMetadataWriter, @ptrCast(self)), nIndex, pvarSchema, pvarId, pvarValue);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataWriter_RemoveValue(self: *const T, pvarSchema: ?*const PROPVARIANT, pvarId: ?*const PROPVARIANT) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataWriter.VTable, @ptrCast(self.vtable)).RemoveValue(@as(*const IWICMetadataWriter, @ptrCast(self)), pvarSchema, pvarId);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataWriter_RemoveValueByIndex(self: *const T, nIndex: u32) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataWriter.VTable, @ptrCast(self.vtable)).RemoveValueByIndex(@as(*const IWICMetadataWriter, @ptrCast(self)), nIndex);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICStreamProvider_Value = Guid.initString("449494bc-b468-4927-96d7-ba90d31ab505");
pub const IID_IWICStreamProvider = &IID_IWICStreamProvider_Value;
pub const IWICStreamProvider = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
GetStream: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICStreamProvider,
ppIStream: ?*?*IStream,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICStreamProvider,
ppIStream: ?*?*IStream,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetPersistOptions: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICStreamProvider,
pdwPersistOptions: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICStreamProvider,
pdwPersistOptions: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetPreferredVendorGUID: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICStreamProvider,
pguidPreferredVendor: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICStreamProvider,
pguidPreferredVendor: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
RefreshStream: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICStreamProvider,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICStreamProvider,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICStreamProvider_GetStream(self: *const T, ppIStream: ?*?*IStream) callconv(.Inline) HRESULT {
return @as(*const IWICStreamProvider.VTable, @ptrCast(self.vtable)).GetStream(@as(*const IWICStreamProvider, @ptrCast(self)), ppIStream);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICStreamProvider_GetPersistOptions(self: *const T, pdwPersistOptions: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICStreamProvider.VTable, @ptrCast(self.vtable)).GetPersistOptions(@as(*const IWICStreamProvider, @ptrCast(self)), pdwPersistOptions);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICStreamProvider_GetPreferredVendorGUID(self: *const T, pguidPreferredVendor: ?*Guid) callconv(.Inline) HRESULT {
return @as(*const IWICStreamProvider.VTable, @ptrCast(self.vtable)).GetPreferredVendorGUID(@as(*const IWICStreamProvider, @ptrCast(self)), pguidPreferredVendor);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICStreamProvider_RefreshStream(self: *const T) callconv(.Inline) HRESULT {
return @as(*const IWICStreamProvider.VTable, @ptrCast(self.vtable)).RefreshStream(@as(*const IWICStreamProvider, @ptrCast(self)));
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICPersistStream_Value = Guid.initString("00675040-6908-45f8-86a3-49c7dfd6d9ad");
pub const IID_IWICPersistStream = &IID_IWICPersistStream_Value;
pub const IWICPersistStream = extern struct {
pub const VTable = extern struct {
base: IPersistStream.VTable,
LoadEx: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICPersistStream,
pIStream: ?*IStream,
pguidPreferredVendor: ?*const Guid,
dwPersistOptions: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICPersistStream,
pIStream: ?*IStream,
pguidPreferredVendor: ?*const Guid,
dwPersistOptions: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SaveEx: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICPersistStream,
pIStream: ?*IStream,
dwPersistOptions: u32,
fClearDirty: BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICPersistStream,
pIStream: ?*IStream,
dwPersistOptions: u32,
fClearDirty: BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IPersistStream.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICPersistStream_LoadEx(self: *const T, pIStream: ?*IStream, pguidPreferredVendor: ?*const Guid, dwPersistOptions: u32) callconv(.Inline) HRESULT {
return @as(*const IWICPersistStream.VTable, @ptrCast(self.vtable)).LoadEx(@as(*const IWICPersistStream, @ptrCast(self)), pIStream, pguidPreferredVendor, dwPersistOptions);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICPersistStream_SaveEx(self: *const T, pIStream: ?*IStream, dwPersistOptions: u32, fClearDirty: BOOL) callconv(.Inline) HRESULT {
return @as(*const IWICPersistStream.VTable, @ptrCast(self.vtable)).SaveEx(@as(*const IWICPersistStream, @ptrCast(self)), pIStream, dwPersistOptions, fClearDirty);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICMetadataHandlerInfo_Value = Guid.initString("aba958bf-c672-44d1-8d61-ce6df2e682c2");
pub const IID_IWICMetadataHandlerInfo = &IID_IWICMetadataHandlerInfo_Value;
pub const IWICMetadataHandlerInfo = extern struct {
pub const VTable = extern struct {
base: IWICComponentInfo.VTable,
GetMetadataFormat: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataHandlerInfo,
pguidMetadataFormat: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataHandlerInfo,
pguidMetadataFormat: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetContainerFormats: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataHandlerInfo,
cContainerFormats: u32,
pguidContainerFormats: [*]Guid,
pcchActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataHandlerInfo,
cContainerFormats: u32,
pguidContainerFormats: [*]Guid,
pcchActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetDeviceManufacturer: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataHandlerInfo,
cchDeviceManufacturer: u32,
wzDeviceManufacturer: [*:0]u16,
pcchActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataHandlerInfo,
cchDeviceManufacturer: u32,
wzDeviceManufacturer: [*:0]u16,
pcchActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetDeviceModels: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataHandlerInfo,
cchDeviceModels: u32,
wzDeviceModels: [*:0]u16,
pcchActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataHandlerInfo,
cchDeviceModels: u32,
wzDeviceModels: [*:0]u16,
pcchActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
DoesRequireFullStream: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataHandlerInfo,
pfRequiresFullStream: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataHandlerInfo,
pfRequiresFullStream: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
DoesSupportPadding: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataHandlerInfo,
pfSupportsPadding: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataHandlerInfo,
pfSupportsPadding: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
DoesRequireFixedSize: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataHandlerInfo,
pfFixedSize: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataHandlerInfo,
pfFixedSize: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IWICComponentInfo.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataHandlerInfo_GetMetadataFormat(self: *const T, pguidMetadataFormat: ?*Guid) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataHandlerInfo.VTable, @ptrCast(self.vtable)).GetMetadataFormat(@as(*const IWICMetadataHandlerInfo, @ptrCast(self)), pguidMetadataFormat);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataHandlerInfo_GetContainerFormats(self: *const T, cContainerFormats: u32, pguidContainerFormats: [*]Guid, pcchActual: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataHandlerInfo.VTable, @ptrCast(self.vtable)).GetContainerFormats(@as(*const IWICMetadataHandlerInfo, @ptrCast(self)), cContainerFormats, pguidContainerFormats, pcchActual);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataHandlerInfo_GetDeviceManufacturer(self: *const T, cchDeviceManufacturer: u32, wzDeviceManufacturer: [*:0]u16, pcchActual: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataHandlerInfo.VTable, @ptrCast(self.vtable)).GetDeviceManufacturer(@as(*const IWICMetadataHandlerInfo, @ptrCast(self)), cchDeviceManufacturer, wzDeviceManufacturer, pcchActual);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataHandlerInfo_GetDeviceModels(self: *const T, cchDeviceModels: u32, wzDeviceModels: [*:0]u16, pcchActual: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataHandlerInfo.VTable, @ptrCast(self.vtable)).GetDeviceModels(@as(*const IWICMetadataHandlerInfo, @ptrCast(self)), cchDeviceModels, wzDeviceModels, pcchActual);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataHandlerInfo_DoesRequireFullStream(self: *const T, pfRequiresFullStream: ?*BOOL) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataHandlerInfo.VTable, @ptrCast(self.vtable)).DoesRequireFullStream(@as(*const IWICMetadataHandlerInfo, @ptrCast(self)), pfRequiresFullStream);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataHandlerInfo_DoesSupportPadding(self: *const T, pfSupportsPadding: ?*BOOL) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataHandlerInfo.VTable, @ptrCast(self.vtable)).DoesSupportPadding(@as(*const IWICMetadataHandlerInfo, @ptrCast(self)), pfSupportsPadding);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataHandlerInfo_DoesRequireFixedSize(self: *const T, pfFixedSize: ?*BOOL) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataHandlerInfo.VTable, @ptrCast(self.vtable)).DoesRequireFixedSize(@as(*const IWICMetadataHandlerInfo, @ptrCast(self)), pfFixedSize);
}
};}
pub usingnamespace MethodMixin(@This());
};
pub const WICMetadataPattern = extern struct {
Position: ULARGE_INTEGER,
Length: u32,
Pattern: ?*u8,
Mask: ?*u8,
DataOffset: ULARGE_INTEGER,
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICMetadataReaderInfo_Value = Guid.initString("eebf1f5b-07c1-4447-a3ab-22acaf78a804");
pub const IID_IWICMetadataReaderInfo = &IID_IWICMetadataReaderInfo_Value;
pub const IWICMetadataReaderInfo = extern struct {
pub const VTable = extern struct {
base: IWICMetadataHandlerInfo.VTable,
GetPatterns: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataReaderInfo,
guidContainerFormat: ?*const Guid,
cbSize: u32,
// TODO: what to do with BytesParamIndex 1?
pPattern: ?*WICMetadataPattern,
pcCount: ?*u32,
pcbActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataReaderInfo,
guidContainerFormat: ?*const Guid,
cbSize: u32,
// TODO: what to do with BytesParamIndex 1?
pPattern: ?*WICMetadataPattern,
pcCount: ?*u32,
pcbActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
MatchesPattern: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataReaderInfo,
guidContainerFormat: ?*const Guid,
pIStream: ?*IStream,
pfMatches: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataReaderInfo,
guidContainerFormat: ?*const Guid,
pIStream: ?*IStream,
pfMatches: ?*BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateInstance: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataReaderInfo,
ppIReader: ?*?*IWICMetadataReader,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataReaderInfo,
ppIReader: ?*?*IWICMetadataReader,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IWICMetadataHandlerInfo.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataReaderInfo_GetPatterns(self: *const T, guidContainerFormat: ?*const Guid, cbSize: u32, pPattern: ?*WICMetadataPattern, pcCount: ?*u32, pcbActual: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataReaderInfo.VTable, @ptrCast(self.vtable)).GetPatterns(@as(*const IWICMetadataReaderInfo, @ptrCast(self)), guidContainerFormat, cbSize, pPattern, pcCount, pcbActual);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataReaderInfo_MatchesPattern(self: *const T, guidContainerFormat: ?*const Guid, pIStream: ?*IStream, pfMatches: ?*BOOL) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataReaderInfo.VTable, @ptrCast(self.vtable)).MatchesPattern(@as(*const IWICMetadataReaderInfo, @ptrCast(self)), guidContainerFormat, pIStream, pfMatches);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataReaderInfo_CreateInstance(self: *const T, ppIReader: ?*?*IWICMetadataReader) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataReaderInfo.VTable, @ptrCast(self.vtable)).CreateInstance(@as(*const IWICMetadataReaderInfo, @ptrCast(self)), ppIReader);
}
};}
pub usingnamespace MethodMixin(@This());
};
pub const WICMetadataHeader = extern struct {
Position: ULARGE_INTEGER,
Length: u32,
Header: ?*u8,
DataOffset: ULARGE_INTEGER,
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICMetadataWriterInfo_Value = Guid.initString("b22e3fba-3925-4323-b5c1-9ebfc430f236");
pub const IID_IWICMetadataWriterInfo = &IID_IWICMetadataWriterInfo_Value;
pub const IWICMetadataWriterInfo = extern struct {
pub const VTable = extern struct {
base: IWICMetadataHandlerInfo.VTable,
GetHeader: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataWriterInfo,
guidContainerFormat: ?*const Guid,
cbSize: u32,
// TODO: what to do with BytesParamIndex 1?
pHeader: ?*WICMetadataHeader,
pcbActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataWriterInfo,
guidContainerFormat: ?*const Guid,
cbSize: u32,
// TODO: what to do with BytesParamIndex 1?
pHeader: ?*WICMetadataHeader,
pcbActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateInstance: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICMetadataWriterInfo,
ppIWriter: ?*?*IWICMetadataWriter,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICMetadataWriterInfo,
ppIWriter: ?*?*IWICMetadataWriter,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IWICMetadataHandlerInfo.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataWriterInfo_GetHeader(self: *const T, guidContainerFormat: ?*const Guid, cbSize: u32, pHeader: ?*WICMetadataHeader, pcbActual: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataWriterInfo.VTable, @ptrCast(self.vtable)).GetHeader(@as(*const IWICMetadataWriterInfo, @ptrCast(self)), guidContainerFormat, cbSize, pHeader, pcbActual);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICMetadataWriterInfo_CreateInstance(self: *const T, ppIWriter: ?*?*IWICMetadataWriter) callconv(.Inline) HRESULT {
return @as(*const IWICMetadataWriterInfo.VTable, @ptrCast(self.vtable)).CreateInstance(@as(*const IWICMetadataWriterInfo, @ptrCast(self)), ppIWriter);
}
};}
pub usingnamespace MethodMixin(@This());
};
// TODO: this type is limited to platform 'windows5.1.2600'
const IID_IWICComponentFactory_Value = Guid.initString("412d0c3a-9650-44fa-af5b-dd2a06c8e8fb");
pub const IID_IWICComponentFactory = &IID_IWICComponentFactory_Value;
pub const IWICComponentFactory = extern struct {
pub const VTable = extern struct {
base: IWICImagingFactory.VTable,
CreateMetadataReader: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICComponentFactory,
guidMetadataFormat: ?*const Guid,
pguidVendor: ?*const Guid,
dwOptions: u32,
pIStream: ?*IStream,
ppIReader: ?*?*IWICMetadataReader,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICComponentFactory,
guidMetadataFormat: ?*const Guid,
pguidVendor: ?*const Guid,
dwOptions: u32,
pIStream: ?*IStream,
ppIReader: ?*?*IWICMetadataReader,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateMetadataReaderFromContainer: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICComponentFactory,
guidContainerFormat: ?*const Guid,
pguidVendor: ?*const Guid,
dwOptions: u32,
pIStream: ?*IStream,
ppIReader: ?*?*IWICMetadataReader,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICComponentFactory,
guidContainerFormat: ?*const Guid,
pguidVendor: ?*const Guid,
dwOptions: u32,
pIStream: ?*IStream,
ppIReader: ?*?*IWICMetadataReader,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateMetadataWriter: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICComponentFactory,
guidMetadataFormat: ?*const Guid,
pguidVendor: ?*const Guid,
dwMetadataOptions: u32,
ppIWriter: ?*?*IWICMetadataWriter,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICComponentFactory,
guidMetadataFormat: ?*const Guid,
pguidVendor: ?*const Guid,
dwMetadataOptions: u32,
ppIWriter: ?*?*IWICMetadataWriter,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateMetadataWriterFromReader: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICComponentFactory,
pIReader: ?*IWICMetadataReader,
pguidVendor: ?*const Guid,
ppIWriter: ?*?*IWICMetadataWriter,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICComponentFactory,
pIReader: ?*IWICMetadataReader,
pguidVendor: ?*const Guid,
ppIWriter: ?*?*IWICMetadataWriter,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateQueryReaderFromBlockReader: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICComponentFactory,
pIBlockReader: ?*IWICMetadataBlockReader,
ppIQueryReader: ?*?*IWICMetadataQueryReader,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICComponentFactory,
pIBlockReader: ?*IWICMetadataBlockReader,
ppIQueryReader: ?*?*IWICMetadataQueryReader,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateQueryWriterFromBlockWriter: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICComponentFactory,
pIBlockWriter: ?*IWICMetadataBlockWriter,
ppIQueryWriter: ?*?*IWICMetadataQueryWriter,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICComponentFactory,
pIBlockWriter: ?*IWICMetadataBlockWriter,
ppIQueryWriter: ?*?*IWICMetadataQueryWriter,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
CreateEncoderPropertyBag: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IWICComponentFactory,
ppropOptions: [*]PROPBAG2,
cCount: u32,
ppIPropertyBag: ?*?*IPropertyBag2,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IWICComponentFactory,
ppropOptions: [*]PROPBAG2,
cCount: u32,
ppIPropertyBag: ?*?*IPropertyBag2,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IWICImagingFactory.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICComponentFactory_CreateMetadataReader(self: *const T, guidMetadataFormat: ?*const Guid, pguidVendor: ?*const Guid, dwOptions: u32, pIStream: ?*IStream, ppIReader: ?*?*IWICMetadataReader) callconv(.Inline) HRESULT {
return @as(*const IWICComponentFactory.VTable, @ptrCast(self.vtable)).CreateMetadataReader(@as(*const IWICComponentFactory, @ptrCast(self)), guidMetadataFormat, pguidVendor, dwOptions, pIStream, ppIReader);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICComponentFactory_CreateMetadataReaderFromContainer(self: *const T, guidContainerFormat: ?*const Guid, pguidVendor: ?*const Guid, dwOptions: u32, pIStream: ?*IStream, ppIReader: ?*?*IWICMetadataReader) callconv(.Inline) HRESULT {
return @as(*const IWICComponentFactory.VTable, @ptrCast(self.vtable)).CreateMetadataReaderFromContainer(@as(*const IWICComponentFactory, @ptrCast(self)), guidContainerFormat, pguidVendor, dwOptions, pIStream, ppIReader);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICComponentFactory_CreateMetadataWriter(self: *const T, guidMetadataFormat: ?*const Guid, pguidVendor: ?*const Guid, dwMetadataOptions: u32, ppIWriter: ?*?*IWICMetadataWriter) callconv(.Inline) HRESULT {
return @as(*const IWICComponentFactory.VTable, @ptrCast(self.vtable)).CreateMetadataWriter(@as(*const IWICComponentFactory, @ptrCast(self)), guidMetadataFormat, pguidVendor, dwMetadataOptions, ppIWriter);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICComponentFactory_CreateMetadataWriterFromReader(self: *const T, pIReader: ?*IWICMetadataReader, pguidVendor: ?*const Guid, ppIWriter: ?*?*IWICMetadataWriter) callconv(.Inline) HRESULT {
return @as(*const IWICComponentFactory.VTable, @ptrCast(self.vtable)).CreateMetadataWriterFromReader(@as(*const IWICComponentFactory, @ptrCast(self)), pIReader, pguidVendor, ppIWriter);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICComponentFactory_CreateQueryReaderFromBlockReader(self: *const T, pIBlockReader: ?*IWICMetadataBlockReader, ppIQueryReader: ?*?*IWICMetadataQueryReader) callconv(.Inline) HRESULT {
return @as(*const IWICComponentFactory.VTable, @ptrCast(self.vtable)).CreateQueryReaderFromBlockReader(@as(*const IWICComponentFactory, @ptrCast(self)), pIBlockReader, ppIQueryReader);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICComponentFactory_CreateQueryWriterFromBlockWriter(self: *const T, pIBlockWriter: ?*IWICMetadataBlockWriter, ppIQueryWriter: ?*?*IWICMetadataQueryWriter) callconv(.Inline) HRESULT {
return @as(*const IWICComponentFactory.VTable, @ptrCast(self.vtable)).CreateQueryWriterFromBlockWriter(@as(*const IWICComponentFactory, @ptrCast(self)), pIBlockWriter, ppIQueryWriter);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IWICComponentFactory_CreateEncoderPropertyBag(self: *const T, ppropOptions: [*]PROPBAG2, cCount: u32, ppIPropertyBag: ?*?*IPropertyBag2) callconv(.Inline) HRESULT {
return @as(*const IWICComponentFactory.VTable, @ptrCast(self.vtable)).CreateEncoderPropertyBag(@as(*const IWICComponentFactory, @ptrCast(self)), ppropOptions, cCount, ppIPropertyBag);
}
};}
pub usingnamespace MethodMixin(@This());
};
//--------------------------------------------------------------------------------
// Section: Functions (9)
//--------------------------------------------------------------------------------
// TODO: this type is limited to platform 'windows5.1.2600'
pub extern "windowscodecs" fn WICConvertBitmapSource(
dstFormat: ?*Guid,
pISrc: ?*IWICBitmapSource,
ppIDst: ?*?*IWICBitmapSource,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows5.1.2600'
pub extern "windowscodecs" fn WICCreateBitmapFromSection(
width: u32,
height: u32,
pixelFormat: ?*Guid,
hSection: ?HANDLE,
stride: u32,
offset: u32,
ppIBitmap: ?*?*IWICBitmap,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.1'
pub extern "windowscodecs" fn WICCreateBitmapFromSectionEx(
width: u32,
height: u32,
pixelFormat: ?*Guid,
hSection: ?HANDLE,
stride: u32,
offset: u32,
desiredAccessLevel: WICSectionAccessLevel,
ppIBitmap: ?*?*IWICBitmap,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows5.1.2600'
pub extern "windowscodecs" fn WICMapGuidToShortName(
guid: ?*const Guid,
cchName: u32,
wzName: ?[*:0]u16,
pcchActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows5.1.2600'
pub extern "windowscodecs" fn WICMapShortNameToGuid(
wzName: ?[*:0]const u16,
pguid: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows5.1.2600'
pub extern "windowscodecs" fn WICMapSchemaToName(
guidMetadataFormat: ?*const Guid,
pwzSchema: ?PWSTR,
cchName: u32,
wzName: ?[*:0]u16,
pcchActual: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows5.1.2600'
pub extern "windowscodecs" fn WICMatchMetadataContent(
guidContainerFormat: ?*const Guid,
pguidVendor: ?*const Guid,
pIStream: ?*IStream,
pguidMetadataFormat: ?*Guid,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows5.1.2600'
pub extern "windowscodecs" fn WICSerializeMetadataContent(
guidContainerFormat: ?*const Guid,
pIWriter: ?*IWICMetadataWriter,
dwPersistOptions: u32,
pIStream: ?*IStream,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows5.1.2600'
pub extern "windowscodecs" fn WICGetMetadataContentSize(
guidContainerFormat: ?*const Guid,
pIWriter: ?*IWICMetadataWriter,
pcbSize: ?*ULARGE_INTEGER,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
//--------------------------------------------------------------------------------
// Section: Unicode Aliases (0)
//--------------------------------------------------------------------------------
const thismodule = @This();
pub usingnamespace switch (@import("../zig.zig").unicode_mode) {
.ansi => struct {
},
.wide => struct {
},
.unspecified => if (@import("builtin").is_test) struct {
} else struct {
},
};
//--------------------------------------------------------------------------------
// Section: Imports (22)
//--------------------------------------------------------------------------------
const Guid = @import("../zig.zig").Guid;
const BOOL = @import("../foundation.zig").BOOL;
const D2D1_PIXEL_FORMAT = @import("../graphics/direct2d/common.zig").D2D1_PIXEL_FORMAT;
const DXGI_FORMAT = @import("../graphics/dxgi/common.zig").DXGI_FORMAT;
const DXGI_JPEG_AC_HUFFMAN_TABLE = @import("../graphics/dxgi/common.zig").DXGI_JPEG_AC_HUFFMAN_TABLE;
const DXGI_JPEG_DC_HUFFMAN_TABLE = @import("../graphics/dxgi/common.zig").DXGI_JPEG_DC_HUFFMAN_TABLE;
const DXGI_JPEG_QUANTIZATION_TABLE = @import("../graphics/dxgi/common.zig").DXGI_JPEG_QUANTIZATION_TABLE;
const HANDLE = @import("../foundation.zig").HANDLE;
const HBITMAP = @import("../graphics/gdi.zig").HBITMAP;
const HICON = @import("../ui/windows_and_messaging.zig").HICON;
const HPALETTE = @import("../graphics/gdi.zig").HPALETTE;
const HRESULT = @import("../foundation.zig").HRESULT;
const IEnumString = @import("../system/com.zig").IEnumString;
const IEnumUnknown = @import("../system/com.zig").IEnumUnknown;
const IPersistStream = @import("../system/com.zig").IPersistStream;
const IPropertyBag2 = @import("../system/com/structured_storage.zig").IPropertyBag2;
const IStream = @import("../system/com.zig").IStream;
const IUnknown = @import("../system/com.zig").IUnknown;
const PROPBAG2 = @import("../system/com/structured_storage.zig").PROPBAG2;
const PROPVARIANT = @import("../system/com/structured_storage.zig").PROPVARIANT;
const PWSTR = @import("../foundation.zig").PWSTR;
const ULARGE_INTEGER = @import("../foundation.zig").ULARGE_INTEGER;
test {
// The following '_ = <FuncPtrType>' lines are a workaround for https://github.com/ziglang/zig/issues/4476
if (@hasDecl(@This(), "PFNProgressNotification")) { _ = PFNProgressNotification; }
@setEvalBranchQuota(
comptime @import("std").meta.declarations(@This()).len * 3
);
// reference all the pub declarations
if (!@import("builtin").is_test) return;
inline for (comptime @import("std").meta.declarations(@This())) |decl| {
_ = @field(@This(), decl.name);
}
}
//--------------------------------------------------------------------------------
// Section: SubModules (1)
//--------------------------------------------------------------------------------
pub const d2d = @import("imaging/d2d.zig");