diff options
Diffstat (limited to 'src/burn/engine/burnextension.h')
-rw-r--r-- | src/burn/engine/burnextension.h | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/src/burn/engine/burnextension.h b/src/burn/engine/burnextension.h new file mode 100644 index 00000000..370ddd2d --- /dev/null +++ b/src/burn/engine/burnextension.h | |||
@@ -0,0 +1,61 @@ | |||
1 | #pragma once | ||
2 | // Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. | ||
3 | |||
4 | #define BEEAPI HRESULT __stdcall | ||
5 | |||
6 | #if defined(__cplusplus) | ||
7 | extern "C" { | ||
8 | #endif | ||
9 | |||
10 | // structs | ||
11 | |||
12 | typedef struct _BURN_EXTENSION_ENGINE_CONTEXT BURN_EXTENSION_ENGINE_CONTEXT; | ||
13 | |||
14 | typedef struct _BURN_EXTENSION | ||
15 | { | ||
16 | LPWSTR sczEntryPayloadId; | ||
17 | LPWSTR sczId; | ||
18 | |||
19 | BURN_PAYLOAD* pEntryPayload; | ||
20 | |||
21 | HMODULE hBextModule; | ||
22 | PFN_BUNDLE_EXTENSION_PROC pfnBurnExtensionProc; | ||
23 | LPVOID pvBurnExtensionProcContext; | ||
24 | } BURN_EXTENSION; | ||
25 | |||
26 | typedef struct _BURN_EXTENSIONS | ||
27 | { | ||
28 | BURN_EXTENSION* rgExtensions; | ||
29 | DWORD cExtensions; | ||
30 | } BURN_EXTENSIONS; | ||
31 | |||
32 | // functions | ||
33 | |||
34 | HRESULT BurnExtensionParseFromXml( | ||
35 | __in BURN_EXTENSIONS* pBurnExtensions, | ||
36 | __in BURN_PAYLOADS* pBaPayloads, | ||
37 | __in IXMLDOMNode* pixnBundle | ||
38 | ); | ||
39 | void BurnExtensionUninitialize( | ||
40 | __in BURN_EXTENSIONS* pBurnExtensions | ||
41 | ); | ||
42 | HRESULT BurnExtensionLoad( | ||
43 | __in BURN_EXTENSIONS* pBurnExtensions, | ||
44 | __in BURN_EXTENSION_ENGINE_CONTEXT* pEngineContext | ||
45 | ); | ||
46 | void BurnExtensionUnload( | ||
47 | __in BURN_EXTENSIONS* pBurnExtensions | ||
48 | ); | ||
49 | HRESULT BurnExtensionFindById( | ||
50 | __in BURN_EXTENSIONS* pBurnExtensions, | ||
51 | __in_z LPCWSTR wzId, | ||
52 | __out BURN_EXTENSION** ppExtension | ||
53 | ); | ||
54 | BEEAPI BurnExtensionPerformSearch( | ||
55 | __in BURN_EXTENSION* pExtension, | ||
56 | __in LPWSTR wzSearchId, | ||
57 | __in LPWSTR wzVariable | ||
58 | ); | ||
59 | #if defined(__cplusplus) | ||
60 | } | ||
61 | #endif | ||