1 | // Licensed to the .NET Foundation under one or more agreements. |
2 | // The .NET Foundation licenses this file to you under the MIT license. |
3 | // See the LICENSE file in the project root for more information. |
4 | // |
5 | |
6 | |
7 | #pragma once |
8 | |
9 | #ifdef FEATURE_APPX |
10 | |
11 | #include "clrtypes.h" |
12 | #include "appmodel.h" |
13 | |
14 | #define PACKAGE_FILTER_CLR_DEFAULT (PACKAGE_FILTER_HEAD|PACKAGE_FILTER_DIRECT) |
15 | |
16 | |
17 | typedef PACKAGE_INFO * PPACKAGE_INFO; |
18 | typedef PACKAGE_INFO const * PCPACKAGE_INFO; |
19 | |
20 | //--------------------------------------------------------------------------------------------- |
21 | // Forward declarations |
22 | template <typename T> |
23 | class NewArrayHolder; |
24 | BOOL WinRTSupported(); |
25 | |
26 | |
27 | namespace AppX |
28 | { |
29 | // Returns true if process is immersive (or if running in mockup environment). |
30 | bool IsAppXProcess(); |
31 | |
32 | // On CoreCLR, the host is in charge of determining whether the process is AppX or not. |
33 | void SetIsAppXProcess(bool); |
34 | |
35 | #ifdef DACCESS_COMPILE |
36 | bool DacIsAppXProcess(); |
37 | #endif // DACCESS_COMPILE |
38 | }; |
39 | |
40 | |
41 | #else // FEATURE_APPX |
42 | |
43 | namespace AppX |
44 | { |
45 | inline bool IsAppXProcess() |
46 | { |
47 | return false; |
48 | } |
49 | } |
50 | |
51 | #endif // FEATURE_APPX |
52 | |