File: execution_context.proto

package info (click to toggle)
chromium-browser 57.0.2987.98-1~deb8u1
  • links: PTS, VCS
  • area: main
  • in suites: jessie
  • size: 2,637,852 kB
  • ctags: 2,544,394
  • sloc: cpp: 12,815,961; ansic: 3,676,222; python: 1,147,112; asm: 526,608; java: 523,212; xml: 286,794; perl: 92,654; sh: 86,408; objc: 73,271; makefile: 27,698; cs: 18,487; yacc: 13,031; tcl: 12,957; pascal: 4,875; ml: 4,716; lex: 3,904; sql: 3,862; ruby: 1,982; lisp: 1,508; php: 1,368; exp: 404; awk: 325; csh: 117; jsp: 39; sed: 37
file content (75 lines) | stat: -rw-r--r-- 2,250 bytes parent folder | download
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
// Copyright 2016 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

syntax = "proto2";

option optimize_for = LITE_RUNTIME;
option java_outer_classname = "ExecutionContextProtos";
option java_package = "org.chromium.components.metrics";

package metrics;

// Enums corresponding to the Chrome execution context in which data was
// collected.

// Chrome process type. Derived from content/public/common/process_type.h.
enum Process {
  UNKNOWN_PROCESS = 0;
  BROWSER_PROCESS = 1;
  RENDERER_PROCESS = 2;
  GPU_PROCESS = 3;
  UTILITY_PROCESS = 4;
  ZYGOTE_PROCESS = 5;
  SANDBOX_HELPER_PROCESS = 6;
  PPAPI_PLUGIN_PROCESS = 7;
  PPAPI_BROKER_PROCESS = 8;
}

// Chrome thread. This list is not exhaustive.
enum Thread {
  UNKNOWN_THREAD = 0;

  // Browser process threads from content/public/browser/browser_thread.h,
  // some of which occur in other processes as well.
  UI_THREAD = 1;
  FILE_THREAD = 2;
  FILE_USER_BLOCKING_THREAD = 3;
  PROCESS_LAUNCHER_THREAD = 4;
  CACHE_THREAD = 5;
  IO_THREAD = 6;
  DB_THREAD = 7;

  // GPU process thread.
  GPU_MAIN_THREAD = 8;

  // Renderer process threads.
  RENDER_THREAD = 9;
  UTILITY_THREAD = 10;
}

// Process phases, or where in the lifetime of the process it is such as
// startup, normal operation, shutdown, etc. These don't necessarily occur in
// the order defined here so it's fine to add new ones to further segregrate
// the lifetime of a process.
enum ProcessPhase {
  // The browser's main message loop has been started.
  // Based on histogram Startup.BrowserMessageLoopStartTime.
  MAIN_LOOP_START = 0;

  // The beginning of navigation in the first web contents' main frame.
  // Based on histogram Startup.FirstWebContents.MainNavigationStart.
  MAIN_NAVIGATION_START = 1;

  // The navigation is committed (first bytes received) in the first web
  // contents' main frame.
  // Based on histogram Startup.FirstWebContents.MainNavigationFinished.
  MAIN_NAVIGATION_FINISHED = 2;

  // First non-empty paint of the first web contents.
  // Based on histogram Startup.FirstWebContents.NonEmptyPaint2.
  FIRST_NONEMPTY_PAINT = 3;

  // Process shutdown has begun.
  SHUTDOWN_START = 4;
}