Home | History | Annotate | Download | only in lib
      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 RLZ_LIB_RLZ_ENUMS_H_
      6 #define RLZ_LIB_RLZ_ENUMS_H_
      7 
      8 namespace rlz_lib {
      9 
     10 // An Access Point offers a way to search using Google.
     11 enum AccessPoint {
     12   NO_ACCESS_POINT = 0,
     13 
     14   // Access points on Windows PCs.
     15   IE_DEFAULT_SEARCH,  // The IE7+ chrome search box next to the address bar.
     16   IE_HOME_PAGE,       // Search box on IE 5+ primary home page when Google.
     17   IETB_SEARCH_BOX,    // IE Toolbar v4+ search box.
     18   QUICK_SEARCH_BOX,   // Search box brought up by ctrl-ctrl key sequence,
     19                       // distributed as a part of Google Desktop
     20   GD_DESKBAND,        // Search box in deskbar when GD in deskbar mode.
     21   GD_SEARCH_GADGET,   // Search gadget when GD in sidebar mode.
     22   GD_WEB_SERVER,      // Boxes in web pages shown by local GD web server.
     23   GD_OUTLOOK,         // Search box installed within outlook by GD.
     24   CHROME_OMNIBOX,     // Chrome searches through the address bar omnibox (Win).
     25   CHROME_HOME_PAGE,   // Chrome searches through Google as home page (Win).
     26   FFTB2_BOX,          // Firefox Toolbar v2 Search Box.
     27   FFTB3_BOX,          // Firefox Toolbar v3+ Search Box.
     28   PINYIN_IME_BHO,     // Goopy Input Method Editor BHO (Pinyin).
     29   IGOOGLE_WEBPAGE,    // Searches on iGoogle through partner deals.
     30 
     31   // Mobile idle screen search for different platforms.
     32   MOBILE_IDLE_SCREEN_BLACKBERRY,
     33   MOBILE_IDLE_SCREEN_WINMOB,
     34   MOBILE_IDLE_SCREEN_SYMBIAN,
     35 
     36   FF_HOME_PAGE,       // Firefox home page when set to Google.
     37   FF_SEARCH_BOX,      // Firefox search box when set to Google.
     38   IE_BROWSED_PAGE,    // Search made in IE through user action (no product).
     39   QSB_WIN_BOX,        // Search box brought up by ctrl+space by default,
     40                       // distributed by toolbar and separate from the GD QSB
     41   WEBAPPS_CALENDAR,   // Webapps use of calendar.
     42   WEBAPPS_DOCS,       // Webapps use of writely.
     43   WEBAPPS_GMAIL,      // Webapps use of Gmail.
     44 
     45   IETB_LINKDOCTOR,    // Linkdoctor of IE Toolbar
     46   FFTB_LINKDOCTOR,    // Linkdoctor of FF Toolbar
     47   IETB7_SEARCH_BOX,   // IE Toolbar search box.
     48   TB8_SEARCH_BOX,     // IE/FF Toolbar search box.
     49   CHROME_FRAME,       // Chrome Frame.
     50 
     51   // Partner access points.
     52   PARTNER_AP_1,
     53   PARTNER_AP_2,
     54   PARTNER_AP_3,
     55   PARTNER_AP_4,
     56   PARTNER_AP_5,
     57 
     58   CHROME_MAC_OMNIBOX,  // Chrome searches through the address bar omnibox (Mac).
     59   CHROME_MAC_HOME_PAGE,// Chrome searches through Google as home page (Mac).
     60 
     61   CHROMEOS_OMNIBOX,    // ChromeOS searches through the address bar omnibox.
     62   CHROMEOS_HOME_PAGE,  // ChromeOS searches through Google as home page.
     63   CHROMEOS_RESERVED,   // Reserved for ChromeOS.
     64 
     65   CHROME_IOS_OMNIBOX,  // Chrome searches through the address bar omnibox (iOS).
     66   CHROME_IOS_HOME_PAGE,// Chrome searches through Google as home page (iOS).
     67 
     68   // Unclaimed access points - should be used first before creating new APs.
     69   // Please also make sure you re-name the enum before using an unclaimed value;
     70   // this acts as a check to ensure we don't have collisions.
     71   UNDEFINED_AP_O,
     72   UNDEFINED_AP_P,
     73   UNDEFINED_AP_Q,
     74   UNDEFINED_AP_R,
     75   UNDEFINED_AP_S,
     76   UNDEFINED_AP_T,
     77   UNDEFINED_AP_U,
     78   UNDEFINED_AP_V,
     79   UNDEFINED_AP_W,
     80   UNDEFINED_AP_X,
     81   UNDEFINED_AP_Y,
     82   UNDEFINED_AP_Z,
     83 
     84   PACK_AP0,
     85   PACK_AP1,
     86   PACK_AP2,
     87   PACK_AP3,
     88   PACK_AP4,
     89   PACK_AP5,
     90   PACK_AP6,
     91   PACK_AP7,
     92   PACK_AP8,
     93   PACK_AP9,
     94   PACK_AP10,
     95   PACK_AP11,
     96   PACK_AP12,
     97   PACK_AP13,
     98 
     99   // New Access Points should be added here without changing existing enums,
    100   // (i.e. before LAST_ACCESS_POINT)
    101   LAST_ACCESS_POINT
    102 };
    103 
    104 // A product is an entity which wants to gets credit for setting
    105 // an Access Point.
    106 enum Product {
    107   IE_TOOLBAR = 1,
    108   TOOLBAR_NOTIFIER,
    109   PACK,
    110   DESKTOP,
    111   CHROME,
    112   FF_TOOLBAR,
    113   QSB_WIN,
    114   WEBAPPS,
    115   PINYIN_IME,
    116   PARTNER
    117   // New Products should be added here without changing existing enums.
    118 };
    119 
    120 // Events that note Product and Access Point modifications.
    121 enum Event {
    122   INVALID_EVENT = 0,
    123   INSTALL = 1,    // Access Point added to the system.
    124   SET_TO_GOOGLE,  // Point set from non-Google provider to Google.
    125   FIRST_SEARCH,   // First search from point since INSTALL
    126   REPORT_RLS,     // Report old system "RLS" financial value for this point.
    127   // New Events should be added here without changing existing enums,
    128   // before LAST_EVENT.
    129   ACTIVATE,       // Product being used for a period of time.
    130   LAST_EVENT
    131 };
    132 
    133 }  // namespace rlz_lib
    134 
    135 #endif  // RLZ_LIB_RLZ_ENUMS_H_
    136