OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 // | 4 // |
5 // This file contains helper functions used by setup. | 5 // This file contains helper functions used by setup. |
6 | 6 |
7 #ifndef CHROME_INSTALLER_UTIL_HELPER_H_ | 7 #ifndef CHROME_INSTALLER_UTIL_HELPER_H_ |
8 #define CHROME_INSTALLER_UTIL_HELPER_H_ | 8 #define CHROME_INSTALLER_UTIL_HELPER_H_ |
9 | 9 |
10 #include <string> | 10 #include <string> |
| 11 #include <vector> |
11 | 12 |
12 class BrowserDistribution; | 13 class BrowserDistribution; |
13 class FilePath; | 14 class FilePath; |
14 | 15 |
15 namespace installer { | 16 namespace installer { |
16 | 17 |
17 // This function returns the install path for Chrome depending on whether its | 18 // This function returns the install path for Chrome depending on whether its |
18 // system wide install or user specific install. | 19 // system wide install or user specific install. |
19 // system_install: if true, the function returns system wide location | 20 // system_install: if true, the function returns system wide location |
20 // (ProgramFiles\Google). Otherwise it returns user specific | 21 // (ProgramFiles\Google). Otherwise it returns user specific |
21 // location (Document And Settings\<user>\Local Settings...) | 22 // location (Document And Settings\<user>\Local Settings...) |
22 FilePath GetChromeInstallPath(bool system_install, BrowserDistribution* dist); | 23 FilePath GetChromeInstallPath(bool system_install, BrowserDistribution* dist); |
23 | 24 |
24 // This function returns the path to the directory that holds the user data, | 25 // Returns the path(s) to the directory that holds the user data (primary and, |
25 // this is always inside "Document And Settings\<user>\Local Settings.". Note | 26 // if applicable to |dist|, alternate). This is always inside a user's local |
26 // that this is the default user data directory and does not take into account | 27 // application data folder (e.g., "AppData\Local or "Local Settings\Application |
27 // that it can be overriden with a command line parameter. | 28 // Data" in %USERPROFILE%). Note that these are the defaults and do not take |
28 FilePath GetChromeUserDataPath(BrowserDistribution* dist); | 29 // into account that they can be overriden with a command line parameter. |
| 30 // |paths| may be empty on return, but is guaranteed not to contain empty paths |
| 31 // otherwise. If more than one path is returned, they are guaranteed to be |
| 32 // siblings. |
| 33 void GetChromeUserDataPaths(BrowserDistribution* dist, |
| 34 std::vector<FilePath>* paths); |
29 | 35 |
30 // Returns the distribution corresponding to the current process's binaries. | 36 // Returns the distribution corresponding to the current process's binaries. |
31 // In the case of a multi-install product, this will be the CHROME_BINARIES | 37 // In the case of a multi-install product, this will be the CHROME_BINARIES |
32 // distribution. | 38 // distribution. |
33 BrowserDistribution* GetBinariesDistribution(bool system_install); | 39 BrowserDistribution* GetBinariesDistribution(bool system_install); |
34 | 40 |
35 // Returns the app guid under which the current process receives updates from | 41 // Returns the app guid under which the current process receives updates from |
36 // Google Update. | 42 // Google Update. |
37 std::wstring GetAppGuidForUpdates(bool system_install); | 43 std::wstring GetAppGuidForUpdates(bool system_install); |
38 | 44 |
39 } // namespace installer | 45 } // namespace installer |
40 | 46 |
41 #endif // CHROME_INSTALLER_UTIL_HELPER_H_ | 47 #endif // CHROME_INSTALLER_UTIL_HELPER_H_ |
OLD | NEW |