Upstream version 11.40.277.0
[platform/framework/web/crosswalk.git] / src / chrome / installer / launcher_support / chrome_launcher_support.h
1 // Copyright (c) 2012 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_INSTALLER_LAUNCHER_SUPPORT_CHROME_LAUNCHER_SUPPORT_H_
6 #define CHROME_INSTALLER_LAUNCHER_SUPPORT_CHROME_LAUNCHER_SUPPORT_H_
7
8 namespace base {
9 class FilePath;
10 }
11
12 namespace chrome_launcher_support {
13
14 enum InstallationLevel {
15   USER_LEVEL_INSTALLATION,
16   SYSTEM_LEVEL_INSTALLATION,
17 };
18
19 // Returns the path to an installed chrome.exe at the specified level, if it can
20 // be found in the registry. Prefers the installer from a multi-install, but may
21 // also return that of a single-install of Chrome if no multi-install exists.
22 base::FilePath GetChromePathForInstallationLevel(InstallationLevel level);
23
24 // Returns the path to an installed chrome.exe, or an empty path. Prefers a
25 // system-level installation to a user-level installation. Uses the registry to
26 // identify a Chrome installation location. The file path returned (if any) is
27 // guaranteed to exist.
28 base::FilePath GetAnyChromePath();
29
30 // Returns the path to an installed SxS chrome.exe, or an empty path. Prefers a
31 // user-level installation to a system-level installation. Uses the registry to
32 // identify a Chrome Canary installation location. The file path returned (if
33 // any) is guaranteed to exist.
34 base::FilePath GetAnyChromeSxSPath();
35
36 }  // namespace chrome_launcher_support
37
38 #endif  // CHROME_INSTALLER_LAUNCHER_SUPPORT_CHROME_LAUNCHER_SUPPORT_H_