diff options
Diffstat (limited to 'src/WixToolset.BootstrapperCore.Native/inc/BundleExtensionEngine.h')
-rw-r--r-- | src/WixToolset.BootstrapperCore.Native/inc/BundleExtensionEngine.h | 184 |
1 files changed, 184 insertions, 0 deletions
diff --git a/src/WixToolset.BootstrapperCore.Native/inc/BundleExtensionEngine.h b/src/WixToolset.BootstrapperCore.Native/inc/BundleExtensionEngine.h new file mode 100644 index 00000000..b397ec16 --- /dev/null +++ b/src/WixToolset.BootstrapperCore.Native/inc/BundleExtensionEngine.h | |||
@@ -0,0 +1,184 @@ | |||
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 BUNDLE_EXTENSION_LOG_LEVEL | ||
10 | { | ||
11 | BUNDLE_EXTENSION_LOG_LEVEL_NONE, // turns off report (only valid for XXXSetLevel()) | ||
12 | BUNDLE_EXTENSION_LOG_LEVEL_STANDARD, // written if reporting is on | ||
13 | BUNDLE_EXTENSION_LOG_LEVEL_VERBOSE, // written only if verbose reporting is on | ||
14 | BUNDLE_EXTENSION_LOG_LEVEL_DEBUG, // reporting useful when debugging code | ||
15 | BUNDLE_EXTENSION_LOG_LEVEL_ERROR, // always gets reported, but can never be specified | ||
16 | }; | ||
17 | |||
18 | enum BUNDLE_EXTENSION_ENGINE_MESSAGE | ||
19 | { | ||
20 | BUNDLE_EXTENSION_ENGINE_MESSAGE_ESCAPESTRING, | ||
21 | BUNDLE_EXTENSION_ENGINE_MESSAGE_EVALUATECONDITION, | ||
22 | BUNDLE_EXTENSION_ENGINE_MESSAGE_FORMATSTRING, | ||
23 | BUNDLE_EXTENSION_ENGINE_MESSAGE_GETVARIABLENUMERIC, | ||
24 | BUNDLE_EXTENSION_ENGINE_MESSAGE_GETVARIABLESTRING, | ||
25 | BUNDLE_EXTENSION_ENGINE_MESSAGE_GETVARIABLEVERSION, | ||
26 | BUNDLE_EXTENSION_ENGINE_MESSAGE_LOG, | ||
27 | BUNDLE_EXTENSION_ENGINE_MESSAGE_SETVARIABLENUMERIC, | ||
28 | BUNDLE_EXTENSION_ENGINE_MESSAGE_SETVARIABLESTRING, | ||
29 | BUNDLE_EXTENSION_ENGINE_MESSAGE_SETVARIABLEVERSION, | ||
30 | BUNDLE_EXTENSION_ENGINE_MESSAGE_COMPAREVERSIONS, | ||
31 | }; | ||
32 | |||
33 | typedef struct _BUNDLE_EXTENSION_ENGINE_COMPAREVERSIONS_ARGS | ||
34 | { | ||
35 | DWORD cbSize; | ||
36 | LPCWSTR wzVersion1; | ||
37 | LPCWSTR wzVersion2; | ||
38 | } BUNDLE_EXTENSION_ENGINE_COMPAREVERSIONS_ARGS; | ||
39 | |||
40 | typedef struct _BUNDLE_EXTENSION_ENGINE_COMPAREVERSIONS_RESULTS | ||
41 | { | ||
42 | DWORD cbSize; | ||
43 | int nResult; | ||
44 | } BUNDLE_EXTENSION_ENGINE_COMPAREVERSIONS_RESULTS; | ||
45 | |||
46 | typedef struct _BUNDLE_EXTENSION_ENGINE_ESCAPESTRING_ARGS | ||
47 | { | ||
48 | DWORD cbSize; | ||
49 | LPCWSTR wzIn; | ||
50 | } BUNDLE_EXTENSION_ENGINE_ESCAPESTRING_ARGS; | ||
51 | |||
52 | typedef struct _BUNDLE_EXTENSION_ENGINE_ESCAPESTRING_RESULTS | ||
53 | { | ||
54 | DWORD cbSize; | ||
55 | LPWSTR wzOut; | ||
56 | // Should be initialized to the size of wzOut. | ||
57 | SIZE_T cchOut; | ||
58 | } BUNDLE_EXTENSION_ENGINE_ESCAPESTRING_RESULTS; | ||
59 | |||
60 | typedef struct _BUNDLE_EXTENSION_ENGINE_EVALUATECONDITION_ARGS | ||
61 | { | ||
62 | DWORD cbSize; | ||
63 | LPCWSTR wzCondition; | ||
64 | } BUNDLE_EXTENSION_ENGINE_EVALUATECONDITION_ARGS; | ||
65 | |||
66 | typedef struct _BUNDLE_EXTENSION_ENGINE_EVALUATECONDITION_RESULTS | ||
67 | { | ||
68 | DWORD cbSize; | ||
69 | BOOL f; | ||
70 | } BUNDLE_EXTENSION_ENGINE_EVALUATECONDITION_RESULTS; | ||
71 | |||
72 | typedef struct _BUNDLE_EXTENSION_ENGINE_FORMATSTRING_ARGS | ||
73 | { | ||
74 | DWORD cbSize; | ||
75 | LPCWSTR wzIn; | ||
76 | } BUNDLE_EXTENSION_ENGINE_FORMATSTRING_ARGS; | ||
77 | |||
78 | typedef struct _BUNDLE_EXTENSION_ENGINE_FORMATSTRING_RESULTS | ||
79 | { | ||
80 | DWORD cbSize; | ||
81 | LPWSTR wzOut; | ||
82 | // Should be initialized to the size of wzOut. | ||
83 | SIZE_T cchOut; | ||
84 | } BUNDLE_EXTENSION_ENGINE_FORMATSTRING_RESULTS; | ||
85 | |||
86 | typedef struct _BUNDLE_EXTENSION_ENGINE_GETVARIABLENUMERIC_ARGS | ||
87 | { | ||
88 | DWORD cbSize; | ||
89 | LPCWSTR wzVariable; | ||
90 | } BUNDLE_EXTENSION_ENGINE_GETVARIABLENUMERIC_ARGS; | ||
91 | |||
92 | typedef struct _BUNDLE_EXTENSION_ENGINE_GETVARIABLENUMERIC_RESULTS | ||
93 | { | ||
94 | DWORD cbSize; | ||
95 | LONGLONG llValue; | ||
96 | } BUNDLE_EXTENSION_ENGINE_GETVARIABLENUMERIC_RESULTS; | ||
97 | |||
98 | typedef struct _BUNDLE_EXTENSION_ENGINE_GETVARIABLESTRING_ARGS | ||
99 | { | ||
100 | DWORD cbSize; | ||
101 | LPCWSTR wzVariable; | ||
102 | } BUNDLE_EXTENSION_ENGINE_GETVARIABLESTRING_ARGS; | ||
103 | |||
104 | typedef struct _BUNDLE_EXTENSION_ENGINE_GETVARIABLESTRING_RESULTS | ||
105 | { | ||
106 | DWORD cbSize; | ||
107 | LPWSTR wzValue; | ||
108 | // Should be initialized to the size of wzValue. | ||
109 | SIZE_T cchValue; | ||
110 | } BUNDLE_EXTENSION_ENGINE_GETVARIABLESTRING_RESULTS; | ||
111 | |||
112 | typedef struct _BUNDLE_EXTENSION_ENGINE_GETVARIABLEVERSION_ARGS | ||
113 | { | ||
114 | DWORD cbSize; | ||
115 | LPCWSTR wzVariable; | ||
116 | } BUNDLE_EXTENSION_ENGINE_GETVARIABLEVERSION_ARGS; | ||
117 | |||
118 | typedef struct _BUNDLE_EXTENSION_ENGINE_GETVARIABLEVERSION_RESULTS | ||
119 | { | ||
120 | DWORD cbSize; | ||
121 | LPWSTR wzValue; | ||
122 | // Should be initialized to the size of wzValue. | ||
123 | SIZE_T cchValue; | ||
124 | } BUNDLE_EXTENSION_ENGINE_GETVARIABLEVERSION_RESULTS; | ||
125 | |||
126 | typedef struct _BUNDLE_EXTENSION_ENGINE_LOG_ARGS | ||
127 | { | ||
128 | DWORD cbSize; | ||
129 | BUNDLE_EXTENSION_LOG_LEVEL level; | ||
130 | LPCWSTR wzMessage; | ||
131 | } BUNDLE_EXTENSION_ENGINE_LOG_ARGS; | ||
132 | |||
133 | typedef struct _BUNDLE_EXTENSION_ENGINE_LOG_RESULTS | ||
134 | { | ||
135 | DWORD cbSize; | ||
136 | } BUNDLE_EXTENSION_ENGINE_LOG_RESULTS; | ||
137 | |||
138 | typedef struct _BUNDLE_EXTENSION_ENGINE_SETVARIABLENUMERIC_ARGS | ||
139 | { | ||
140 | DWORD cbSize; | ||
141 | LPCWSTR wzVariable; | ||
142 | LONGLONG llValue; | ||
143 | } BUNDLE_EXTENSION_ENGINE_SETVARIABLENUMERIC_ARGS; | ||
144 | |||
145 | typedef struct _BUNDLE_EXTENSION_ENGINE_SETVARIABLENUMERIC_RESULTS | ||
146 | { | ||
147 | DWORD cbSize; | ||
148 | } BUNDLE_EXTENSION_ENGINE_SETVARIABLENUMERIC_RESULTS; | ||
149 | |||
150 | typedef struct _BUNDLE_EXTENSION_ENGINE_SETVARIABLESTRING_ARGS | ||
151 | { | ||
152 | DWORD cbSize; | ||
153 | LPCWSTR wzVariable; | ||
154 | LPCWSTR wzValue; | ||
155 | BOOL fFormatted; | ||
156 | } BUNDLE_EXTENSION_ENGINE_SETVARIABLESTRING_ARGS; | ||
157 | |||
158 | typedef struct _BUNDLE_EXTENSION_ENGINE_SETVARIABLESTRING_RESULTS | ||
159 | { | ||
160 | DWORD cbSize; | ||
161 | } BUNDLE_EXTENSION_ENGINE_SETVARIABLESTRING_RESULTS; | ||
162 | |||
163 | typedef struct _BUNDLE_EXTENSION_ENGINE_SETVARIABLEVERSION_ARGS | ||
164 | { | ||
165 | DWORD cbSize; | ||
166 | LPCWSTR wzVariable; | ||
167 | LPCWSTR wzValue; | ||
168 | } BUNDLE_EXTENSION_ENGINE_SETVARIABLEVERSION_ARGS; | ||
169 | |||
170 | typedef struct _BUNDLE_EXTENSION_ENGINE_SETVARIABLEVERSION_RESULTS | ||
171 | { | ||
172 | DWORD cbSize; | ||
173 | } BUNDLE_EXTENSION_ENGINE_SETVARIABLEVERSION_RESULTS; | ||
174 | |||
175 | extern "C" typedef HRESULT(WINAPI *PFN_BUNDLE_EXTENSION_ENGINE_PROC)( | ||
176 | __in BUNDLE_EXTENSION_ENGINE_MESSAGE message, | ||
177 | __in const LPVOID pvArgs, | ||
178 | __inout LPVOID pvResults, | ||
179 | __in_opt LPVOID pvContext | ||
180 | ); | ||
181 | |||
182 | #if defined(__cplusplus) | ||
183 | } | ||
184 | #endif | ||