OLD | NEW |
| (Empty) |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 #ifndef CHROME_ELF_CHROME_ELF_UTIL_H_ | |
6 #define CHROME_ELF_CHROME_ELF_UTIL_H_ | |
7 | |
8 #include "base/strings/string16.h" | |
9 | |
10 enum class ProcessType { | |
11 UNINITIALIZED, | |
12 NON_BROWSER_PROCESS, | |
13 BROWSER_PROCESS, | |
14 }; | |
15 | |
16 // Returns true if |exe_path| points to a Chrome installed in an SxS | |
17 // installation. | |
18 bool IsCanary(const wchar_t* exe_path); | |
19 | |
20 // Returns true if |exe_path| points to a per-user level Chrome installation. | |
21 bool IsSystemInstall(const wchar_t* exe_path); | |
22 | |
23 // Returns true if current installation of Chrome is a multi-install. | |
24 bool IsMultiInstall(bool is_system_install); | |
25 | |
26 // Returns true if usage stats collecting is enabled for this user. | |
27 bool AreUsageStatsEnabled(const wchar_t* exe_path); | |
28 | |
29 // Returns true if a policy is in effect. |breakpad_enabled| will be set to true | |
30 // if stats collecting is permitted by this policy and false if not. | |
31 bool ReportingIsEnforcedByPolicy(bool* breakpad_enabled); | |
32 | |
33 // Initializes |g_process_type| which stores whether or not the current process | |
34 // is the main browser process. | |
35 void InitializeProcessType(); | |
36 | |
37 // Returns true if invoked in a Chrome process other than the main browser | |
38 // process. False otherwise. | |
39 bool IsNonBrowserProcess(); | |
40 | |
41 // Caches the |ProcessType| of the current process. | |
42 extern ProcessType g_process_type; | |
43 | |
44 #endif // CHROME_ELF_CHROME_ELF_UTIL_H_ | |
OLD | NEW |