diff options
Diffstat (limited to 'src/ext/Bal/test/examples/TestEngine/TestEngine.h')
-rw-r--r-- | src/ext/Bal/test/examples/TestEngine/TestEngine.h | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/src/ext/Bal/test/examples/TestEngine/TestEngine.h b/src/ext/Bal/test/examples/TestEngine/TestEngine.h new file mode 100644 index 00000000..44e813bd --- /dev/null +++ b/src/ext/Bal/test/examples/TestEngine/TestEngine.h | |||
@@ -0,0 +1,80 @@ | |||
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 | enum WM_TESTENG | ||
6 | { | ||
7 | WM_TESTENG_FIRST = WM_APP + 0xFFF, // this enum value must always be first. | ||
8 | |||
9 | WM_TESTENG_DETECT, | ||
10 | WM_TESTENG_PLAN, | ||
11 | WM_TESTENG_ELEVATE, | ||
12 | WM_TESTENG_APPLY, | ||
13 | WM_TESTENG_LAUNCH_APPROVED_EXE, | ||
14 | WM_TESTENG_QUIT, | ||
15 | |||
16 | WM_TESTENG_LAST, // this enum value must always be last. | ||
17 | }; | ||
18 | |||
19 | class TestEngine | ||
20 | { | ||
21 | public: | ||
22 | HRESULT Initialize( | ||
23 | __in LPCWSTR wzBundleFilePath | ||
24 | ); | ||
25 | |||
26 | HRESULT LoadBA( | ||
27 | __in LPCWSTR wzBAFilePath | ||
28 | ); | ||
29 | |||
30 | HRESULT Log( | ||
31 | __in BOOTSTRAPPER_LOG_LEVEL level, | ||
32 | __in LPCWSTR wzMessage | ||
33 | ); | ||
34 | |||
35 | HRESULT RunApplication(); | ||
36 | |||
37 | HRESULT SendShutdownEvent( | ||
38 | __in BOOTSTRAPPER_SHUTDOWN_ACTION defaultAction | ||
39 | ); | ||
40 | |||
41 | HRESULT SendStartupEvent(); | ||
42 | |||
43 | HRESULT SimulateQuit( | ||
44 | __in DWORD dwExitCode | ||
45 | ); | ||
46 | |||
47 | void UnloadBA(); | ||
48 | |||
49 | private: | ||
50 | HRESULT BAEngineLog( | ||
51 | __in BAENGINE_LOG_ARGS* pArgs, | ||
52 | __in BAENGINE_LOG_RESULTS* pResults | ||
53 | ); | ||
54 | |||
55 | HRESULT BAEngineQuit( | ||
56 | __in BAENGINE_QUIT_ARGS* pArgs, | ||
57 | __in BAENGINE_QUIT_RESULTS* pResults | ||
58 | ); | ||
59 | |||
60 | static HRESULT WINAPI EngineProc( | ||
61 | __in BOOTSTRAPPER_ENGINE_MESSAGE message, | ||
62 | __in const LPVOID pvArgs, | ||
63 | __inout LPVOID pvResults, | ||
64 | __in_opt LPVOID pvContext | ||
65 | ); | ||
66 | |||
67 | HRESULT ProcessBAMessage( | ||
68 | __in const MSG* pmsg | ||
69 | ); | ||
70 | |||
71 | public: | ||
72 | TestEngine(); | ||
73 | |||
74 | ~TestEngine(); | ||
75 | |||
76 | private: | ||
77 | HMODULE m_hBAModule; | ||
78 | BOOTSTRAPPER_CREATE_RESULTS* m_pCreateResults; | ||
79 | DWORD m_dwThreadId; | ||
80 | }; \ No newline at end of file | ||