aboutsummaryrefslogtreecommitdiff
path: root/src/api/burn/balutil/inc/balcondition.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/api/burn/balutil/inc/balcondition.h')
-rw-r--r--src/api/burn/balutil/inc/balcondition.h58
1 files changed, 58 insertions, 0 deletions
diff --git a/src/api/burn/balutil/inc/balcondition.h b/src/api/burn/balutil/inc/balcondition.h
new file mode 100644
index 00000000..677c593f
--- /dev/null
+++ b/src/api/burn/balutil/inc/balcondition.h
@@ -0,0 +1,58 @@
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#ifdef __cplusplus
6extern "C" {
7#endif
8
9typedef struct _BAL_CONDITION
10{
11 LPWSTR sczCondition;
12 LPWSTR sczMessage;
13} BAL_CONDITION;
14
15
16typedef struct _BAL_CONDITIONS
17{
18 BAL_CONDITION* rgConditions;
19 DWORD cConditions;
20} BAL_CONDITIONS;
21
22
23/*******************************************************************
24 BalConditionsParseFromXml - loads the conditions from the UX manifest.
25
26********************************************************************/
27DAPI_(HRESULT) BalConditionsParseFromXml(
28 __in BAL_CONDITIONS* pConditions,
29 __in IXMLDOMDocument* pixdManifest,
30 __in_opt WIX_LOCALIZATION* pWixLoc
31 );
32
33
34/*******************************************************************
35 BalConditionEvaluate - evaluates condition against the provided IBurnCore.
36
37 NOTE: psczMessage is optional.
38********************************************************************/
39DAPI_(HRESULT) BalConditionEvaluate(
40 __in BAL_CONDITION* pCondition,
41 __in IBootstrapperEngine* pEngine,
42 __out BOOL* pfResult,
43 __out_z_opt LPWSTR* psczMessage
44 );
45
46
47/*******************************************************************
48 BalConditionsUninitialize - uninitializes any conditions previously loaded.
49
50********************************************************************/
51DAPI_(void) BalConditionsUninitialize(
52 __in BAL_CONDITIONS* pConditions
53 );
54
55
56#ifdef __cplusplus
57}
58#endif