blob: bd82b5a9d86af2d50abae02c21e2543936b58ed9 [file] [log] [blame]
/*
* Copyright (C) 2020 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
syntax = "proto2";
package perfetto.protos;
// Describes a Chrome thread's attributes. Emitted as part of a TrackDescriptor,
// usually by the thread's trace writer. Must be paired with a ThreadDescriptor
// in the same TrackDescriptor.
//
// Next id: 3.
message ChromeThreadDescriptor {
enum ThreadType {
THREAD_UNSPECIFIED = 0;
THREAD_MAIN = 1;
THREAD_IO = 2;
THREAD_POOL_BG_WORKER = 3;
THREAD_POOL_FG_WORKER = 4;
THREAD_POOL_FG_BLOCKING = 5;
THREAD_POOL_BG_BLOCKING = 6;
THREAD_POOL_SERVICE = 7;
THREAD_COMPOSITOR = 8;
THREAD_VIZ_COMPOSITOR = 9;
THREAD_COMPOSITOR_WORKER = 10;
THREAD_SERVICE_WORKER = 11;
THREAD_NETWORK_SERVICE = 12;
THREAD_CHILD_IO = 13;
THREAD_BROWSER_IO = 14;
THREAD_BROWSER_MAIN = 15;
THREAD_RENDERER_MAIN = 16;
THREAD_UTILITY_MAIN = 17;
THREAD_GPU_MAIN = 18;
THREAD_CACHE_BLOCKFILE = 19;
THREAD_MEDIA = 20;
THREAD_AUDIO_OUTPUTDEVICE = 21;
THREAD_AUDIO_INPUTDEVICE = 22;
THREAD_GPU_MEMORY = 23;
THREAD_GPU_VSYNC = 24;
THREAD_DXA_VIDEODECODER = 25;
THREAD_BROWSER_WATCHDOG = 26;
THREAD_WEBRTC_NETWORK = 27;
THREAD_WINDOW_OWNER = 28;
THREAD_WEBRTC_SIGNALING = 29;
THREAD_WEBRTC_WORKER = 30;
THREAD_PPAPI_MAIN = 31;
THREAD_GPU_WATCHDOG = 32;
THREAD_SWAPPER = 33;
THREAD_GAMEPAD_POLLING = 34;
THREAD_WEBCRYPTO = 35;
THREAD_DATABASE = 36;
THREAD_PROXYRESOLVER = 37;
THREAD_DEVTOOLSADB = 38;
THREAD_NETWORKCONFIGWATCHER = 39;
THREAD_WASAPI_RENDER = 40;
THREAD_LOADER_LOCK_SAMPLER = 41;
THREAD_MEMORY_INFRA = 50;
THREAD_SAMPLING_PROFILER = 51;
};
optional ThreadType thread_type = 1;
// To support old UI. New UI should determine default sorting by thread_type.
optional int32 legacy_sort_index = 2;
}