File: lens_metrics.h

package info (click to toggle)
chromium 139.0.7258.127-1
  • links: PTS, VCS
  • area: main
  • in suites:
  • size: 6,122,068 kB
  • sloc: cpp: 35,100,771; ansic: 7,163,530; javascript: 4,103,002; python: 1,436,920; asm: 946,517; xml: 746,709; pascal: 187,653; perl: 88,691; sh: 88,436; objc: 79,953; sql: 51,488; cs: 44,583; fortran: 24,137; makefile: 22,147; tcl: 15,277; php: 13,980; yacc: 8,984; ruby: 7,485; awk: 3,720; lisp: 3,096; lex: 1,327; ada: 727; jsp: 228; sed: 36
file content (140 lines) | stat: -rw-r--r-- 4,564 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
// Copyright 2023 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef COMPONENTS_LENS_LENS_METRICS_H_
#define COMPONENTS_LENS_LENS_METRICS_H_

namespace lens {

// Histogram for recording ambient search queries.
inline constexpr char kAmbientSearchQueryHistogramName[] =
    "Search.Ambient.Query";

// Histogram for recording camera open events.
inline constexpr char kSearchCameraOpenHistogramName[] =
    "Search.Image.Camera.Open";

// Histogram for recording camera result events.
inline constexpr char kSearchCameraResultHistogramName[] =
    "Search.Image.Camera.Result";

// Histogram for recording the capture result of Lens Region Search. See enum
// below for types of results.
inline constexpr char kLensRegionSearchCaptureResultHistogramName[] =
    "Search.RegionSearch.Lens.Result";

// Histogram for recording the viewport proportion in relation to region
// selected for the Lens Region Search feature.
inline constexpr char kLensRegionSearchRegionViewportProportionHistogramName[] =
    "Search.RegionSearch.Lens.RegionViewportProportion";

// Histogram for recording the aspect ratio of the captured region.
inline constexpr char kLensRegionSearchRegionAspectRatioHistogramName[] =
    "Search.RegionSearch.Lens.RegionAspectRatio";

// Needs to be kept in sync with CameraOpenEntryPoint enum in
// tools/metrics/histograms/enums.xml.
enum class CameraOpenEntryPoint {
  OMNIBOX = 0,
  NEW_TAB_PAGE = 1,
  WIDGET = 2,
  TASKS_SURFACE = 3,
  KEYBOARD = 4,
  SPOTLIGHT = 5,
  APP_ICON_LONG_PRESS = 6,
  PLUS_BUTTON = 7,
  WEB_SEARCH_BAR = 8,
  TRANSLATE_ONEBOX = 9,
  INTENTS = 10,
  WEB_IMAGES_SEARCH_BAR = 11,
  WHATS_NEW_PROMO = 12,
  kMaxValue = WHATS_NEW_PROMO
};

// Needs to be kept in sync with CameraResult enum in
// tools/metrics/histograms/enums.xml.
enum class CameraResult {
  SUCCESS_CAMERA = 0,
  SUCCESS_GALLERY_IMAGE = 1,
  SUCCESS_QR_CODE = 2,
  DISMISSED = 3,
  kMaxValue = DISMISSED
};

// Needs to be kept in sync with AmbientSearchEntryPoint enum in
// tools/metrics/histograms/enums.xml.
enum class AmbientSearchEntryPoint {
  CONTEXT_MENU_SEARCH_IMAGE_WITH_GOOGLE_LENS = 0,
  CONTEXT_MENU_SEARCH_IMAGE_WITH_WEB = 1,
  CONTEXT_MENU_SEARCH_REGION_WITH_GOOGLE_LENS = 2,
  CONTEXT_MENU_SEARCH_REGION_WITH_WEB = 3,
  CONTEXT_MENU_SEARCH_WEB_FOR = 4,
  OMNIBOX = 5,
  NEW_TAB_PAGE = 6,
  QUICK_ACTION_SEARCH_WIDGET = 7,
  KEYBOARD = 8,
  APP_ICON_LONG_PRESS = 9,
  SPOTLIGHT = 10,
  PLUS_BUTTON = 11,
  WEB_SEARCH_BAR = 12,
  COMPANION_REGION_SEARCH = 13,
  TRANSLATE_ONEBOX = 14,
  INTENTS = 15,
  WEB_IMAGES_SEARCH_BAR = 16,
  WHATS_NEW_PROMO = 17,
  CONTEXT_MENU_SEARCH_VIDEO_FRAME_WITH_GOOGLE_LENS = 18,
  CONTEXT_MENU_SEARCH_VIDEO_FRAME_WITH_WEB = 19,
  LENS_OVERLAY_LOCATION_BAR = 20,
  LENS_OVERLAY_OVERFLOW_MENU = 21,
  CONTEXT_MENU_SEARCH_IMAGE_WITH_LENS_OVERLAY = 22,
  CONTEXT_MENU_SEARCH_REGION_WITH_LENS_OVERLAY = 23,
  CONTEXT_MENU_SEARCH_VIDEO_FRAME_WITH_LENS_OVERLAY = 24,
  CONTEXT_MENU_SEARCH_IMAGE_WITH_LENS_OVERLAY_ACCESSIBILITY_FALLBACK = 25,
  CONTEXT_MENU_SEARCH_REGION_WITH_LENS_OVERLAY_ACCESSIBILITY_FALLBACK = 26,
  CONTEXT_MENU_SEARCH_VIDEO_WITH_LENS_OVERLAY_ACCESSIBILITY_FALLBACK = 27,
  LENS_OVERLAY_LOCATION_BAR_ACCESSIBILITY_FALLBACK = 28,
  kMaxValue = LENS_OVERLAY_LOCATION_BAR_ACCESSIBILITY_FALLBACK
};

// This should be kept in sync with the LensRegionSearchAspectRatio enum
// in tools/metrics/histograms/enums.xml. The aspect ratios are defined as:
//  SQUARE: [0.8, 1.2]
//  WIDE: (1.2, 1.7]
//  VERY_WIDE: (1.7, infinity)
//  TALL: [0.3, 0.8)
//  VERY_TALL: [0, 0.3)
enum class LensRegionSearchAspectRatio {
  UNDEFINED = 0,
  SQUARE = 1,
  WIDE = 2,
  VERY_WIDE = 3,
  TALL = 4,
  VERY_TALL = 5,
  kMaxValue = VERY_TALL
};

// This should be kept in sync with the LensRegionSearchCaptureResult enum
// in tools/metrics/histograms/enums.xml.
enum class LensRegionSearchCaptureResult {
  SUCCESS = 0,
  FAILED_TO_OPEN_TAB = 1,
  ERROR_CAPTURING_REGION = 2,
  USER_EXITED_CAPTURE_ESCAPE = 3,
  USER_EXITED_CAPTURE_CLOSE_BUTTON = 4,
  USER_NAVIGATED_FROM_CAPTURE = 5,
  kMaxValue = USER_NAVIGATED_FROM_CAPTURE
};

// Record an ambient search query along with the entry point that initiated.
void RecordAmbientSearchQuery(AmbientSearchEntryPoint entry_point);

// Record a camera open event with the entry point.
void RecordCameraOpen(CameraOpenEntryPoint entry_point);

// Record a camera result.
void RecordCameraResult(CameraResult result);

}  // namespace lens

#endif  // COMPONENTS_LENS_LENS_METRICS_H_