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
8namespace base {
9class FilePath;
10}
11
12namespace chrome_launcher_support {
13
14enum 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 via Omaha client state. Prefers the installer from a multi-install,
21// but may also return that of a single-install of Chrome if no multi-install
22// exists.
23base::FilePath GetChromePathForInstallationLevel(InstallationLevel level);
24
25// Returns the path to an installed chrome.exe, or an empty path. Prefers a
26// system-level installation to a user-level installation. Uses Omaha client
27// state to identify a Chrome installation location.
28// The file path returned (if any) is guaranteed to exist.
29base::FilePath GetAnyChromePath();
30
31}  // namespace chrome_launcher_support
32
33#endif  // CHROME_INSTALLER_LAUNCHER_SUPPORT_CHROME_LAUNCHER_SUPPORT_H_
34