@bun-win32/windowscodecs 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AI.md +71 -0
- package/README.md +81 -0
- package/index.ts +4 -0
- package/package.json +61 -0
- package/structs/WindowsCodecs.ts +824 -0
- package/types/WindowsCodecs.ts +162 -0
package/AI.md
ADDED
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# AI Guide for @bun-win32/windowscodecs
|
|
2
|
+
|
|
3
|
+
How to use this package, not what the Win32 API does.
|
|
4
|
+
|
|
5
|
+
## Usage
|
|
6
|
+
|
|
7
|
+
```ts
|
|
8
|
+
import WindowsCodecs, { SomeFlag } from '@bun-win32/windowscodecs';
|
|
9
|
+
|
|
10
|
+
// Methods bind lazily on first call
|
|
11
|
+
const result = WindowsCodecs.SomeFunctionW(arg1, arg2);
|
|
12
|
+
|
|
13
|
+
// Preload: array, single string, or no args (all symbols)
|
|
14
|
+
WindowsCodecs.Preload(['SomeFunctionW', 'AnotherFunction']);
|
|
15
|
+
WindowsCodecs.Preload('SomeFunctionW');
|
|
16
|
+
WindowsCodecs.Preload();
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Where To Look
|
|
20
|
+
|
|
21
|
+
| Need | Read |
|
|
22
|
+
| --------------------------------- | -------------------------- |
|
|
23
|
+
| Find a method or its MS Docs link | `structs/WindowsCodecs.ts` |
|
|
24
|
+
| Find types, enums, constants | `types/WindowsCodecs.ts` |
|
|
25
|
+
| Quick examples | `README.md` |
|
|
26
|
+
|
|
27
|
+
`index.ts` re-exports the class and all types — import from `@bun-win32/windowscodecs` directly.
|
|
28
|
+
|
|
29
|
+
## Calling Convention
|
|
30
|
+
|
|
31
|
+
All documented `windowscodecs.dll` exports are bound. Each method maps 1:1 to its DLL export. Names, parameter names, and order match Microsoft Docs.
|
|
32
|
+
|
|
33
|
+
### Strings
|
|
34
|
+
|
|
35
|
+
`W` methods take UTF-16LE NUL-terminated buffers. `A` methods take ANSI strings.
|
|
36
|
+
|
|
37
|
+
```ts
|
|
38
|
+
const wide = Buffer.from('Hello\0', 'utf16le'); // LPCWSTR
|
|
39
|
+
WindowsCodecs.SomeFunctionW(wide.ptr);
|
|
40
|
+
|
|
41
|
+
// Reading a wide string back from a buffer:
|
|
42
|
+
const text = new TextDecoder('utf-16').decode(buf).replace(/\0.*$/, '');
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
### Return types
|
|
46
|
+
|
|
47
|
+
- `HANDLE`, `HWND`, etc. → `bigint`
|
|
48
|
+
- `DWORD`, `UINT`, `BOOL`, `INT`, `LONG` → `number`
|
|
49
|
+
- `LPVOID`, `LPWSTR`, etc. → `Pointer`
|
|
50
|
+
- Win32 `BOOL` is `number` (0 or non-zero), **not** JS `boolean`. Do not compare with `=== true`.
|
|
51
|
+
|
|
52
|
+
### Pointers, handles, out-parameters
|
|
53
|
+
|
|
54
|
+
- **Pointer** params (`LP*`, `P*`, `Pointer`): pass `buffer.ptr` from a caller-allocated `Buffer`.
|
|
55
|
+
- **Handle** params (`HANDLE`, `HWND`, etc.): pass a `bigint` value.
|
|
56
|
+
- **Out-parameters**: allocate a `Buffer`, pass `.ptr`, read the result after the call.
|
|
57
|
+
|
|
58
|
+
```ts
|
|
59
|
+
const out = Buffer.alloc(4);
|
|
60
|
+
WindowsCodecs.SomeFunction(out.ptr);
|
|
61
|
+
const value = out.readUInt32LE(0);
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
### Nullability
|
|
65
|
+
|
|
66
|
+
- `| NULL` in a signature → pass `null` (optional pointer).
|
|
67
|
+
- `| 0n` in a signature → pass `0n` (optional handle).
|
|
68
|
+
|
|
69
|
+
## Errors and Cleanup
|
|
70
|
+
|
|
71
|
+
Return values are raw. If the Win32 function uses last-error semantics, read via `GetLastError()`. Resource cleanup is your responsibility — same as raw Win32.
|
package/README.md
ADDED
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
# @bun-win32/windowscodecs
|
|
2
|
+
|
|
3
|
+
Zero-dependency, zero-overhead Win32 WindowsCodecs bindings for [Bun](https://bun.sh) on Windows.
|
|
4
|
+
|
|
5
|
+
## Overview
|
|
6
|
+
|
|
7
|
+
`@bun-win32/windowscodecs` exposes the `windowscodecs.dll` exports using [Bun](https://bun.sh)'s FFI. It provides a single class, `WindowsCodecs`, which lazily binds native symbols on first use. You can optionally preload a subset or all symbols up-front via `Preload()`.
|
|
8
|
+
|
|
9
|
+
Windows Imaging Component (WIC) ships its C-callable surface as flat `*_Proxy` exports: each `IWICInterface_Method_Proxy` forwards to the matching COM vtable method, taking the interface pointer as the first argument. COM interface pointers are passed by value as `bigint` handles; the `**` out-parameters of the create/get functions are caller-allocated 8-byte buffers from which you read the new pointer.
|
|
10
|
+
|
|
11
|
+
The bindings are strongly typed for a smooth DX in TypeScript.
|
|
12
|
+
|
|
13
|
+
## Features
|
|
14
|
+
|
|
15
|
+
- [Bun](https://bun.sh)-first ergonomics on Windows 10/11.
|
|
16
|
+
- Direct FFI to `windowscodecs.dll` (Windows Imaging Component: image decode/encode, scaling, flip/rotate, pixel-format conversion, palettes, color contexts, and metadata).
|
|
17
|
+
- In-source docs in `structs/WindowsCodecs.ts` with links to Microsoft Docs.
|
|
18
|
+
- Lazy binding on first call; optional eager preload (`WindowsCodecs.Preload()`).
|
|
19
|
+
- No wrapper overhead; calls map 1:1 to native APIs.
|
|
20
|
+
- Strongly-typed Win32 aliases (see `types/WindowsCodecs.ts`).
|
|
21
|
+
|
|
22
|
+
## Requirements
|
|
23
|
+
|
|
24
|
+
- [Bun](https://bun.sh) runtime
|
|
25
|
+
- Windows 10 or later
|
|
26
|
+
|
|
27
|
+
## Installation
|
|
28
|
+
|
|
29
|
+
```sh
|
|
30
|
+
bun add @bun-win32/windowscodecs
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Quick Start
|
|
34
|
+
|
|
35
|
+
```ts
|
|
36
|
+
import WindowsCodecs, { WICDecodeOptions, WINCODEC_SDK_VERSION } from '@bun-win32/windowscodecs';
|
|
37
|
+
|
|
38
|
+
// Read a COM interface pointer out of an 8-byte slot.
|
|
39
|
+
const slot = () => Buffer.alloc(8);
|
|
40
|
+
const ptrOf = (b: Buffer) => b.readBigUInt64LE(0);
|
|
41
|
+
|
|
42
|
+
// 1. Create the imaging factory (CoInitialize via @bun-win32/ole32 first).
|
|
43
|
+
const ppFactory = slot();
|
|
44
|
+
WindowsCodecs.WICCreateImagingFactory_Proxy(WINCODEC_SDK_VERSION, ppFactory.ptr!);
|
|
45
|
+
const factory = ptrOf(ppFactory);
|
|
46
|
+
|
|
47
|
+
// 2. Decode an image from a file.
|
|
48
|
+
const path = Buffer.from('C:\\Windows\\Web\\Wallpaper\\Windows\\img0.jpg\0', 'utf16le');
|
|
49
|
+
const ppDecoder = slot();
|
|
50
|
+
WindowsCodecs.IWICImagingFactory_CreateDecoderFromFilename_Proxy(factory, path.ptr!, null, 0x8000_0000, WICDecodeOptions.WICDecodeMetadataCacheOnDemand, ppDecoder.ptr!);
|
|
51
|
+
const decoder = ptrOf(ppDecoder);
|
|
52
|
+
|
|
53
|
+
// 3. Grab frame 0 and read its dimensions.
|
|
54
|
+
const ppFrame = slot();
|
|
55
|
+
WindowsCodecs.IWICBitmapDecoder_GetFrame_Proxy(decoder, 0, ppFrame.ptr!);
|
|
56
|
+
const frame = ptrOf(ppFrame);
|
|
57
|
+
|
|
58
|
+
const w = Buffer.alloc(4);
|
|
59
|
+
const h = Buffer.alloc(4);
|
|
60
|
+
WindowsCodecs.IWICBitmapSource_GetSize_Proxy(frame, w.ptr!, h.ptr!);
|
|
61
|
+
console.log(`${w.readUInt32LE(0)} x ${h.readUInt32LE(0)}`);
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
> [!NOTE]
|
|
65
|
+
> AI agents: see `AI.md` for the package binding contract and source-navigation guidance. It explains how to use the package without scanning the entire implementation.
|
|
66
|
+
|
|
67
|
+
## Examples
|
|
68
|
+
|
|
69
|
+
Run the included examples:
|
|
70
|
+
|
|
71
|
+
```sh
|
|
72
|
+
bun run example:plasma-forge # creative: synthesize a plasma field, WIC-resample it, paint truecolor ANSI
|
|
73
|
+
bun run example:image-inspector # professional: full decode + format conversion + codec/metadata diagnostic
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
## Notes
|
|
77
|
+
|
|
78
|
+
- WIC is COM-based. Initialize COM on the calling thread first (e.g. `Ole32.CoInitialize(null)` from `@bun-win32/ole32`) before creating the factory.
|
|
79
|
+
- Interface pointers are reference-counted. Release them with `IUnknown::Release` (via `@bun-win32/ole32`) when done; this package binds the documented WIC surface 1:1 and does not manage lifetimes.
|
|
80
|
+
- Either rely on lazy binding or call `WindowsCodecs.Preload()`.
|
|
81
|
+
- Windows only. Bun runtime required.
|
package/index.ts
ADDED
package/package.json
ADDED
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
{
|
|
2
|
+
"author": "Stev Peifer <stev@bell.net>",
|
|
3
|
+
"bugs": {
|
|
4
|
+
"url": "https://github.com/ObscuritySRL/bun-win32/issues"
|
|
5
|
+
},
|
|
6
|
+
"dependencies": {
|
|
7
|
+
"@bun-win32/core": "1.1.2"
|
|
8
|
+
},
|
|
9
|
+
"description": "Zero-dependency, zero-overhead Win32 WINDOWSCODECS bindings for Bun (FFI) on Windows.",
|
|
10
|
+
"devDependencies": {
|
|
11
|
+
"@bun-win32/ole32": "1.0.0",
|
|
12
|
+
"@types/bun": "latest"
|
|
13
|
+
},
|
|
14
|
+
"exports": {
|
|
15
|
+
".": "./index.ts"
|
|
16
|
+
},
|
|
17
|
+
"license": "MIT",
|
|
18
|
+
"module": "index.ts",
|
|
19
|
+
"name": "@bun-win32/windowscodecs",
|
|
20
|
+
"peerDependencies": {
|
|
21
|
+
"typescript": "^5"
|
|
22
|
+
},
|
|
23
|
+
"private": false,
|
|
24
|
+
"homepage": "https://github.com/ObscuritySRL/bun-win32#readme",
|
|
25
|
+
"repository": {
|
|
26
|
+
"type": "git",
|
|
27
|
+
"url": "git://github.com/ObscuritySRL/bun-win32.git",
|
|
28
|
+
"directory": "packages/windowscodecs"
|
|
29
|
+
},
|
|
30
|
+
"type": "module",
|
|
31
|
+
"version": "1.0.0",
|
|
32
|
+
"main": "./index.ts",
|
|
33
|
+
"keywords": [
|
|
34
|
+
"bun",
|
|
35
|
+
"ffi",
|
|
36
|
+
"win32",
|
|
37
|
+
"windows",
|
|
38
|
+
"windowscodecs",
|
|
39
|
+
"wic",
|
|
40
|
+
"image",
|
|
41
|
+
"codec",
|
|
42
|
+
"bindings",
|
|
43
|
+
"typescript",
|
|
44
|
+
"dll"
|
|
45
|
+
],
|
|
46
|
+
"files": [
|
|
47
|
+
"AI.md",
|
|
48
|
+
"README.md",
|
|
49
|
+
"index.ts",
|
|
50
|
+
"structs/*.ts",
|
|
51
|
+
"types/*.ts"
|
|
52
|
+
],
|
|
53
|
+
"sideEffects": false,
|
|
54
|
+
"engines": {
|
|
55
|
+
"bun": ">=1.1.0"
|
|
56
|
+
},
|
|
57
|
+
"scripts": {
|
|
58
|
+
"example:plasma-forge": "bun ./example/plasma-forge.ts",
|
|
59
|
+
"example:image-inspector": "bun ./example/image-inspector.ts"
|
|
60
|
+
}
|
|
61
|
+
}
|
|
@@ -0,0 +1,824 @@
|
|
|
1
|
+
import { type FFIFunction, FFIType, type Pointer } from 'bun:ffi';
|
|
2
|
+
|
|
3
|
+
import { Win32 } from '@bun-win32/core';
|
|
4
|
+
|
|
5
|
+
import type {
|
|
6
|
+
BOOL,
|
|
7
|
+
DOUBLE,
|
|
8
|
+
DWORD,
|
|
9
|
+
HANDLE,
|
|
10
|
+
HBITMAP,
|
|
11
|
+
HICON,
|
|
12
|
+
HPALETTE,
|
|
13
|
+
HRESULT,
|
|
14
|
+
IEnumString,
|
|
15
|
+
IPropertyBag2,
|
|
16
|
+
IStream,
|
|
17
|
+
IWICBitmap,
|
|
18
|
+
IWICBitmapClipper,
|
|
19
|
+
IWICBitmapCodecInfo,
|
|
20
|
+
IWICBitmapDecoder,
|
|
21
|
+
IWICBitmapEncoder,
|
|
22
|
+
IWICBitmapFlipRotator,
|
|
23
|
+
IWICBitmapFrameDecode,
|
|
24
|
+
IWICBitmapFrameEncode,
|
|
25
|
+
IWICBitmapLock,
|
|
26
|
+
IWICBitmapScaler,
|
|
27
|
+
IWICBitmapSource,
|
|
28
|
+
IWICColorContext,
|
|
29
|
+
IWICComponentFactory,
|
|
30
|
+
IWICComponentInfo,
|
|
31
|
+
IWICFastMetadataEncoder,
|
|
32
|
+
IWICFormatConverter,
|
|
33
|
+
IWICImagingFactory,
|
|
34
|
+
IWICMetadataBlockReader,
|
|
35
|
+
IWICMetadataBlockWriter,
|
|
36
|
+
IWICMetadataQueryReader,
|
|
37
|
+
IWICMetadataQueryWriter,
|
|
38
|
+
IWICMetadataReader,
|
|
39
|
+
IWICMetadataWriter,
|
|
40
|
+
IWICPalette,
|
|
41
|
+
IWICPixelFormatInfo,
|
|
42
|
+
IWICStream,
|
|
43
|
+
LPBOOL,
|
|
44
|
+
LPBYTE,
|
|
45
|
+
LPCWSTR,
|
|
46
|
+
LPDOUBLE,
|
|
47
|
+
LPGUID,
|
|
48
|
+
LPLPOLESTR,
|
|
49
|
+
LPPROPBAG2,
|
|
50
|
+
LPPROPVARIANT,
|
|
51
|
+
LPUINT,
|
|
52
|
+
LPULARGE_INTEGER,
|
|
53
|
+
LPULONG,
|
|
54
|
+
LPVARIANT,
|
|
55
|
+
LPWICBitmapPaletteType,
|
|
56
|
+
LPWICColor,
|
|
57
|
+
LPWICInProcPointer,
|
|
58
|
+
LPWICPixelFormatGUID,
|
|
59
|
+
LPWICRect,
|
|
60
|
+
LPWSTR,
|
|
61
|
+
NULL,
|
|
62
|
+
PCWSTR,
|
|
63
|
+
REFCLSID,
|
|
64
|
+
REFGUID,
|
|
65
|
+
REFIID,
|
|
66
|
+
REFWICPixelFormatGUID,
|
|
67
|
+
UINT,
|
|
68
|
+
ULONG,
|
|
69
|
+
ULONG_PTR,
|
|
70
|
+
WICBitmapAlphaChannelOption,
|
|
71
|
+
WICBitmapCreateCacheOption,
|
|
72
|
+
WICBitmapDitherType,
|
|
73
|
+
WICBitmapEncoderCacheOption,
|
|
74
|
+
WICBitmapInterpolationMode,
|
|
75
|
+
WICBitmapPaletteType,
|
|
76
|
+
WICBitmapTransformOptions,
|
|
77
|
+
WICDecodeOptions,
|
|
78
|
+
WICInProcPointer,
|
|
79
|
+
WICSectionAccessLevel,
|
|
80
|
+
} from '../types/WindowsCodecs';
|
|
81
|
+
|
|
82
|
+
/**
|
|
83
|
+
* Thin, lazy-loaded FFI bindings for `windowscodecs.dll` (Windows Imaging Component).
|
|
84
|
+
*
|
|
85
|
+
* Each static method corresponds one-to-one with a `windowscodecs.dll` export declared in
|
|
86
|
+
* `Symbols`. WIC exposes its COM interfaces through flat `*_Proxy` exports — each proxy takes
|
|
87
|
+
* the owning interface pointer as the first parameter, then the original method's parameters.
|
|
88
|
+
* COM interface pointers are opaque tokens (`bigint`), obtained from the `**` out-parameters
|
|
89
|
+
* of the create/get functions and passed back by value; you never dereference them locally.
|
|
90
|
+
*
|
|
91
|
+
* The first call to a method binds the underlying native symbol via `bun:ffi` and memoizes
|
|
92
|
+
* it on the class for subsequent calls. For bulk, up-front binding, use `Preload`.
|
|
93
|
+
*
|
|
94
|
+
* @example
|
|
95
|
+
* ```ts
|
|
96
|
+
* import WindowsCodecs from './structs/WindowsCodecs';
|
|
97
|
+
*
|
|
98
|
+
* const out = Buffer.alloc(8);
|
|
99
|
+
* WindowsCodecs.WICCreateImagingFactory_Proxy(0x0237, out.ptr!);
|
|
100
|
+
* const factory = out.readBigUInt64LE(0);
|
|
101
|
+
* ```
|
|
102
|
+
*/
|
|
103
|
+
class WindowsCodecs extends Win32 {
|
|
104
|
+
protected static override name = 'windowscodecs.dll';
|
|
105
|
+
|
|
106
|
+
/** @inheritdoc */
|
|
107
|
+
protected static override readonly Symbols = {
|
|
108
|
+
DllCanUnloadNow: { args: [], returns: FFIType.i32 },
|
|
109
|
+
DllGetClassObject: { args: [FFIType.ptr, FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
110
|
+
IEnumString_Next_WIC_Proxy: { args: [FFIType.u64, FFIType.u32, FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
111
|
+
IEnumString_Reset_WIC_Proxy: { args: [FFIType.u64], returns: FFIType.i32 },
|
|
112
|
+
IPropertyBag2_Write_Proxy: { args: [FFIType.u64, FFIType.u32, FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
113
|
+
IWICBitmapClipper_Initialize_Proxy: { args: [FFIType.u64, FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
114
|
+
IWICBitmapCodecInfo_DoesSupportAnimation_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
115
|
+
IWICBitmapCodecInfo_DoesSupportLossless_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
116
|
+
IWICBitmapCodecInfo_DoesSupportMultiframe_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
117
|
+
IWICBitmapCodecInfo_GetContainerFormat_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
118
|
+
IWICBitmapCodecInfo_GetDeviceManufacturer_Proxy: { args: [FFIType.u64, FFIType.u32, FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
119
|
+
IWICBitmapCodecInfo_GetDeviceModels_Proxy: { args: [FFIType.u64, FFIType.u32, FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
120
|
+
IWICBitmapCodecInfo_GetFileExtensions_Proxy: { args: [FFIType.u64, FFIType.u32, FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
121
|
+
IWICBitmapCodecInfo_GetMimeTypes_Proxy: { args: [FFIType.u64, FFIType.u32, FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
122
|
+
IWICBitmapDecoder_CopyPalette_Proxy: { args: [FFIType.u64, FFIType.u64], returns: FFIType.i32 },
|
|
123
|
+
IWICBitmapDecoder_GetColorContexts_Proxy: { args: [FFIType.u64, FFIType.u32, FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
124
|
+
IWICBitmapDecoder_GetDecoderInfo_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
125
|
+
IWICBitmapDecoder_GetFrameCount_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
126
|
+
IWICBitmapDecoder_GetFrame_Proxy: { args: [FFIType.u64, FFIType.u32, FFIType.ptr], returns: FFIType.i32 },
|
|
127
|
+
IWICBitmapDecoder_GetMetadataQueryReader_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
128
|
+
IWICBitmapDecoder_GetPreview_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
129
|
+
IWICBitmapDecoder_GetThumbnail_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
130
|
+
IWICBitmapEncoder_Commit_Proxy: { args: [FFIType.u64], returns: FFIType.i32 },
|
|
131
|
+
IWICBitmapEncoder_CreateNewFrame_Proxy: { args: [FFIType.u64, FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
132
|
+
IWICBitmapEncoder_GetEncoderInfo_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
133
|
+
IWICBitmapEncoder_GetMetadataQueryWriter_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
134
|
+
IWICBitmapEncoder_Initialize_Proxy: { args: [FFIType.u64, FFIType.u64, FFIType.u32], returns: FFIType.i32 },
|
|
135
|
+
IWICBitmapEncoder_SetPalette_Proxy: { args: [FFIType.u64, FFIType.u64], returns: FFIType.i32 },
|
|
136
|
+
IWICBitmapEncoder_SetThumbnail_Proxy: { args: [FFIType.u64, FFIType.u64], returns: FFIType.i32 },
|
|
137
|
+
IWICBitmapFlipRotator_Initialize_Proxy: { args: [FFIType.u64, FFIType.u64, FFIType.u32], returns: FFIType.i32 },
|
|
138
|
+
IWICBitmapFrameDecode_GetColorContexts_Proxy: { args: [FFIType.u64, FFIType.u32, FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
139
|
+
IWICBitmapFrameDecode_GetMetadataQueryReader_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
140
|
+
IWICBitmapFrameDecode_GetThumbnail_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
141
|
+
IWICBitmapFrameEncode_Commit_Proxy: { args: [FFIType.u64], returns: FFIType.i32 },
|
|
142
|
+
IWICBitmapFrameEncode_GetMetadataQueryWriter_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
143
|
+
IWICBitmapFrameEncode_Initialize_Proxy: { args: [FFIType.u64, FFIType.u64], returns: FFIType.i32 },
|
|
144
|
+
IWICBitmapFrameEncode_SetColorContexts_Proxy: { args: [FFIType.u64, FFIType.u32, FFIType.ptr], returns: FFIType.i32 },
|
|
145
|
+
IWICBitmapFrameEncode_SetResolution_Proxy: { args: [FFIType.u64, FFIType.f64, FFIType.f64], returns: FFIType.i32 },
|
|
146
|
+
IWICBitmapFrameEncode_SetSize_Proxy: { args: [FFIType.u64, FFIType.u32, FFIType.u32], returns: FFIType.i32 },
|
|
147
|
+
IWICBitmapFrameEncode_SetThumbnail_Proxy: { args: [FFIType.u64, FFIType.u64], returns: FFIType.i32 },
|
|
148
|
+
IWICBitmapFrameEncode_WriteSource_Proxy: { args: [FFIType.u64, FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
149
|
+
IWICBitmapLock_GetDataPointer_STA_Proxy: { args: [FFIType.u64, FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
150
|
+
IWICBitmapLock_GetStride_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
151
|
+
IWICBitmapScaler_Initialize_Proxy: { args: [FFIType.u64, FFIType.u64, FFIType.u32, FFIType.u32, FFIType.u32], returns: FFIType.i32 },
|
|
152
|
+
IWICBitmapSource_CopyPalette_Proxy: { args: [FFIType.u64, FFIType.u64], returns: FFIType.i32 },
|
|
153
|
+
IWICBitmapSource_CopyPixels_Proxy: { args: [FFIType.u64, FFIType.ptr, FFIType.u32, FFIType.u32, FFIType.ptr], returns: FFIType.i32 },
|
|
154
|
+
IWICBitmapSource_GetPixelFormat_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
155
|
+
IWICBitmapSource_GetResolution_Proxy: { args: [FFIType.u64, FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
156
|
+
IWICBitmapSource_GetSize_Proxy: { args: [FFIType.u64, FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
157
|
+
IWICBitmap_Lock_Proxy: { args: [FFIType.u64, FFIType.ptr, FFIType.u32, FFIType.ptr], returns: FFIType.i32 },
|
|
158
|
+
IWICBitmap_SetPalette_Proxy: { args: [FFIType.u64, FFIType.u64], returns: FFIType.i32 },
|
|
159
|
+
IWICBitmap_SetResolution_Proxy: { args: [FFIType.u64, FFIType.f64, FFIType.f64], returns: FFIType.i32 },
|
|
160
|
+
IWICColorContext_InitializeFromMemory_Proxy: { args: [FFIType.u64, FFIType.ptr, FFIType.u32], returns: FFIType.i32 },
|
|
161
|
+
IWICComponentFactory_CreateMetadataWriterFromReader_Proxy: { args: [FFIType.u64, FFIType.u64, FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
162
|
+
IWICComponentFactory_CreateQueryWriterFromBlockWriter_Proxy: { args: [FFIType.u64, FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
163
|
+
IWICComponentInfo_GetAuthor_Proxy: { args: [FFIType.u64, FFIType.u32, FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
164
|
+
IWICComponentInfo_GetCLSID_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
165
|
+
IWICComponentInfo_GetFriendlyName_Proxy: { args: [FFIType.u64, FFIType.u32, FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
166
|
+
IWICComponentInfo_GetSpecVersion_Proxy: { args: [FFIType.u64, FFIType.u32, FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
167
|
+
IWICComponentInfo_GetVersion_Proxy: { args: [FFIType.u64, FFIType.u32, FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
168
|
+
IWICFastMetadataEncoder_Commit_Proxy: { args: [FFIType.u64], returns: FFIType.i32 },
|
|
169
|
+
IWICFastMetadataEncoder_GetMetadataQueryWriter_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
170
|
+
IWICFormatConverter_Initialize_Proxy: { args: [FFIType.u64, FFIType.u64, FFIType.ptr, FFIType.u32, FFIType.u64, FFIType.f64, FFIType.u32], returns: FFIType.i32 },
|
|
171
|
+
IWICImagingFactory_CreateBitmapClipper_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
172
|
+
IWICImagingFactory_CreateBitmapFlipRotator_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
173
|
+
IWICImagingFactory_CreateBitmapFromHBITMAP_Proxy: { args: [FFIType.u64, FFIType.u64, FFIType.u64, FFIType.u32, FFIType.ptr], returns: FFIType.i32 },
|
|
174
|
+
IWICImagingFactory_CreateBitmapFromHICON_Proxy: { args: [FFIType.u64, FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
175
|
+
IWICImagingFactory_CreateBitmapFromMemory_Proxy: { args: [FFIType.u64, FFIType.u32, FFIType.u32, FFIType.ptr, FFIType.u32, FFIType.u32, FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
176
|
+
IWICImagingFactory_CreateBitmapFromSource_Proxy: { args: [FFIType.u64, FFIType.u64, FFIType.u32, FFIType.ptr], returns: FFIType.i32 },
|
|
177
|
+
IWICImagingFactory_CreateBitmapScaler_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
178
|
+
IWICImagingFactory_CreateBitmap_Proxy: { args: [FFIType.u64, FFIType.u32, FFIType.u32, FFIType.ptr, FFIType.u32, FFIType.ptr], returns: FFIType.i32 },
|
|
179
|
+
IWICImagingFactory_CreateComponentInfo_Proxy: { args: [FFIType.u64, FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
180
|
+
IWICImagingFactory_CreateDecoderFromFileHandle_Proxy: { args: [FFIType.u64, FFIType.u64, FFIType.ptr, FFIType.u32, FFIType.ptr], returns: FFIType.i32 },
|
|
181
|
+
IWICImagingFactory_CreateDecoderFromFilename_Proxy: { args: [FFIType.u64, FFIType.ptr, FFIType.ptr, FFIType.u32, FFIType.u32, FFIType.ptr], returns: FFIType.i32 },
|
|
182
|
+
IWICImagingFactory_CreateDecoderFromStream_Proxy: { args: [FFIType.u64, FFIType.u64, FFIType.ptr, FFIType.u32, FFIType.ptr], returns: FFIType.i32 },
|
|
183
|
+
IWICImagingFactory_CreateEncoder_Proxy: { args: [FFIType.u64, FFIType.ptr, FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
184
|
+
IWICImagingFactory_CreateFastMetadataEncoderFromDecoder_Proxy: { args: [FFIType.u64, FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
185
|
+
IWICImagingFactory_CreateFastMetadataEncoderFromFrameDecode_Proxy: { args: [FFIType.u64, FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
186
|
+
IWICImagingFactory_CreateFormatConverter_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
187
|
+
IWICImagingFactory_CreatePalette_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
188
|
+
IWICImagingFactory_CreateQueryWriterFromReader_Proxy: { args: [FFIType.u64, FFIType.u64, FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
189
|
+
IWICImagingFactory_CreateQueryWriter_Proxy: { args: [FFIType.u64, FFIType.ptr, FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
190
|
+
IWICImagingFactory_CreateStream_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
191
|
+
IWICMetadataBlockReader_GetCount_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
192
|
+
IWICMetadataBlockReader_GetReaderByIndex_Proxy: { args: [FFIType.u64, FFIType.u32, FFIType.ptr], returns: FFIType.i32 },
|
|
193
|
+
IWICMetadataQueryReader_GetContainerFormat_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
194
|
+
IWICMetadataQueryReader_GetEnumerator_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
195
|
+
IWICMetadataQueryReader_GetLocation_Proxy: { args: [FFIType.u64, FFIType.u32, FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
196
|
+
IWICMetadataQueryReader_GetMetadataByName_Proxy: { args: [FFIType.u64, FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
197
|
+
IWICMetadataQueryWriter_RemoveMetadataByName_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
198
|
+
IWICMetadataQueryWriter_SetMetadataByName_Proxy: { args: [FFIType.u64, FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
199
|
+
IWICPalette_GetColorCount_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
200
|
+
IWICPalette_GetColors_Proxy: { args: [FFIType.u64, FFIType.u32, FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
201
|
+
IWICPalette_GetType_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
202
|
+
IWICPalette_HasAlpha_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
203
|
+
IWICPalette_InitializeCustom_Proxy: { args: [FFIType.u64, FFIType.ptr, FFIType.u32], returns: FFIType.i32 },
|
|
204
|
+
IWICPalette_InitializeFromBitmap_Proxy: { args: [FFIType.u64, FFIType.u64, FFIType.u32, FFIType.i32], returns: FFIType.i32 },
|
|
205
|
+
IWICPalette_InitializeFromPalette_Proxy: { args: [FFIType.u64, FFIType.u64], returns: FFIType.i32 },
|
|
206
|
+
IWICPalette_InitializePredefined_Proxy: { args: [FFIType.u64, FFIType.u32, FFIType.i32], returns: FFIType.i32 },
|
|
207
|
+
IWICPixelFormatInfo_GetBitsPerPixel_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
208
|
+
IWICPixelFormatInfo_GetChannelCount_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
209
|
+
IWICPixelFormatInfo_GetChannelMask_Proxy: { args: [FFIType.u64, FFIType.u32, FFIType.u32, FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
210
|
+
IWICStream_InitializeFromIStream_Proxy: { args: [FFIType.u64, FFIType.u64], returns: FFIType.i32 },
|
|
211
|
+
IWICStream_InitializeFromMemory_Proxy: { args: [FFIType.u64, FFIType.ptr, FFIType.u32], returns: FFIType.i32 },
|
|
212
|
+
WICConvertBitmapSource: { args: [FFIType.ptr, FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
213
|
+
WICCreateBitmapFromSection: { args: [FFIType.u32, FFIType.u32, FFIType.ptr, FFIType.u64, FFIType.u32, FFIType.u32, FFIType.ptr], returns: FFIType.i32 },
|
|
214
|
+
WICCreateBitmapFromSectionEx: { args: [FFIType.u32, FFIType.u32, FFIType.ptr, FFIType.u64, FFIType.u32, FFIType.u32, FFIType.u32, FFIType.ptr], returns: FFIType.i32 },
|
|
215
|
+
WICCreateColorContext_Proxy: { args: [FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
216
|
+
WICCreateImagingFactory_Proxy: { args: [FFIType.u32, FFIType.ptr], returns: FFIType.i32 },
|
|
217
|
+
WICGetMetadataContentSize: { args: [FFIType.ptr, FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
218
|
+
WICMapGuidToShortName: { args: [FFIType.ptr, FFIType.u32, FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
219
|
+
WICMapSchemaToName: { args: [FFIType.ptr, FFIType.ptr, FFIType.u32, FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
220
|
+
WICMapShortNameToGuid: { args: [FFIType.ptr, FFIType.ptr], returns: FFIType.i32 },
|
|
221
|
+
WICMatchMetadataContent: { args: [FFIType.ptr, FFIType.ptr, FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
222
|
+
WICSerializeMetadataContent: { args: [FFIType.ptr, FFIType.u64, FFIType.u32, FFIType.u64], returns: FFIType.i32 },
|
|
223
|
+
WICSetEncoderFormat_Proxy: { args: [FFIType.u64, FFIType.u64, FFIType.u64, FFIType.ptr], returns: FFIType.i32 },
|
|
224
|
+
} as const satisfies Record<string, FFIFunction>;
|
|
225
|
+
|
|
226
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/combaseapi/nf-combaseapi-dllcanunloadnow
|
|
227
|
+
public static DllCanUnloadNow(): HRESULT {
|
|
228
|
+
return WindowsCodecs.Load('DllCanUnloadNow')();
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/combaseapi/nf-combaseapi-dllgetclassobject
|
|
232
|
+
public static DllGetClassObject(rclsid: REFCLSID, riid: REFIID, ppv: Pointer): HRESULT {
|
|
233
|
+
return WindowsCodecs.Load('DllGetClassObject')(rclsid, riid, ppv);
|
|
234
|
+
}
|
|
235
|
+
|
|
236
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/objidl/nf-objidl-ienumstring-next
|
|
237
|
+
public static IEnumString_Next_WIC_Proxy(This: IEnumString, celt: ULONG, rgelt: LPLPOLESTR, pceltFetched: LPULONG | NULL): HRESULT {
|
|
238
|
+
return WindowsCodecs.Load('IEnumString_Next_WIC_Proxy')(This, celt, rgelt, pceltFetched);
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/objidl/nf-objidl-ienumstring-reset
|
|
242
|
+
public static IEnumString_Reset_WIC_Proxy(This: IEnumString): HRESULT {
|
|
243
|
+
return WindowsCodecs.Load('IEnumString_Reset_WIC_Proxy')(This);
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/ocidl/nf-ocidl-ipropertybag2-write
|
|
247
|
+
public static IPropertyBag2_Write_Proxy(This: IPropertyBag2, cProperties: ULONG, pPropBag: LPPROPBAG2, pvarValue: LPVARIANT): HRESULT {
|
|
248
|
+
return WindowsCodecs.Load('IPropertyBag2_Write_Proxy')(This, cProperties, pPropBag, pvarValue);
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapclipper-initialize
|
|
252
|
+
public static IWICBitmapClipper_Initialize_Proxy(This: IWICBitmapClipper, pISource: IWICBitmapSource | 0n, prc: LPWICRect): HRESULT {
|
|
253
|
+
return WindowsCodecs.Load('IWICBitmapClipper_Initialize_Proxy')(This, pISource, prc);
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapcodecinfo-doessupportanimation
|
|
257
|
+
public static IWICBitmapCodecInfo_DoesSupportAnimation_Proxy(This: IWICBitmapCodecInfo, pfSupportAnimation: LPBOOL): HRESULT {
|
|
258
|
+
return WindowsCodecs.Load('IWICBitmapCodecInfo_DoesSupportAnimation_Proxy')(This, pfSupportAnimation);
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapcodecinfo-doessupportlossless
|
|
262
|
+
public static IWICBitmapCodecInfo_DoesSupportLossless_Proxy(This: IWICBitmapCodecInfo, pfSupportLossless: LPBOOL): HRESULT {
|
|
263
|
+
return WindowsCodecs.Load('IWICBitmapCodecInfo_DoesSupportLossless_Proxy')(This, pfSupportLossless);
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapcodecinfo-doessupportmultiframe
|
|
267
|
+
public static IWICBitmapCodecInfo_DoesSupportMultiframe_Proxy(This: IWICBitmapCodecInfo, pfSupportMultiframe: LPBOOL): HRESULT {
|
|
268
|
+
return WindowsCodecs.Load('IWICBitmapCodecInfo_DoesSupportMultiframe_Proxy')(This, pfSupportMultiframe);
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapcodecinfo-getcontainerformat
|
|
272
|
+
public static IWICBitmapCodecInfo_GetContainerFormat_Proxy(This: IWICBitmapCodecInfo, pguidContainerFormat: LPGUID): HRESULT {
|
|
273
|
+
return WindowsCodecs.Load('IWICBitmapCodecInfo_GetContainerFormat_Proxy')(This, pguidContainerFormat);
|
|
274
|
+
}
|
|
275
|
+
|
|
276
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapcodecinfo-getdevicemanufacturer
|
|
277
|
+
public static IWICBitmapCodecInfo_GetDeviceManufacturer_Proxy(This: IWICBitmapCodecInfo, cchDeviceManufacturer: UINT, wzDeviceManufacturer: LPWSTR | NULL, pcchActual: LPUINT): HRESULT {
|
|
278
|
+
return WindowsCodecs.Load('IWICBitmapCodecInfo_GetDeviceManufacturer_Proxy')(This, cchDeviceManufacturer, wzDeviceManufacturer, pcchActual);
|
|
279
|
+
}
|
|
280
|
+
|
|
281
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapcodecinfo-getdevicemodels
|
|
282
|
+
public static IWICBitmapCodecInfo_GetDeviceModels_Proxy(This: IWICBitmapCodecInfo, cchDeviceModels: UINT, wzDeviceModels: LPWSTR | NULL, pcchActual: LPUINT): HRESULT {
|
|
283
|
+
return WindowsCodecs.Load('IWICBitmapCodecInfo_GetDeviceModels_Proxy')(This, cchDeviceModels, wzDeviceModels, pcchActual);
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapcodecinfo-getfileextensions
|
|
287
|
+
public static IWICBitmapCodecInfo_GetFileExtensions_Proxy(This: IWICBitmapCodecInfo, cchFileExtensions: UINT, wzFileExtensions: LPWSTR | NULL, pcchActual: LPUINT): HRESULT {
|
|
288
|
+
return WindowsCodecs.Load('IWICBitmapCodecInfo_GetFileExtensions_Proxy')(This, cchFileExtensions, wzFileExtensions, pcchActual);
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapcodecinfo-getmimetypes
|
|
292
|
+
public static IWICBitmapCodecInfo_GetMimeTypes_Proxy(This: IWICBitmapCodecInfo, cchMimeTypes: UINT, wzMimeTypes: LPWSTR | NULL, pcchActual: LPUINT): HRESULT {
|
|
293
|
+
return WindowsCodecs.Load('IWICBitmapCodecInfo_GetMimeTypes_Proxy')(This, cchMimeTypes, wzMimeTypes, pcchActual);
|
|
294
|
+
}
|
|
295
|
+
|
|
296
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapdecoder-copypalette
|
|
297
|
+
public static IWICBitmapDecoder_CopyPalette_Proxy(This: IWICBitmapDecoder, pIPalette: IWICPalette | 0n): HRESULT {
|
|
298
|
+
return WindowsCodecs.Load('IWICBitmapDecoder_CopyPalette_Proxy')(This, pIPalette);
|
|
299
|
+
}
|
|
300
|
+
|
|
301
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapdecoder-getcolorcontexts
|
|
302
|
+
public static IWICBitmapDecoder_GetColorContexts_Proxy(This: IWICBitmapDecoder, cCount: UINT, ppIColorContexts: Pointer | NULL, pcActualCount: LPUINT): HRESULT {
|
|
303
|
+
return WindowsCodecs.Load('IWICBitmapDecoder_GetColorContexts_Proxy')(This, cCount, ppIColorContexts, pcActualCount);
|
|
304
|
+
}
|
|
305
|
+
|
|
306
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapdecoder-getdecoderinfo
|
|
307
|
+
public static IWICBitmapDecoder_GetDecoderInfo_Proxy(This: IWICBitmapDecoder, ppIDecoderInfo: Pointer): HRESULT {
|
|
308
|
+
return WindowsCodecs.Load('IWICBitmapDecoder_GetDecoderInfo_Proxy')(This, ppIDecoderInfo);
|
|
309
|
+
}
|
|
310
|
+
|
|
311
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapdecoder-getframecount
|
|
312
|
+
public static IWICBitmapDecoder_GetFrameCount_Proxy(This: IWICBitmapDecoder, pCount: LPUINT): HRESULT {
|
|
313
|
+
return WindowsCodecs.Load('IWICBitmapDecoder_GetFrameCount_Proxy')(This, pCount);
|
|
314
|
+
}
|
|
315
|
+
|
|
316
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapdecoder-getframe
|
|
317
|
+
public static IWICBitmapDecoder_GetFrame_Proxy(This: IWICBitmapDecoder, index: UINT, ppIBitmapFrame: Pointer): HRESULT {
|
|
318
|
+
return WindowsCodecs.Load('IWICBitmapDecoder_GetFrame_Proxy')(This, index, ppIBitmapFrame);
|
|
319
|
+
}
|
|
320
|
+
|
|
321
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapdecoder-getmetadataqueryreader
|
|
322
|
+
public static IWICBitmapDecoder_GetMetadataQueryReader_Proxy(This: IWICBitmapDecoder, ppIMetadataQueryReader: Pointer): HRESULT {
|
|
323
|
+
return WindowsCodecs.Load('IWICBitmapDecoder_GetMetadataQueryReader_Proxy')(This, ppIMetadataQueryReader);
|
|
324
|
+
}
|
|
325
|
+
|
|
326
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapdecoder-getpreview
|
|
327
|
+
public static IWICBitmapDecoder_GetPreview_Proxy(This: IWICBitmapDecoder, ppIBitmapSource: Pointer): HRESULT {
|
|
328
|
+
return WindowsCodecs.Load('IWICBitmapDecoder_GetPreview_Proxy')(This, ppIBitmapSource);
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapdecoder-getthumbnail
|
|
332
|
+
public static IWICBitmapDecoder_GetThumbnail_Proxy(This: IWICBitmapDecoder, ppIThumbnail: Pointer): HRESULT {
|
|
333
|
+
return WindowsCodecs.Load('IWICBitmapDecoder_GetThumbnail_Proxy')(This, ppIThumbnail);
|
|
334
|
+
}
|
|
335
|
+
|
|
336
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapencoder-commit
|
|
337
|
+
public static IWICBitmapEncoder_Commit_Proxy(This: IWICBitmapEncoder): HRESULT {
|
|
338
|
+
return WindowsCodecs.Load('IWICBitmapEncoder_Commit_Proxy')(This);
|
|
339
|
+
}
|
|
340
|
+
|
|
341
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapencoder-createnewframe
|
|
342
|
+
public static IWICBitmapEncoder_CreateNewFrame_Proxy(This: IWICBitmapEncoder, ppIFrameEncode: Pointer, ppIEncoderOptions: Pointer | NULL): HRESULT {
|
|
343
|
+
return WindowsCodecs.Load('IWICBitmapEncoder_CreateNewFrame_Proxy')(This, ppIFrameEncode, ppIEncoderOptions);
|
|
344
|
+
}
|
|
345
|
+
|
|
346
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapencoder-getencoderinfo
|
|
347
|
+
public static IWICBitmapEncoder_GetEncoderInfo_Proxy(This: IWICBitmapEncoder, ppIEncoderInfo: Pointer): HRESULT {
|
|
348
|
+
return WindowsCodecs.Load('IWICBitmapEncoder_GetEncoderInfo_Proxy')(This, ppIEncoderInfo);
|
|
349
|
+
}
|
|
350
|
+
|
|
351
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapencoder-getmetadataquerywriter
|
|
352
|
+
public static IWICBitmapEncoder_GetMetadataQueryWriter_Proxy(This: IWICBitmapEncoder, ppIMetadataQueryWriter: Pointer): HRESULT {
|
|
353
|
+
return WindowsCodecs.Load('IWICBitmapEncoder_GetMetadataQueryWriter_Proxy')(This, ppIMetadataQueryWriter);
|
|
354
|
+
}
|
|
355
|
+
|
|
356
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapencoder-initialize
|
|
357
|
+
public static IWICBitmapEncoder_Initialize_Proxy(This: IWICBitmapEncoder, pIStream: IStream | 0n, cacheOption: WICBitmapEncoderCacheOption): HRESULT {
|
|
358
|
+
return WindowsCodecs.Load('IWICBitmapEncoder_Initialize_Proxy')(This, pIStream, cacheOption);
|
|
359
|
+
}
|
|
360
|
+
|
|
361
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapencoder-setpalette
|
|
362
|
+
public static IWICBitmapEncoder_SetPalette_Proxy(This: IWICBitmapEncoder, pIPalette: IWICPalette | 0n): HRESULT {
|
|
363
|
+
return WindowsCodecs.Load('IWICBitmapEncoder_SetPalette_Proxy')(This, pIPalette);
|
|
364
|
+
}
|
|
365
|
+
|
|
366
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapencoder-setthumbnail
|
|
367
|
+
public static IWICBitmapEncoder_SetThumbnail_Proxy(This: IWICBitmapEncoder, pIThumbnail: IWICBitmapSource | 0n): HRESULT {
|
|
368
|
+
return WindowsCodecs.Load('IWICBitmapEncoder_SetThumbnail_Proxy')(This, pIThumbnail);
|
|
369
|
+
}
|
|
370
|
+
|
|
371
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapfliprotator-initialize
|
|
372
|
+
public static IWICBitmapFlipRotator_Initialize_Proxy(This: IWICBitmapFlipRotator, pISource: IWICBitmapSource | 0n, options: WICBitmapTransformOptions): HRESULT {
|
|
373
|
+
return WindowsCodecs.Load('IWICBitmapFlipRotator_Initialize_Proxy')(This, pISource, options);
|
|
374
|
+
}
|
|
375
|
+
|
|
376
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapframedecode-getcolorcontexts
|
|
377
|
+
public static IWICBitmapFrameDecode_GetColorContexts_Proxy(This: IWICBitmapFrameDecode, cCount: UINT, ppIColorContexts: Pointer | NULL, pcActualCount: LPUINT): HRESULT {
|
|
378
|
+
return WindowsCodecs.Load('IWICBitmapFrameDecode_GetColorContexts_Proxy')(This, cCount, ppIColorContexts, pcActualCount);
|
|
379
|
+
}
|
|
380
|
+
|
|
381
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapframedecode-getmetadataqueryreader
|
|
382
|
+
public static IWICBitmapFrameDecode_GetMetadataQueryReader_Proxy(This: IWICBitmapFrameDecode, ppIMetadataQueryReader: Pointer): HRESULT {
|
|
383
|
+
return WindowsCodecs.Load('IWICBitmapFrameDecode_GetMetadataQueryReader_Proxy')(This, ppIMetadataQueryReader);
|
|
384
|
+
}
|
|
385
|
+
|
|
386
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapframedecode-getthumbnail
|
|
387
|
+
public static IWICBitmapFrameDecode_GetThumbnail_Proxy(This: IWICBitmapFrameDecode, ppIThumbnail: Pointer): HRESULT {
|
|
388
|
+
return WindowsCodecs.Load('IWICBitmapFrameDecode_GetThumbnail_Proxy')(This, ppIThumbnail);
|
|
389
|
+
}
|
|
390
|
+
|
|
391
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapframeencode-commit
|
|
392
|
+
public static IWICBitmapFrameEncode_Commit_Proxy(This: IWICBitmapFrameEncode): HRESULT {
|
|
393
|
+
return WindowsCodecs.Load('IWICBitmapFrameEncode_Commit_Proxy')(This);
|
|
394
|
+
}
|
|
395
|
+
|
|
396
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapframeencode-getmetadataquerywriter
|
|
397
|
+
public static IWICBitmapFrameEncode_GetMetadataQueryWriter_Proxy(This: IWICBitmapFrameEncode, ppIMetadataQueryWriter: Pointer): HRESULT {
|
|
398
|
+
return WindowsCodecs.Load('IWICBitmapFrameEncode_GetMetadataQueryWriter_Proxy')(This, ppIMetadataQueryWriter);
|
|
399
|
+
}
|
|
400
|
+
|
|
401
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapframeencode-initialize
|
|
402
|
+
public static IWICBitmapFrameEncode_Initialize_Proxy(This: IWICBitmapFrameEncode, pIEncoderOptions: IPropertyBag2 | 0n): HRESULT {
|
|
403
|
+
return WindowsCodecs.Load('IWICBitmapFrameEncode_Initialize_Proxy')(This, pIEncoderOptions);
|
|
404
|
+
}
|
|
405
|
+
|
|
406
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapframeencode-setcolorcontexts
|
|
407
|
+
public static IWICBitmapFrameEncode_SetColorContexts_Proxy(This: IWICBitmapFrameEncode, cCount: UINT, ppIColorContext: Pointer): HRESULT {
|
|
408
|
+
return WindowsCodecs.Load('IWICBitmapFrameEncode_SetColorContexts_Proxy')(This, cCount, ppIColorContext);
|
|
409
|
+
}
|
|
410
|
+
|
|
411
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapframeencode-setresolution
|
|
412
|
+
public static IWICBitmapFrameEncode_SetResolution_Proxy(This: IWICBitmapFrameEncode, dpiX: DOUBLE, dpiY: DOUBLE): HRESULT {
|
|
413
|
+
return WindowsCodecs.Load('IWICBitmapFrameEncode_SetResolution_Proxy')(This, dpiX, dpiY);
|
|
414
|
+
}
|
|
415
|
+
|
|
416
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapframeencode-setsize
|
|
417
|
+
public static IWICBitmapFrameEncode_SetSize_Proxy(This: IWICBitmapFrameEncode, uiWidth: UINT, uiHeight: UINT): HRESULT {
|
|
418
|
+
return WindowsCodecs.Load('IWICBitmapFrameEncode_SetSize_Proxy')(This, uiWidth, uiHeight);
|
|
419
|
+
}
|
|
420
|
+
|
|
421
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapframeencode-setthumbnail
|
|
422
|
+
public static IWICBitmapFrameEncode_SetThumbnail_Proxy(This: IWICBitmapFrameEncode, pIThumbnail: IWICBitmapSource | 0n): HRESULT {
|
|
423
|
+
return WindowsCodecs.Load('IWICBitmapFrameEncode_SetThumbnail_Proxy')(This, pIThumbnail);
|
|
424
|
+
}
|
|
425
|
+
|
|
426
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapframeencode-writesource
|
|
427
|
+
public static IWICBitmapFrameEncode_WriteSource_Proxy(This: IWICBitmapFrameEncode, pIBitmapSource: IWICBitmapSource | 0n, prc: LPWICRect | NULL): HRESULT {
|
|
428
|
+
return WindowsCodecs.Load('IWICBitmapFrameEncode_WriteSource_Proxy')(This, pIBitmapSource, prc);
|
|
429
|
+
}
|
|
430
|
+
|
|
431
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmaplock-getdatapointer
|
|
432
|
+
public static IWICBitmapLock_GetDataPointer_STA_Proxy(This: IWICBitmapLock, pcbBufferSize: LPUINT, ppbData: LPWICInProcPointer | NULL): HRESULT {
|
|
433
|
+
return WindowsCodecs.Load('IWICBitmapLock_GetDataPointer_STA_Proxy')(This, pcbBufferSize, ppbData);
|
|
434
|
+
}
|
|
435
|
+
|
|
436
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmaplock-getstride
|
|
437
|
+
public static IWICBitmapLock_GetStride_Proxy(This: IWICBitmapLock, pcbStride: LPUINT): HRESULT {
|
|
438
|
+
return WindowsCodecs.Load('IWICBitmapLock_GetStride_Proxy')(This, pcbStride);
|
|
439
|
+
}
|
|
440
|
+
|
|
441
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapscaler-initialize
|
|
442
|
+
public static IWICBitmapScaler_Initialize_Proxy(This: IWICBitmapScaler, pISource: IWICBitmapSource | 0n, uiWidth: UINT, uiHeight: UINT, mode: WICBitmapInterpolationMode): HRESULT {
|
|
443
|
+
return WindowsCodecs.Load('IWICBitmapScaler_Initialize_Proxy')(This, pISource, uiWidth, uiHeight, mode);
|
|
444
|
+
}
|
|
445
|
+
|
|
446
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapsource-copypalette
|
|
447
|
+
public static IWICBitmapSource_CopyPalette_Proxy(This: IWICBitmapSource, pIPalette: IWICPalette | 0n): HRESULT {
|
|
448
|
+
return WindowsCodecs.Load('IWICBitmapSource_CopyPalette_Proxy')(This, pIPalette);
|
|
449
|
+
}
|
|
450
|
+
|
|
451
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapsource-copypixels
|
|
452
|
+
public static IWICBitmapSource_CopyPixels_Proxy(This: IWICBitmapSource, prc: LPWICRect | NULL, cbStride: UINT, cbBufferSize: UINT, pbBuffer: LPBYTE): HRESULT {
|
|
453
|
+
return WindowsCodecs.Load('IWICBitmapSource_CopyPixels_Proxy')(This, prc, cbStride, cbBufferSize, pbBuffer);
|
|
454
|
+
}
|
|
455
|
+
|
|
456
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapsource-getpixelformat
|
|
457
|
+
public static IWICBitmapSource_GetPixelFormat_Proxy(This: IWICBitmapSource, pPixelFormat: LPWICPixelFormatGUID): HRESULT {
|
|
458
|
+
return WindowsCodecs.Load('IWICBitmapSource_GetPixelFormat_Proxy')(This, pPixelFormat);
|
|
459
|
+
}
|
|
460
|
+
|
|
461
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapsource-getresolution
|
|
462
|
+
public static IWICBitmapSource_GetResolution_Proxy(This: IWICBitmapSource, pDpiX: LPDOUBLE, pDpiY: LPDOUBLE): HRESULT {
|
|
463
|
+
return WindowsCodecs.Load('IWICBitmapSource_GetResolution_Proxy')(This, pDpiX, pDpiY);
|
|
464
|
+
}
|
|
465
|
+
|
|
466
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmapsource-getsize
|
|
467
|
+
public static IWICBitmapSource_GetSize_Proxy(This: IWICBitmapSource, puiWidth: LPUINT, puiHeight: LPUINT): HRESULT {
|
|
468
|
+
return WindowsCodecs.Load('IWICBitmapSource_GetSize_Proxy')(This, puiWidth, puiHeight);
|
|
469
|
+
}
|
|
470
|
+
|
|
471
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmap-lock
|
|
472
|
+
public static IWICBitmap_Lock_Proxy(This: IWICBitmap, prcLock: LPWICRect | NULL, flags: DWORD, ppILock: Pointer): HRESULT {
|
|
473
|
+
return WindowsCodecs.Load('IWICBitmap_Lock_Proxy')(This, prcLock, flags, ppILock);
|
|
474
|
+
}
|
|
475
|
+
|
|
476
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmap-setpalette
|
|
477
|
+
public static IWICBitmap_SetPalette_Proxy(This: IWICBitmap, pIPalette: IWICPalette | 0n): HRESULT {
|
|
478
|
+
return WindowsCodecs.Load('IWICBitmap_SetPalette_Proxy')(This, pIPalette);
|
|
479
|
+
}
|
|
480
|
+
|
|
481
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicbitmap-setresolution
|
|
482
|
+
public static IWICBitmap_SetResolution_Proxy(This: IWICBitmap, dpiX: DOUBLE, dpiY: DOUBLE): HRESULT {
|
|
483
|
+
return WindowsCodecs.Load('IWICBitmap_SetResolution_Proxy')(This, dpiX, dpiY);
|
|
484
|
+
}
|
|
485
|
+
|
|
486
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwiccolorcontext-initializefrommemory
|
|
487
|
+
public static IWICColorContext_InitializeFromMemory_Proxy(This: IWICColorContext, pbBuffer: LPBYTE, cbBufferSize: UINT): HRESULT {
|
|
488
|
+
return WindowsCodecs.Load('IWICColorContext_InitializeFromMemory_Proxy')(This, pbBuffer, cbBufferSize);
|
|
489
|
+
}
|
|
490
|
+
|
|
491
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodecsdk/nf-wincodecsdk-iwiccomponentfactory-createmetadatawriterfromreader
|
|
492
|
+
public static IWICComponentFactory_CreateMetadataWriterFromReader_Proxy(This: IWICComponentFactory, pIReader: IWICMetadataReader | 0n, pguidVendor: LPGUID | NULL, ppIWriter: Pointer): HRESULT {
|
|
493
|
+
return WindowsCodecs.Load('IWICComponentFactory_CreateMetadataWriterFromReader_Proxy')(This, pIReader, pguidVendor, ppIWriter);
|
|
494
|
+
}
|
|
495
|
+
|
|
496
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodecsdk/nf-wincodecsdk-iwiccomponentfactory-createquerywriterfromblockwriter
|
|
497
|
+
public static IWICComponentFactory_CreateQueryWriterFromBlockWriter_Proxy(This: IWICComponentFactory, pIBlockWriter: IWICMetadataBlockWriter | 0n, ppIQueryWriter: Pointer): HRESULT {
|
|
498
|
+
return WindowsCodecs.Load('IWICComponentFactory_CreateQueryWriterFromBlockWriter_Proxy')(This, pIBlockWriter, ppIQueryWriter);
|
|
499
|
+
}
|
|
500
|
+
|
|
501
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwiccomponentinfo-getauthor
|
|
502
|
+
public static IWICComponentInfo_GetAuthor_Proxy(This: IWICComponentInfo, cchAuthor: UINT, wzAuthor: LPWSTR | NULL, pcchActual: LPUINT): HRESULT {
|
|
503
|
+
return WindowsCodecs.Load('IWICComponentInfo_GetAuthor_Proxy')(This, cchAuthor, wzAuthor, pcchActual);
|
|
504
|
+
}
|
|
505
|
+
|
|
506
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwiccomponentinfo-getclsid
|
|
507
|
+
public static IWICComponentInfo_GetCLSID_Proxy(This: IWICComponentInfo, pclsid: LPGUID): HRESULT {
|
|
508
|
+
return WindowsCodecs.Load('IWICComponentInfo_GetCLSID_Proxy')(This, pclsid);
|
|
509
|
+
}
|
|
510
|
+
|
|
511
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwiccomponentinfo-getfriendlyname
|
|
512
|
+
public static IWICComponentInfo_GetFriendlyName_Proxy(This: IWICComponentInfo, cchFriendlyName: UINT, wzFriendlyName: LPWSTR | NULL, pcchActual: LPUINT): HRESULT {
|
|
513
|
+
return WindowsCodecs.Load('IWICComponentInfo_GetFriendlyName_Proxy')(This, cchFriendlyName, wzFriendlyName, pcchActual);
|
|
514
|
+
}
|
|
515
|
+
|
|
516
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwiccomponentinfo-getspecversion
|
|
517
|
+
public static IWICComponentInfo_GetSpecVersion_Proxy(This: IWICComponentInfo, cchSpecVersion: UINT, wzSpecVersion: LPWSTR | NULL, pcchActual: LPUINT): HRESULT {
|
|
518
|
+
return WindowsCodecs.Load('IWICComponentInfo_GetSpecVersion_Proxy')(This, cchSpecVersion, wzSpecVersion, pcchActual);
|
|
519
|
+
}
|
|
520
|
+
|
|
521
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwiccomponentinfo-getversion
|
|
522
|
+
public static IWICComponentInfo_GetVersion_Proxy(This: IWICComponentInfo, cchVersion: UINT, wzVersion: LPWSTR | NULL, pcchActual: LPUINT): HRESULT {
|
|
523
|
+
return WindowsCodecs.Load('IWICComponentInfo_GetVersion_Proxy')(This, cchVersion, wzVersion, pcchActual);
|
|
524
|
+
}
|
|
525
|
+
|
|
526
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicfastmetadataencoder-commit
|
|
527
|
+
public static IWICFastMetadataEncoder_Commit_Proxy(This: IWICFastMetadataEncoder): HRESULT {
|
|
528
|
+
return WindowsCodecs.Load('IWICFastMetadataEncoder_Commit_Proxy')(This);
|
|
529
|
+
}
|
|
530
|
+
|
|
531
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicfastmetadataencoder-getmetadataquerywriter
|
|
532
|
+
public static IWICFastMetadataEncoder_GetMetadataQueryWriter_Proxy(This: IWICFastMetadataEncoder, ppIMetadataQueryWriter: Pointer): HRESULT {
|
|
533
|
+
return WindowsCodecs.Load('IWICFastMetadataEncoder_GetMetadataQueryWriter_Proxy')(This, ppIMetadataQueryWriter);
|
|
534
|
+
}
|
|
535
|
+
|
|
536
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicformatconverter-initialize
|
|
537
|
+
public static IWICFormatConverter_Initialize_Proxy(
|
|
538
|
+
This: IWICFormatConverter,
|
|
539
|
+
pISource: IWICBitmapSource | 0n,
|
|
540
|
+
dstFormat: REFWICPixelFormatGUID,
|
|
541
|
+
dither: WICBitmapDitherType,
|
|
542
|
+
pIPalette: IWICPalette | 0n,
|
|
543
|
+
alphaThresholdPercent: DOUBLE,
|
|
544
|
+
paletteTranslate: WICBitmapPaletteType,
|
|
545
|
+
): HRESULT {
|
|
546
|
+
return WindowsCodecs.Load('IWICFormatConverter_Initialize_Proxy')(This, pISource, dstFormat, dither, pIPalette, alphaThresholdPercent, paletteTranslate);
|
|
547
|
+
}
|
|
548
|
+
|
|
549
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicimagingfactory-createbitmapclipper
|
|
550
|
+
public static IWICImagingFactory_CreateBitmapClipper_Proxy(This: IWICImagingFactory, ppIBitmapClipper: Pointer): HRESULT {
|
|
551
|
+
return WindowsCodecs.Load('IWICImagingFactory_CreateBitmapClipper_Proxy')(This, ppIBitmapClipper);
|
|
552
|
+
}
|
|
553
|
+
|
|
554
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicimagingfactory-createbitmapfliprotator
|
|
555
|
+
public static IWICImagingFactory_CreateBitmapFlipRotator_Proxy(This: IWICImagingFactory, ppIBitmapFlipRotator: Pointer): HRESULT {
|
|
556
|
+
return WindowsCodecs.Load('IWICImagingFactory_CreateBitmapFlipRotator_Proxy')(This, ppIBitmapFlipRotator);
|
|
557
|
+
}
|
|
558
|
+
|
|
559
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicimagingfactory-createbitmapfromhbitmap
|
|
560
|
+
public static IWICImagingFactory_CreateBitmapFromHBITMAP_Proxy(This: IWICImagingFactory, hBitmap: HBITMAP, hPalette: HPALETTE | 0n, options: WICBitmapAlphaChannelOption, ppIBitmap: Pointer): HRESULT {
|
|
561
|
+
return WindowsCodecs.Load('IWICImagingFactory_CreateBitmapFromHBITMAP_Proxy')(This, hBitmap, hPalette, options, ppIBitmap);
|
|
562
|
+
}
|
|
563
|
+
|
|
564
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicimagingfactory-createbitmapfromhicon
|
|
565
|
+
public static IWICImagingFactory_CreateBitmapFromHICON_Proxy(This: IWICImagingFactory, hIcon: HICON, ppIBitmap: Pointer): HRESULT {
|
|
566
|
+
return WindowsCodecs.Load('IWICImagingFactory_CreateBitmapFromHICON_Proxy')(This, hIcon, ppIBitmap);
|
|
567
|
+
}
|
|
568
|
+
|
|
569
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicimagingfactory-createbitmapfrommemory
|
|
570
|
+
public static IWICImagingFactory_CreateBitmapFromMemory_Proxy(
|
|
571
|
+
This: IWICImagingFactory,
|
|
572
|
+
uiWidth: UINT,
|
|
573
|
+
uiHeight: UINT,
|
|
574
|
+
pixelFormat: REFWICPixelFormatGUID,
|
|
575
|
+
cbStride: UINT,
|
|
576
|
+
cbBufferSize: UINT,
|
|
577
|
+
pbBuffer: LPBYTE,
|
|
578
|
+
ppIBitmap: Pointer,
|
|
579
|
+
): HRESULT {
|
|
580
|
+
return WindowsCodecs.Load('IWICImagingFactory_CreateBitmapFromMemory_Proxy')(This, uiWidth, uiHeight, pixelFormat, cbStride, cbBufferSize, pbBuffer, ppIBitmap);
|
|
581
|
+
}
|
|
582
|
+
|
|
583
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicimagingfactory-createbitmapfromsource
|
|
584
|
+
public static IWICImagingFactory_CreateBitmapFromSource_Proxy(This: IWICImagingFactory, pIBitmapSource: IWICBitmapSource | 0n, option: WICBitmapCreateCacheOption, ppIBitmap: Pointer): HRESULT {
|
|
585
|
+
return WindowsCodecs.Load('IWICImagingFactory_CreateBitmapFromSource_Proxy')(This, pIBitmapSource, option, ppIBitmap);
|
|
586
|
+
}
|
|
587
|
+
|
|
588
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicimagingfactory-createbitmapscaler
|
|
589
|
+
public static IWICImagingFactory_CreateBitmapScaler_Proxy(This: IWICImagingFactory, ppIBitmapScaler: Pointer): HRESULT {
|
|
590
|
+
return WindowsCodecs.Load('IWICImagingFactory_CreateBitmapScaler_Proxy')(This, ppIBitmapScaler);
|
|
591
|
+
}
|
|
592
|
+
|
|
593
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicimagingfactory-createbitmap
|
|
594
|
+
public static IWICImagingFactory_CreateBitmap_Proxy(This: IWICImagingFactory, uiWidth: UINT, uiHeight: UINT, pixelFormat: REFWICPixelFormatGUID, option: WICBitmapCreateCacheOption, ppIBitmap: Pointer): HRESULT {
|
|
595
|
+
return WindowsCodecs.Load('IWICImagingFactory_CreateBitmap_Proxy')(This, uiWidth, uiHeight, pixelFormat, option, ppIBitmap);
|
|
596
|
+
}
|
|
597
|
+
|
|
598
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicimagingfactory-createcomponentinfo
|
|
599
|
+
public static IWICImagingFactory_CreateComponentInfo_Proxy(This: IWICImagingFactory, clsidComponent: REFCLSID, ppIInfo: Pointer): HRESULT {
|
|
600
|
+
return WindowsCodecs.Load('IWICImagingFactory_CreateComponentInfo_Proxy')(This, clsidComponent, ppIInfo);
|
|
601
|
+
}
|
|
602
|
+
|
|
603
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicimagingfactory-createdecoderfromfilehandle
|
|
604
|
+
public static IWICImagingFactory_CreateDecoderFromFileHandle_Proxy(This: IWICImagingFactory, hFile: ULONG_PTR, pguidVendor: LPGUID | NULL, metadataOptions: WICDecodeOptions, ppIDecoder: Pointer): HRESULT {
|
|
605
|
+
return WindowsCodecs.Load('IWICImagingFactory_CreateDecoderFromFileHandle_Proxy')(This, hFile, pguidVendor, metadataOptions, ppIDecoder);
|
|
606
|
+
}
|
|
607
|
+
|
|
608
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicimagingfactory-createdecoderfromfilename
|
|
609
|
+
public static IWICImagingFactory_CreateDecoderFromFilename_Proxy(This: IWICImagingFactory, wzFilename: LPCWSTR, pguidVendor: LPGUID | NULL, dwDesiredAccess: DWORD, metadataOptions: WICDecodeOptions, ppIDecoder: Pointer): HRESULT {
|
|
610
|
+
return WindowsCodecs.Load('IWICImagingFactory_CreateDecoderFromFilename_Proxy')(This, wzFilename, pguidVendor, dwDesiredAccess, metadataOptions, ppIDecoder);
|
|
611
|
+
}
|
|
612
|
+
|
|
613
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicimagingfactory-createdecoderfromstream
|
|
614
|
+
public static IWICImagingFactory_CreateDecoderFromStream_Proxy(This: IWICImagingFactory, pIStream: IStream | 0n, pguidVendor: LPGUID | NULL, metadataOptions: WICDecodeOptions, ppIDecoder: Pointer): HRESULT {
|
|
615
|
+
return WindowsCodecs.Load('IWICImagingFactory_CreateDecoderFromStream_Proxy')(This, pIStream, pguidVendor, metadataOptions, ppIDecoder);
|
|
616
|
+
}
|
|
617
|
+
|
|
618
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicimagingfactory-createencoder
|
|
619
|
+
public static IWICImagingFactory_CreateEncoder_Proxy(This: IWICImagingFactory, guidContainerFormat: REFGUID, pguidVendor: LPGUID | NULL, ppIEncoder: Pointer): HRESULT {
|
|
620
|
+
return WindowsCodecs.Load('IWICImagingFactory_CreateEncoder_Proxy')(This, guidContainerFormat, pguidVendor, ppIEncoder);
|
|
621
|
+
}
|
|
622
|
+
|
|
623
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicimagingfactory-createfastmetadataencoderfromdecoder
|
|
624
|
+
public static IWICImagingFactory_CreateFastMetadataEncoderFromDecoder_Proxy(This: IWICImagingFactory, pIDecoder: IWICBitmapDecoder | 0n, ppIFastEncoder: Pointer): HRESULT {
|
|
625
|
+
return WindowsCodecs.Load('IWICImagingFactory_CreateFastMetadataEncoderFromDecoder_Proxy')(This, pIDecoder, ppIFastEncoder);
|
|
626
|
+
}
|
|
627
|
+
|
|
628
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicimagingfactory-createfastmetadataencoderfromframedecode
|
|
629
|
+
public static IWICImagingFactory_CreateFastMetadataEncoderFromFrameDecode_Proxy(This: IWICImagingFactory, pIFrameDecoder: IWICBitmapFrameDecode | 0n, ppIFastEncoder: Pointer): HRESULT {
|
|
630
|
+
return WindowsCodecs.Load('IWICImagingFactory_CreateFastMetadataEncoderFromFrameDecode_Proxy')(This, pIFrameDecoder, ppIFastEncoder);
|
|
631
|
+
}
|
|
632
|
+
|
|
633
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicimagingfactory-createformatconverter
|
|
634
|
+
public static IWICImagingFactory_CreateFormatConverter_Proxy(This: IWICImagingFactory, ppIFormatConverter: Pointer): HRESULT {
|
|
635
|
+
return WindowsCodecs.Load('IWICImagingFactory_CreateFormatConverter_Proxy')(This, ppIFormatConverter);
|
|
636
|
+
}
|
|
637
|
+
|
|
638
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicimagingfactory-createpalette
|
|
639
|
+
public static IWICImagingFactory_CreatePalette_Proxy(This: IWICImagingFactory, ppIPalette: Pointer): HRESULT {
|
|
640
|
+
return WindowsCodecs.Load('IWICImagingFactory_CreatePalette_Proxy')(This, ppIPalette);
|
|
641
|
+
}
|
|
642
|
+
|
|
643
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicimagingfactory-createquerywriterfromreader
|
|
644
|
+
public static IWICImagingFactory_CreateQueryWriterFromReader_Proxy(This: IWICImagingFactory, pIQueryReader: IWICMetadataQueryReader | 0n, pguidVendor: LPGUID | NULL, ppIQueryWriter: Pointer): HRESULT {
|
|
645
|
+
return WindowsCodecs.Load('IWICImagingFactory_CreateQueryWriterFromReader_Proxy')(This, pIQueryReader, pguidVendor, ppIQueryWriter);
|
|
646
|
+
}
|
|
647
|
+
|
|
648
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicimagingfactory-createquerywriter
|
|
649
|
+
public static IWICImagingFactory_CreateQueryWriter_Proxy(This: IWICImagingFactory, guidMetadataFormat: REFGUID, pguidVendor: LPGUID | NULL, ppIQueryWriter: Pointer): HRESULT {
|
|
650
|
+
return WindowsCodecs.Load('IWICImagingFactory_CreateQueryWriter_Proxy')(This, guidMetadataFormat, pguidVendor, ppIQueryWriter);
|
|
651
|
+
}
|
|
652
|
+
|
|
653
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicimagingfactory-createstream
|
|
654
|
+
public static IWICImagingFactory_CreateStream_Proxy(This: IWICImagingFactory, ppIWICStream: Pointer): HRESULT {
|
|
655
|
+
return WindowsCodecs.Load('IWICImagingFactory_CreateStream_Proxy')(This, ppIWICStream);
|
|
656
|
+
}
|
|
657
|
+
|
|
658
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodecsdk/nf-wincodecsdk-iwicmetadatablockreader-getcount
|
|
659
|
+
public static IWICMetadataBlockReader_GetCount_Proxy(This: IWICMetadataBlockReader, pcCount: LPUINT): HRESULT {
|
|
660
|
+
return WindowsCodecs.Load('IWICMetadataBlockReader_GetCount_Proxy')(This, pcCount);
|
|
661
|
+
}
|
|
662
|
+
|
|
663
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodecsdk/nf-wincodecsdk-iwicmetadatablockreader-getreaderbyindex
|
|
664
|
+
public static IWICMetadataBlockReader_GetReaderByIndex_Proxy(This: IWICMetadataBlockReader, nIndex: UINT, ppIMetadataReader: Pointer): HRESULT {
|
|
665
|
+
return WindowsCodecs.Load('IWICMetadataBlockReader_GetReaderByIndex_Proxy')(This, nIndex, ppIMetadataReader);
|
|
666
|
+
}
|
|
667
|
+
|
|
668
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicmetadataqueryreader-getcontainerformat
|
|
669
|
+
public static IWICMetadataQueryReader_GetContainerFormat_Proxy(This: IWICMetadataQueryReader, pguidContainerFormat: LPGUID): HRESULT {
|
|
670
|
+
return WindowsCodecs.Load('IWICMetadataQueryReader_GetContainerFormat_Proxy')(This, pguidContainerFormat);
|
|
671
|
+
}
|
|
672
|
+
|
|
673
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicmetadataqueryreader-getenumerator
|
|
674
|
+
public static IWICMetadataQueryReader_GetEnumerator_Proxy(This: IWICMetadataQueryReader, ppIEnumString: Pointer): HRESULT {
|
|
675
|
+
return WindowsCodecs.Load('IWICMetadataQueryReader_GetEnumerator_Proxy')(This, ppIEnumString);
|
|
676
|
+
}
|
|
677
|
+
|
|
678
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicmetadataqueryreader-getlocation
|
|
679
|
+
public static IWICMetadataQueryReader_GetLocation_Proxy(This: IWICMetadataQueryReader, cchMaxLength: UINT, wzNamespace: LPWSTR | NULL, pcchActualLength: LPUINT): HRESULT {
|
|
680
|
+
return WindowsCodecs.Load('IWICMetadataQueryReader_GetLocation_Proxy')(This, cchMaxLength, wzNamespace, pcchActualLength);
|
|
681
|
+
}
|
|
682
|
+
|
|
683
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicmetadataqueryreader-getmetadatabyname
|
|
684
|
+
public static IWICMetadataQueryReader_GetMetadataByName_Proxy(This: IWICMetadataQueryReader, wzName: LPCWSTR, pvarValue: LPPROPVARIANT | NULL): HRESULT {
|
|
685
|
+
return WindowsCodecs.Load('IWICMetadataQueryReader_GetMetadataByName_Proxy')(This, wzName, pvarValue);
|
|
686
|
+
}
|
|
687
|
+
|
|
688
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicmetadataquerywriter-removemetadatabyname
|
|
689
|
+
public static IWICMetadataQueryWriter_RemoveMetadataByName_Proxy(This: IWICMetadataQueryWriter, wzName: LPCWSTR): HRESULT {
|
|
690
|
+
return WindowsCodecs.Load('IWICMetadataQueryWriter_RemoveMetadataByName_Proxy')(This, wzName);
|
|
691
|
+
}
|
|
692
|
+
|
|
693
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicmetadataquerywriter-setmetadatabyname
|
|
694
|
+
public static IWICMetadataQueryWriter_SetMetadataByName_Proxy(This: IWICMetadataQueryWriter, wzName: LPCWSTR, pvarValue: LPPROPVARIANT): HRESULT {
|
|
695
|
+
return WindowsCodecs.Load('IWICMetadataQueryWriter_SetMetadataByName_Proxy')(This, wzName, pvarValue);
|
|
696
|
+
}
|
|
697
|
+
|
|
698
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicpalette-getcolorcount
|
|
699
|
+
public static IWICPalette_GetColorCount_Proxy(This: IWICPalette, pcCount: LPUINT): HRESULT {
|
|
700
|
+
return WindowsCodecs.Load('IWICPalette_GetColorCount_Proxy')(This, pcCount);
|
|
701
|
+
}
|
|
702
|
+
|
|
703
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicpalette-getcolors
|
|
704
|
+
public static IWICPalette_GetColors_Proxy(This: IWICPalette, cCount: UINT, pColors: LPWICColor, pcActualColors: LPUINT): HRESULT {
|
|
705
|
+
return WindowsCodecs.Load('IWICPalette_GetColors_Proxy')(This, cCount, pColors, pcActualColors);
|
|
706
|
+
}
|
|
707
|
+
|
|
708
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicpalette-gettype
|
|
709
|
+
public static IWICPalette_GetType_Proxy(This: IWICPalette, pePaletteType: LPWICBitmapPaletteType): HRESULT {
|
|
710
|
+
return WindowsCodecs.Load('IWICPalette_GetType_Proxy')(This, pePaletteType);
|
|
711
|
+
}
|
|
712
|
+
|
|
713
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicpalette-hasalpha
|
|
714
|
+
public static IWICPalette_HasAlpha_Proxy(This: IWICPalette, pfHasAlpha: LPBOOL): HRESULT {
|
|
715
|
+
return WindowsCodecs.Load('IWICPalette_HasAlpha_Proxy')(This, pfHasAlpha);
|
|
716
|
+
}
|
|
717
|
+
|
|
718
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicpalette-initializecustom
|
|
719
|
+
public static IWICPalette_InitializeCustom_Proxy(This: IWICPalette, pColors: LPWICColor, cCount: UINT): HRESULT {
|
|
720
|
+
return WindowsCodecs.Load('IWICPalette_InitializeCustom_Proxy')(This, pColors, cCount);
|
|
721
|
+
}
|
|
722
|
+
|
|
723
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicpalette-initializefrombitmap
|
|
724
|
+
public static IWICPalette_InitializeFromBitmap_Proxy(This: IWICPalette, pISurface: IWICBitmapSource | 0n, cCount: UINT, fAddTransparentColor: BOOL): HRESULT {
|
|
725
|
+
return WindowsCodecs.Load('IWICPalette_InitializeFromBitmap_Proxy')(This, pISurface, cCount, fAddTransparentColor);
|
|
726
|
+
}
|
|
727
|
+
|
|
728
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicpalette-initializefrompalette
|
|
729
|
+
public static IWICPalette_InitializeFromPalette_Proxy(This: IWICPalette, pIPalette: IWICPalette | 0n): HRESULT {
|
|
730
|
+
return WindowsCodecs.Load('IWICPalette_InitializeFromPalette_Proxy')(This, pIPalette);
|
|
731
|
+
}
|
|
732
|
+
|
|
733
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicpalette-initializepredefined
|
|
734
|
+
public static IWICPalette_InitializePredefined_Proxy(This: IWICPalette, ePaletteType: WICBitmapPaletteType, fAddTransparentColor: BOOL): HRESULT {
|
|
735
|
+
return WindowsCodecs.Load('IWICPalette_InitializePredefined_Proxy')(This, ePaletteType, fAddTransparentColor);
|
|
736
|
+
}
|
|
737
|
+
|
|
738
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicpixelformatinfo-getbitsperpixel
|
|
739
|
+
public static IWICPixelFormatInfo_GetBitsPerPixel_Proxy(This: IWICPixelFormatInfo, puiBitsPerPixel: LPUINT): HRESULT {
|
|
740
|
+
return WindowsCodecs.Load('IWICPixelFormatInfo_GetBitsPerPixel_Proxy')(This, puiBitsPerPixel);
|
|
741
|
+
}
|
|
742
|
+
|
|
743
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicpixelformatinfo-getchannelcount
|
|
744
|
+
public static IWICPixelFormatInfo_GetChannelCount_Proxy(This: IWICPixelFormatInfo, puiChannelCount: LPUINT): HRESULT {
|
|
745
|
+
return WindowsCodecs.Load('IWICPixelFormatInfo_GetChannelCount_Proxy')(This, puiChannelCount);
|
|
746
|
+
}
|
|
747
|
+
|
|
748
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicpixelformatinfo-getchannelmask
|
|
749
|
+
public static IWICPixelFormatInfo_GetChannelMask_Proxy(This: IWICPixelFormatInfo, uiChannelIndex: UINT, cbMaskBuffer: UINT, pbMaskBuffer: LPBYTE | NULL, pcbActual: LPUINT): HRESULT {
|
|
750
|
+
return WindowsCodecs.Load('IWICPixelFormatInfo_GetChannelMask_Proxy')(This, uiChannelIndex, cbMaskBuffer, pbMaskBuffer, pcbActual);
|
|
751
|
+
}
|
|
752
|
+
|
|
753
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicstream-initializefromistream
|
|
754
|
+
public static IWICStream_InitializeFromIStream_Proxy(This: IWICStream, pIStream: IStream | 0n): HRESULT {
|
|
755
|
+
return WindowsCodecs.Load('IWICStream_InitializeFromIStream_Proxy')(This, pIStream);
|
|
756
|
+
}
|
|
757
|
+
|
|
758
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-iwicstream-initializefrommemory
|
|
759
|
+
public static IWICStream_InitializeFromMemory_Proxy(This: IWICStream, pbBuffer: WICInProcPointer, cbBufferSize: DWORD): HRESULT {
|
|
760
|
+
return WindowsCodecs.Load('IWICStream_InitializeFromMemory_Proxy')(This, pbBuffer, cbBufferSize);
|
|
761
|
+
}
|
|
762
|
+
|
|
763
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-wicconvertbitmapsource
|
|
764
|
+
public static WICConvertBitmapSource(dstFormat: REFWICPixelFormatGUID, pISrc: IWICBitmapSource, ppIDst: Pointer): HRESULT {
|
|
765
|
+
return WindowsCodecs.Load('WICConvertBitmapSource')(dstFormat, pISrc, ppIDst);
|
|
766
|
+
}
|
|
767
|
+
|
|
768
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-wiccreatebitmapfromsection
|
|
769
|
+
public static WICCreateBitmapFromSection(width: UINT, height: UINT, pixelFormat: REFWICPixelFormatGUID, hSection: HANDLE, stride: UINT, offset: UINT, ppIBitmap: Pointer): HRESULT {
|
|
770
|
+
return WindowsCodecs.Load('WICCreateBitmapFromSection')(width, height, pixelFormat, hSection, stride, offset, ppIBitmap);
|
|
771
|
+
}
|
|
772
|
+
|
|
773
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-wiccreatebitmapfromsectionex
|
|
774
|
+
public static WICCreateBitmapFromSectionEx(width: UINT, height: UINT, pixelFormat: REFWICPixelFormatGUID, hSection: HANDLE, stride: UINT, offset: UINT, desiredAccessLevel: WICSectionAccessLevel, ppIBitmap: Pointer): HRESULT {
|
|
775
|
+
return WindowsCodecs.Load('WICCreateBitmapFromSectionEx')(width, height, pixelFormat, hSection, stride, offset, desiredAccessLevel, ppIBitmap);
|
|
776
|
+
}
|
|
777
|
+
|
|
778
|
+
// https://learn.microsoft.com/en-us/windows/win32/wic/-wic-api-proxyfunctions
|
|
779
|
+
public static WICCreateColorContext_Proxy(pICodecFactory: IWICImagingFactory, ppIWICColorContext: Pointer): HRESULT {
|
|
780
|
+
return WindowsCodecs.Load('WICCreateColorContext_Proxy')(pICodecFactory, ppIWICColorContext);
|
|
781
|
+
}
|
|
782
|
+
|
|
783
|
+
// https://learn.microsoft.com/en-us/windows/win32/wic/-wic-api-proxyfunctions
|
|
784
|
+
public static WICCreateImagingFactory_Proxy(SDKVersion: UINT, ppIImagingFactory: Pointer): HRESULT {
|
|
785
|
+
return WindowsCodecs.Load('WICCreateImagingFactory_Proxy')(SDKVersion, ppIImagingFactory);
|
|
786
|
+
}
|
|
787
|
+
|
|
788
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodecsdk/nf-wincodecsdk-wicgetmetadatacontentsize
|
|
789
|
+
public static WICGetMetadataContentSize(guidContainerFormat: REFGUID, pIWriter: IWICMetadataWriter, pcbSize: LPULARGE_INTEGER): HRESULT {
|
|
790
|
+
return WindowsCodecs.Load('WICGetMetadataContentSize')(guidContainerFormat, pIWriter, pcbSize);
|
|
791
|
+
}
|
|
792
|
+
|
|
793
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-wicmapguidtoshortname
|
|
794
|
+
public static WICMapGuidToShortName(guid: REFGUID, cchName: UINT, wzName: LPWSTR | NULL, pcchActual: LPUINT): HRESULT {
|
|
795
|
+
return WindowsCodecs.Load('WICMapGuidToShortName')(guid, cchName, wzName, pcchActual);
|
|
796
|
+
}
|
|
797
|
+
|
|
798
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-wicmapschematoname
|
|
799
|
+
public static WICMapSchemaToName(guidMetadataFormat: REFGUID, pwzSchema: LPWSTR, cchName: UINT, wzName: LPWSTR | NULL, pcchActual: LPUINT): HRESULT {
|
|
800
|
+
return WindowsCodecs.Load('WICMapSchemaToName')(guidMetadataFormat, pwzSchema, cchName, wzName, pcchActual);
|
|
801
|
+
}
|
|
802
|
+
|
|
803
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodec/nf-wincodec-wicmapshortnametoguid
|
|
804
|
+
public static WICMapShortNameToGuid(wzName: PCWSTR, pguid: LPGUID): HRESULT {
|
|
805
|
+
return WindowsCodecs.Load('WICMapShortNameToGuid')(wzName, pguid);
|
|
806
|
+
}
|
|
807
|
+
|
|
808
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodecsdk/nf-wincodecsdk-wicmatchmetadatacontent
|
|
809
|
+
public static WICMatchMetadataContent(guidContainerFormat: REFGUID, pguidVendor: LPGUID | NULL, pIStream: IStream, pguidMetadataFormat: LPGUID): HRESULT {
|
|
810
|
+
return WindowsCodecs.Load('WICMatchMetadataContent')(guidContainerFormat, pguidVendor, pIStream, pguidMetadataFormat);
|
|
811
|
+
}
|
|
812
|
+
|
|
813
|
+
// https://learn.microsoft.com/en-us/windows/win32/api/wincodecsdk/nf-wincodecsdk-wicserializemetadatacontent
|
|
814
|
+
public static WICSerializeMetadataContent(guidContainerFormat: REFGUID, pIWriter: IWICMetadataWriter, dwPersistOptions: DWORD, pIStream: IStream): HRESULT {
|
|
815
|
+
return WindowsCodecs.Load('WICSerializeMetadataContent')(guidContainerFormat, pIWriter, dwPersistOptions, pIStream);
|
|
816
|
+
}
|
|
817
|
+
|
|
818
|
+
// https://learn.microsoft.com/en-us/windows/win32/wic/-wic-api-proxyfunctions
|
|
819
|
+
public static WICSetEncoderFormat_Proxy(pSourceIn: IWICBitmapSource, pIPalette: IWICPalette, pIFrameEncode: IWICBitmapFrameEncode, ppSourceOut: Pointer): HRESULT {
|
|
820
|
+
return WindowsCodecs.Load('WICSetEncoderFormat_Proxy')(pSourceIn, pIPalette, pIFrameEncode, ppSourceOut);
|
|
821
|
+
}
|
|
822
|
+
}
|
|
823
|
+
|
|
824
|
+
export default WindowsCodecs;
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
import type { Pointer } from 'bun:ffi';
|
|
2
|
+
|
|
3
|
+
export type { BOOL, DWORD, HANDLE, HRESULT, LPCWSTR, LPWSTR, NULL, UINT, ULONG, ULONG_PTR } from '@bun-win32/core';
|
|
4
|
+
|
|
5
|
+
export const WINCODEC_SDK_VERSION = 0x0237;
|
|
6
|
+
|
|
7
|
+
export enum WICBitmapAlphaChannelOption {
|
|
8
|
+
WICBitmapIgnoreAlpha = 0x0000_0002,
|
|
9
|
+
WICBitmapUseAlpha = 0x0000_0000,
|
|
10
|
+
WICBitmapUsePremultipliedAlpha = 0x0000_0001,
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export enum WICBitmapCreateCacheOption {
|
|
14
|
+
WICBitmapCacheOnDemand = 0x0000_0001,
|
|
15
|
+
WICBitmapCacheOnLoad = 0x0000_0002,
|
|
16
|
+
WICBitmapNoCache = 0x0000_0000,
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export enum WICBitmapDitherType {
|
|
20
|
+
WICBitmapDitherTypeDualSpiral4x4 = 0x0000_0006,
|
|
21
|
+
WICBitmapDitherTypeDualSpiral8x8 = 0x0000_0007,
|
|
22
|
+
WICBitmapDitherTypeErrorDiffusion = 0x0000_0008,
|
|
23
|
+
WICBitmapDitherTypeNone = 0x0000_0000,
|
|
24
|
+
WICBitmapDitherTypeOrdered16x16 = 0x0000_0003,
|
|
25
|
+
WICBitmapDitherTypeOrdered4x4 = 0x0000_0001,
|
|
26
|
+
WICBitmapDitherTypeOrdered8x8 = 0x0000_0002,
|
|
27
|
+
WICBitmapDitherTypeSolid = 0x0000_0000,
|
|
28
|
+
WICBitmapDitherTypeSpiral4x4 = 0x0000_0004,
|
|
29
|
+
WICBitmapDitherTypeSpiral8x8 = 0x0000_0005,
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export enum WICBitmapEncoderCacheOption {
|
|
33
|
+
WICBitmapEncoderCacheInMemory = 0x0000_0000,
|
|
34
|
+
WICBitmapEncoderCacheTempFile = 0x0000_0001,
|
|
35
|
+
WICBitmapEncoderNoCache = 0x0000_0002,
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
export enum WICBitmapInterpolationMode {
|
|
39
|
+
WICBitmapInterpolationModeCubic = 0x0000_0002,
|
|
40
|
+
WICBitmapInterpolationModeFant = 0x0000_0003,
|
|
41
|
+
WICBitmapInterpolationModeHighQualityCubic = 0x0000_0004,
|
|
42
|
+
WICBitmapInterpolationModeLinear = 0x0000_0001,
|
|
43
|
+
WICBitmapInterpolationModeNearestNeighbor = 0x0000_0000,
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export enum WICBitmapPaletteType {
|
|
47
|
+
WICBitmapPaletteTypeCustom = 0x0000_0000,
|
|
48
|
+
WICBitmapPaletteTypeFixedBW = 0x0000_0002,
|
|
49
|
+
WICBitmapPaletteTypeFixedGray16 = 0x0000_000b,
|
|
50
|
+
WICBitmapPaletteTypeFixedGray256 = 0x0000_000c,
|
|
51
|
+
WICBitmapPaletteTypeFixedGray4 = 0x0000_000a,
|
|
52
|
+
WICBitmapPaletteTypeFixedHalftone125 = 0x0000_0006,
|
|
53
|
+
WICBitmapPaletteTypeFixedHalftone216 = 0x0000_0007,
|
|
54
|
+
WICBitmapPaletteTypeFixedHalftone252 = 0x0000_0008,
|
|
55
|
+
WICBitmapPaletteTypeFixedHalftone256 = 0x0000_0009,
|
|
56
|
+
WICBitmapPaletteTypeFixedHalftone27 = 0x0000_0004,
|
|
57
|
+
WICBitmapPaletteTypeFixedHalftone64 = 0x0000_0005,
|
|
58
|
+
WICBitmapPaletteTypeFixedHalftone8 = 0x0000_0003,
|
|
59
|
+
WICBitmapPaletteTypeFixedWebPalette = 0x0000_0007,
|
|
60
|
+
WICBitmapPaletteTypeMedianCut = 0x0000_0001,
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
export enum WICBitmapTransformOptions {
|
|
64
|
+
WICBitmapTransformFlipHorizontal = 0x0000_0008,
|
|
65
|
+
WICBitmapTransformFlipVertical = 0x0000_0010,
|
|
66
|
+
WICBitmapTransformRotate0 = 0x0000_0000,
|
|
67
|
+
WICBitmapTransformRotate180 = 0x0000_0002,
|
|
68
|
+
WICBitmapTransformRotate270 = 0x0000_0003,
|
|
69
|
+
WICBitmapTransformRotate90 = 0x0000_0001,
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
export enum WICDecodeOptions {
|
|
73
|
+
WICDecodeMetadataCacheOnDemand = 0x0000_0000,
|
|
74
|
+
WICDecodeMetadataCacheOnLoad = 0x0000_0001,
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
export enum WICSectionAccessLevel {
|
|
78
|
+
WICSectionAccessLevelRead = 0x0000_0001,
|
|
79
|
+
WICSectionAccessLevelReadWrite = 0x0000_0003,
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
export type DOUBLE = number;
|
|
83
|
+
export type HBITMAP = bigint;
|
|
84
|
+
export type HICON = bigint;
|
|
85
|
+
export type HPALETTE = bigint;
|
|
86
|
+
export type IEnumString = bigint;
|
|
87
|
+
export type IPropertyBag2 = bigint;
|
|
88
|
+
export type IStream = bigint;
|
|
89
|
+
export type IWICBitmap = bigint;
|
|
90
|
+
export type IWICBitmapClipper = bigint;
|
|
91
|
+
export type IWICBitmapCodecInfo = bigint;
|
|
92
|
+
export type IWICBitmapDecoder = bigint;
|
|
93
|
+
export type IWICBitmapEncoder = bigint;
|
|
94
|
+
export type IWICBitmapFlipRotator = bigint;
|
|
95
|
+
export type IWICBitmapFrameDecode = bigint;
|
|
96
|
+
export type IWICBitmapFrameEncode = bigint;
|
|
97
|
+
export type IWICBitmapLock = bigint;
|
|
98
|
+
export type IWICBitmapScaler = bigint;
|
|
99
|
+
export type IWICBitmapSource = bigint;
|
|
100
|
+
export type IWICColorContext = bigint;
|
|
101
|
+
export type IWICComponentFactory = bigint;
|
|
102
|
+
export type IWICComponentInfo = bigint;
|
|
103
|
+
export type IWICFastMetadataEncoder = bigint;
|
|
104
|
+
export type IWICFormatConverter = bigint;
|
|
105
|
+
export type IWICImagingFactory = bigint;
|
|
106
|
+
export type IWICMetadataBlockReader = bigint;
|
|
107
|
+
export type IWICMetadataBlockWriter = bigint;
|
|
108
|
+
export type IWICMetadataQueryReader = bigint;
|
|
109
|
+
export type IWICMetadataQueryWriter = bigint;
|
|
110
|
+
export type IWICMetadataReader = bigint;
|
|
111
|
+
export type IWICMetadataWriter = bigint;
|
|
112
|
+
export type IWICPalette = bigint;
|
|
113
|
+
export type IWICPixelFormatInfo = bigint;
|
|
114
|
+
export type IWICStream = bigint;
|
|
115
|
+
export type LPBOOL = Pointer;
|
|
116
|
+
export type LPBYTE = Pointer;
|
|
117
|
+
export type LPDOUBLE = Pointer;
|
|
118
|
+
export type LPGUID = Pointer;
|
|
119
|
+
export type LPIEnumString = Pointer;
|
|
120
|
+
export type LPIPropertyBag2 = Pointer;
|
|
121
|
+
export type LPIWICBitmap = Pointer;
|
|
122
|
+
export type LPIWICBitmapClipper = Pointer;
|
|
123
|
+
export type LPIWICBitmapDecoder = Pointer;
|
|
124
|
+
export type LPIWICBitmapDecoderInfo = Pointer;
|
|
125
|
+
export type LPIWICBitmapEncoder = Pointer;
|
|
126
|
+
export type LPIWICBitmapEncoderInfo = Pointer;
|
|
127
|
+
export type LPIWICBitmapFlipRotator = Pointer;
|
|
128
|
+
export type LPIWICBitmapFrameDecode = Pointer;
|
|
129
|
+
export type LPIWICBitmapFrameEncode = Pointer;
|
|
130
|
+
export type LPIWICBitmapLock = Pointer;
|
|
131
|
+
export type LPIWICBitmapScaler = Pointer;
|
|
132
|
+
export type LPIWICBitmapSource = Pointer;
|
|
133
|
+
export type LPIWICColorContext = Pointer;
|
|
134
|
+
export type LPIWICComponentInfo = Pointer;
|
|
135
|
+
export type LPIWICFastMetadataEncoder = Pointer;
|
|
136
|
+
export type LPIWICFormatConverter = Pointer;
|
|
137
|
+
export type LPIWICImagingFactory = Pointer;
|
|
138
|
+
export type LPIWICMetadataQueryReader = Pointer;
|
|
139
|
+
export type LPIWICMetadataQueryWriter = Pointer;
|
|
140
|
+
export type LPIWICMetadataReader = Pointer;
|
|
141
|
+
export type LPIWICMetadataWriter = Pointer;
|
|
142
|
+
export type LPIWICPalette = Pointer;
|
|
143
|
+
export type LPIWICStream = Pointer;
|
|
144
|
+
export type LPLPOLESTR = Pointer;
|
|
145
|
+
export type LPLPVOID = Pointer;
|
|
146
|
+
export type LPPROPBAG2 = Pointer;
|
|
147
|
+
export type LPPROPVARIANT = Pointer;
|
|
148
|
+
export type LPUINT = Pointer;
|
|
149
|
+
export type LPULARGE_INTEGER = Pointer;
|
|
150
|
+
export type LPULONG = Pointer;
|
|
151
|
+
export type LPVARIANT = Pointer;
|
|
152
|
+
export type LPWICBitmapPaletteType = Pointer;
|
|
153
|
+
export type LPWICColor = Pointer;
|
|
154
|
+
export type LPWICInProcPointer = Pointer;
|
|
155
|
+
export type LPWICPixelFormatGUID = Pointer;
|
|
156
|
+
export type LPWICRect = Pointer;
|
|
157
|
+
export type PCWSTR = Pointer;
|
|
158
|
+
export type REFCLSID = Pointer;
|
|
159
|
+
export type REFGUID = Pointer;
|
|
160
|
+
export type REFIID = Pointer;
|
|
161
|
+
export type REFWICPixelFormatGUID = Pointer;
|
|
162
|
+
export type WICInProcPointer = Pointer;
|