Home | History | Annotate | Download | only in gcapi
      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_GCAPI_GCAPI_OMAHA_EXPERIMENT_H_
      6 #define CHROME_INSTALLER_GCAPI_GCAPI_OMAHA_EXPERIMENT_H_
      7 
      8 #include "base/strings/string16.h"
      9 
     10 namespace gcapi_internals {
     11 
     12 extern const wchar_t kReactivationLabel[];
     13 extern const wchar_t kRelaunchLabel[];
     14 
     15 // Returns the full experiment label to be used by |label| (which is one of the
     16 // labels declared above) for |brand_code|.
     17 base::string16 GetGCAPIExperimentLabel(const wchar_t* brand_code,
     18                                        const base::string16& label);
     19 
     20 }  // namespace gcapi_internals
     21 
     22 // Writes a reactivation brand code experiment label in the Chrome product and
     23 // binaries registry keys for |brand_code|. This experiment label will have a
     24 // expiration date of now plus one year. If |shell_mode| is set to
     25 // GCAPI_INVOKED_UAC_ELEVATION, the value will be written to HKLM, otherwise
     26 // HKCU. A user cannot have both a reactivation label and a relaunch label set
     27 // at the same time (they are mutually exclusive).
     28 bool SetReactivationExperimentLabels(const wchar_t* brand_code, int shell_mode);
     29 
     30 // Writes a relaunch brand code experiment label in the Chrome product and
     31 // binaries registry keys for |brand_code|. This experiment label will have a
     32 // expiration date of now plus one year. If |shell_mode| is set to
     33 // GCAPI_INVOKED_UAC_ELEVATION, the value will be written to HKLM, otherwise
     34 // HKCU. A user cannot have both a reactivation label and a relaunch label set
     35 // at the same time (they are mutually exclusive).
     36 bool SetRelaunchExperimentLabels(const wchar_t* brand_code, int shell_mode);
     37 
     38 #endif  // CHROME_INSTALLER_GCAPI_GCAPI_OMAHA_EXPERIMENT_H_
     39