diff options
Diffstat (limited to 'src/api/burn/inc/BootstrapperExtensionEngine.h')
-rw-r--r-- | src/api/burn/inc/BootstrapperExtensionEngine.h | 200 |
1 files changed, 200 insertions, 0 deletions
diff --git a/src/api/burn/inc/BootstrapperExtensionEngine.h b/src/api/burn/inc/BootstrapperExtensionEngine.h new file mode 100644 index 00000000..24c304c6 --- /dev/null +++ b/src/api/burn/inc/BootstrapperExtensionEngine.h | |||
@@ -0,0 +1,200 @@ | |||
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 | |||
5 | #if defined(__cplusplus) | ||
6 | extern "C" { | ||
7 | #endif | ||
8 | |||
9 | enum BOOTSTRAPPER_EXTENSION_LOG_LEVEL | ||
10 | { | ||
11 | BOOTSTRAPPER_EXTENSION_LOG_LEVEL_NONE, // turns off report (only valid for XXXSetLevel()) | ||
12 | BOOTSTRAPPER_EXTENSION_LOG_LEVEL_STANDARD, // written if reporting is on | ||
13 | BOOTSTRAPPER_EXTENSION_LOG_LEVEL_VERBOSE, // written only if verbose reporting is on | ||
14 | BOOTSTRAPPER_EXTENSION_LOG_LEVEL_DEBUG, // reporting useful when debugging code | ||
15 | BOOTSTRAPPER_EXTENSION_LOG_LEVEL_ERROR, // always gets reported, but can never be specified | ||
16 | }; | ||
17 | |||
18 | enum BOOTSTRAPPER_EXTENSION_ENGINE_MESSAGE | ||
19 | { | ||
20 | BOOTSTRAPPER_EXTENSION_ENGINE_MESSAGE_ESCAPESTRING, | ||
21 | BOOTSTRAPPER_EXTENSION_ENGINE_MESSAGE_EVALUATECONDITION, | ||
22 | BOOTSTRAPPER_EXTENSION_ENGINE_MESSAGE_FORMATSTRING, | ||
23 | BOOTSTRAPPER_EXTENSION_ENGINE_MESSAGE_GETVARIABLENUMERIC, | ||
24 | BOOTSTRAPPER_EXTENSION_ENGINE_MESSAGE_GETVARIABLESTRING, | ||
25 | BOOTSTRAPPER_EXTENSION_ENGINE_MESSAGE_GETVARIABLEVERSION, | ||
26 | BOOTSTRAPPER_EXTENSION_ENGINE_MESSAGE_LOG, | ||
27 | BOOTSTRAPPER_EXTENSION_ENGINE_MESSAGE_SETVARIABLENUMERIC, | ||
28 | BOOTSTRAPPER_EXTENSION_ENGINE_MESSAGE_SETVARIABLESTRING, | ||
29 | BOOTSTRAPPER_EXTENSION_ENGINE_MESSAGE_SETVARIABLEVERSION, | ||
30 | BOOTSTRAPPER_EXTENSION_ENGINE_MESSAGE_COMPAREVERSIONS, | ||
31 | BOOTSTRAPPER_EXTENSION_ENGINE_MESSAGE_GETRELATEDBUNDLEVARIABLE, | ||
32 | }; | ||
33 | |||
34 | typedef struct _BOOTSTRAPPER_EXTENSION_ENGINE_COMPAREVERSIONS_ARGS | ||
35 | { | ||
36 | DWORD cbSize; | ||
37 | LPCWSTR wzVersion1; | ||
38 | LPCWSTR wzVersion2; | ||
39 | } BOOTSTRAPPER_EXTENSION_ENGINE_COMPAREVERSIONS_ARGS; | ||
40 | |||
41 | typedef struct _BOOTSTRAPPER_EXTENSION_ENGINE_COMPAREVERSIONS_RESULTS | ||
42 | { | ||
43 | DWORD cbSize; | ||
44 | int nResult; | ||
45 | } BOOTSTRAPPER_EXTENSION_ENGINE_COMPAREVERSIONS_RESULTS; | ||
46 | |||
47 | typedef struct _BOOTSTRAPPER_EXTENSION_ENGINE_ESCAPESTRING_ARGS | ||
48 | { | ||
49 | DWORD cbSize; | ||
50 | LPCWSTR wzIn; | ||
51 | } BOOTSTRAPPER_EXTENSION_ENGINE_ESCAPESTRING_ARGS; | ||
52 | |||
53 | typedef struct _BOOTSTRAPPER_EXTENSION_ENGINE_ESCAPESTRING_RESULTS | ||
54 | { | ||
55 | DWORD cbSize; | ||
56 | LPWSTR wzOut; | ||
57 | // Should be initialized to the size of wzOut. | ||
58 | SIZE_T cchOut; | ||
59 | } BOOTSTRAPPER_EXTENSION_ENGINE_ESCAPESTRING_RESULTS; | ||
60 | |||
61 | typedef struct _BOOTSTRAPPER_EXTENSION_ENGINE_EVALUATECONDITION_ARGS | ||
62 | { | ||
63 | DWORD cbSize; | ||
64 | LPCWSTR wzCondition; | ||
65 | } BOOTSTRAPPER_EXTENSION_ENGINE_EVALUATECONDITION_ARGS; | ||
66 | |||
67 | typedef struct _BOOTSTRAPPER_EXTENSION_ENGINE_EVALUATECONDITION_RESULTS | ||
68 | { | ||
69 | DWORD cbSize; | ||
70 | BOOL f; | ||
71 | } BOOTSTRAPPER_EXTENSION_ENGINE_EVALUATECONDITION_RESULTS; | ||
72 | |||
73 | typedef struct _BOOTSTRAPPER_EXTENSION_ENGINE_FORMATSTRING_ARGS | ||
74 | { | ||
75 | DWORD cbSize; | ||
76 | LPCWSTR wzIn; | ||
77 | } BOOTSTRAPPER_EXTENSION_ENGINE_FORMATSTRING_ARGS; | ||
78 | |||
79 | typedef struct _BOOTSTRAPPER_EXTENSION_ENGINE_FORMATSTRING_RESULTS | ||
80 | { | ||
81 | DWORD cbSize; | ||
82 | LPWSTR wzOut; | ||
83 | // Should be initialized to the size of wzOut. | ||
84 | SIZE_T cchOut; | ||
85 | } BOOTSTRAPPER_EXTENSION_ENGINE_FORMATSTRING_RESULTS; | ||
86 | |||
87 | typedef struct _BOOTSTRAPPER_EXTENSION_ENGINE_GETVARIABLENUMERIC_ARGS | ||
88 | { | ||
89 | DWORD cbSize; | ||
90 | LPCWSTR wzVariable; | ||
91 | } BOOTSTRAPPER_EXTENSION_ENGINE_GETVARIABLENUMERIC_ARGS; | ||
92 | |||
93 | typedef struct _BOOTSTRAPPER_EXTENSION_ENGINE_GETVARIABLENUMERIC_RESULTS | ||
94 | { | ||
95 | DWORD cbSize; | ||
96 | LONGLONG llValue; | ||
97 | } BOOTSTRAPPER_EXTENSION_ENGINE_GETVARIABLENUMERIC_RESULTS; | ||
98 | |||
99 | typedef struct _BOOTSTRAPPER_EXTENSION_ENGINE_GETVARIABLESTRING_ARGS | ||
100 | { | ||
101 | DWORD cbSize; | ||
102 | LPCWSTR wzVariable; | ||
103 | } BOOTSTRAPPER_EXTENSION_ENGINE_GETVARIABLESTRING_ARGS; | ||
104 | |||
105 | typedef struct _BOOTSTRAPPER_EXTENSION_ENGINE_GETVARIABLESTRING_RESULTS | ||
106 | { | ||
107 | DWORD cbSize; | ||
108 | LPWSTR wzValue; | ||
109 | // Should be initialized to the size of wzValue. | ||
110 | SIZE_T cchValue; | ||
111 | } BOOTSTRAPPER_EXTENSION_ENGINE_GETVARIABLESTRING_RESULTS; | ||
112 | |||
113 | typedef struct _BOOTSTRAPPER_EXTENSION_ENGINE_GETVARIABLEVERSION_ARGS | ||
114 | { | ||
115 | DWORD cbSize; | ||
116 | LPCWSTR wzVariable; | ||
117 | } BOOTSTRAPPER_EXTENSION_ENGINE_GETVARIABLEVERSION_ARGS; | ||
118 | |||
119 | typedef struct _BOOTSTRAPPER_EXTENSION_ENGINE_GETVARIABLEVERSION_RESULTS | ||
120 | { | ||
121 | DWORD cbSize; | ||
122 | LPWSTR wzValue; | ||
123 | // Should be initialized to the size of wzValue. | ||
124 | SIZE_T cchValue; | ||
125 | } BOOTSTRAPPER_EXTENSION_ENGINE_GETVARIABLEVERSION_RESULTS; | ||
126 | |||
127 | typedef struct _BOOTSTRAPPER_EXTENSION_ENGINE_LOG_ARGS | ||
128 | { | ||
129 | DWORD cbSize; | ||
130 | BOOTSTRAPPER_EXTENSION_LOG_LEVEL level; | ||
131 | LPCWSTR wzMessage; | ||
132 | } BOOTSTRAPPER_EXTENSION_ENGINE_LOG_ARGS; | ||
133 | |||
134 | typedef struct _BOOTSTRAPPER_EXTENSION_ENGINE_LOG_RESULTS | ||
135 | { | ||
136 | DWORD cbSize; | ||
137 | } BOOTSTRAPPER_EXTENSION_ENGINE_LOG_RESULTS; | ||
138 | |||
139 | typedef struct _BOOTSTRAPPER_EXTENSION_ENGINE_SETVARIABLENUMERIC_ARGS | ||
140 | { | ||
141 | DWORD cbSize; | ||
142 | LPCWSTR wzVariable; | ||
143 | LONGLONG llValue; | ||
144 | } BOOTSTRAPPER_EXTENSION_ENGINE_SETVARIABLENUMERIC_ARGS; | ||
145 | |||
146 | typedef struct _BOOTSTRAPPER_EXTENSION_ENGINE_SETVARIABLENUMERIC_RESULTS | ||
147 | { | ||
148 | DWORD cbSize; | ||
149 | } BOOTSTRAPPER_EXTENSION_ENGINE_SETVARIABLENUMERIC_RESULTS; | ||
150 | |||
151 | typedef struct _BOOTSTRAPPER_EXTENSION_ENGINE_SETVARIABLESTRING_ARGS | ||
152 | { | ||
153 | DWORD cbSize; | ||
154 | LPCWSTR wzVariable; | ||
155 | LPCWSTR wzValue; | ||
156 | BOOL fFormatted; | ||
157 | } BOOTSTRAPPER_EXTENSION_ENGINE_SETVARIABLESTRING_ARGS; | ||
158 | |||
159 | typedef struct _BOOTSTRAPPER_EXTENSION_ENGINE_SETVARIABLESTRING_RESULTS | ||
160 | { | ||
161 | DWORD cbSize; | ||
162 | } BOOTSTRAPPER_EXTENSION_ENGINE_SETVARIABLESTRING_RESULTS; | ||
163 | |||
164 | typedef struct _BOOTSTRAPPER_EXTENSION_ENGINE_SETVARIABLEVERSION_ARGS | ||
165 | { | ||
166 | DWORD cbSize; | ||
167 | LPCWSTR wzVariable; | ||
168 | LPCWSTR wzValue; | ||
169 | } BOOTSTRAPPER_EXTENSION_ENGINE_SETVARIABLEVERSION_ARGS; | ||
170 | |||
171 | typedef struct _BOOTSTRAPPER_EXTENSION_ENGINE_SETVARIABLEVERSION_RESULTS | ||
172 | { | ||
173 | DWORD cbSize; | ||
174 | } BOOTSTRAPPER_EXTENSION_ENGINE_SETVARIABLEVERSION_RESULTS; | ||
175 | |||
176 | typedef struct _BOOTSTRAPPER_EXTENSION_ENGINE_GETRELATEDBUNDLEVARIABLE_ARGS | ||
177 | { | ||
178 | DWORD cbSize; | ||
179 | LPCWSTR wzBundleId; | ||
180 | LPCWSTR wzVariable; | ||
181 | } BOOTSTRAPPER_EXTENSION_ENGINE_GETRELATEDBUNDLEVARIABLE_ARGS; | ||
182 | |||
183 | typedef struct _BOOTSTRAPPER_EXTENSION_ENGINE_GETRELATEDBUNDLEVARIABLE_RESULTS | ||
184 | { | ||
185 | DWORD cbSize; | ||
186 | LPWSTR wzValue; | ||
187 | // Should be initialized to the size of wzValue. | ||
188 | SIZE_T cchValue; | ||
189 | } BOOTSTRAPPER_EXTENSION_ENGINE_GETRELATEDBUNDLEVARIABLE_RESULTS; | ||
190 | |||
191 | extern "C" typedef HRESULT(WINAPI *PFN_BOOTSTRAPPER_EXTENSION_ENGINE_PROC)( | ||
192 | __in BOOTSTRAPPER_EXTENSION_ENGINE_MESSAGE message, | ||
193 | __in const LPVOID pvArgs, | ||
194 | __inout LPVOID pvResults, | ||
195 | __in_opt LPVOID pvContext | ||
196 | ); | ||
197 | |||
198 | #if defined(__cplusplus) | ||
199 | } | ||
200 | #endif | ||