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.
5 #ifndef CHROME_COMMON_MAC_APP_MODE_CHROME_LOCATOR_H_
6 #define CHROME_COMMON_MAC_APP_MODE_CHROME_LOCATOR_H_
8 #include <CoreFoundation/CoreFoundation.h>
10 #include "base/strings/string16.h"
20 // Given a bundle id, return the path of the corresponding bundle.
21 // Returns true if the bundle was found, false otherwise.
22 bool FindBundleById(NSString
* bundle_id
, base::FilePath
* out_bundle
);
24 // Given the path to the Chrome bundle, and an optional framework version, read
25 // the following information:
26 // |executable_path| - Path to the Chrome executable.
27 // |version_path| - |chrome_bundle|/Contents/Versions/|raw_version_str|/
28 // |framework_shlib_path| - Path to the chrome framework's shared library (not
29 // the framework directory).
30 // If |version_str| is not given, this will read the current Chrome version from
31 // the bundle's plist.
32 // Returns true if all information read succesfuly, false otherwise.
33 bool GetChromeBundleInfo(const base::FilePath
& chrome_bundle
,
34 const std::string
& version_str
,
35 base::FilePath
* executable_path
,
36 base::FilePath
* version_path
,
37 base::FilePath
* framework_shlib_path
);
39 } // namespace app_mode
41 #endif // CHROME_COMMON_MAC_APP_MODE_CHROME_LOCATOR_H_