Add testing/scripts/OWNERS
[chromium-blink-merge.git] / chrome / installer / gcapi_mac / gcapi.h
blob8678e53ab302d76e540d5ae4859419923bf2c844
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_INSTALLER_GCAPI_MAC_GCAPI_H_
6 #define CHROME_INSTALLER_GCAPI_MAC_GCAPI_H_
8 // Error conditions for GoogleChromeCompatibilityCheck().
9 #define GCCC_ERROR_ALREADYPRESENT (1 << 0)
10 #define GCCC_ERROR_ACCESSDENIED (1 << 1)
11 #define GCCC_ERROR_OSNOTSUPPORTED (1 << 2)
12 #define GCCC_ERROR_ALREADYOFFERED (1 << 3)
13 #define GCCC_ERROR_INTEGRITYLEVEL (1 << 4)
15 #ifdef __cplusplus
16 extern "C" {
17 #endif
19 // This function returns nonzero if Google Chrome should be offered.
20 // If the return value is 0, |reasons| explains why. If you don't care for the
21 // reason, you can pass NULL for |reasons|.
22 int GoogleChromeCompatibilityCheck(unsigned* reasons);
24 // This function installs Google Chrome in the application folder and optionally
25 // sets up the brand code and master prefs.
26 // |source_path| Path to an uninstalled Google Chrome.app directory, for example
27 // in a mounted dmg, in file system representation.
28 // |brand_code| If not NULL, a string containing the brand code Google Chrome
29 // should use. Has no effect if Google Chrome has an embedded brand
30 // code. Overwrites existing brand files.
31 // |master_prefs_contents| If not NULL, the _contents_ of a master prefs file
32 // Google Chrome should use. This is not a path.
33 // Overwrites existing master pref files.
34 // Returns nonzero if Google Chrome was successfully copied. If copying
35 // succeeded but writing of master prefs, brand code, or other noncrucial
36 // setup tasks fail, this still returns nonzero.
37 // Returns 0 if the installation failed, for example if Google Chrome was
38 // already installed, or no disk space was left.
39 int InstallGoogleChrome(const char* source_path,
40 const char* brand_code,
41 const char* master_prefs_contents,
42 unsigned master_prefs_contents_size);
44 // This function launches Google Chrome after a successful install, or it does
45 // a best-effort search to launch an existing installation if
46 // InstallGoogleChrome() returned GCCC_ERROR_ALREADYPRESENT.
47 int LaunchGoogleChrome();
49 #ifdef __cplusplus
50 } // extern "C"
51 #endif
53 #endif // CHROME_INSTALLER_GCAPI_MAC_GCAPI_H_