UNPKG

perfetto-protos

Version:

Perfetto protos exposed via protobuf-es for browser and node

507 lines (426 loc) 15 kB
// // Copyright (C) 2023 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. // @generated by protoc-gen-es v2.2.2 with parameter "target=ts" // @generated from file protos/perfetto/trace/etw/etw.proto (package perfetto.protos, syntax proto2) /* eslint-disable */ import type { GenEnum, GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1"; import { enumDesc, fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv1"; import type { Message } from "@bufbuild/protobuf"; /** * Describes the file protos/perfetto/trace/etw/etw.proto. */ export const file_protos_perfetto_trace_etw_etw: GenFile = /*@__PURE__*/ fileDesc("CiNwcm90b3MvcGVyZmV0dG8vdHJhY2UvZXR3L2V0dy5wcm90bxIPcGVyZmV0dG8ucHJvdG9zIvgKCg9DU3dpdGNoRXR3RXZlbnQSFQoNbmV3X3RocmVhZF9pZBgBIAEoDRIVCg1vbGRfdGhyZWFkX2lkGAIgASgNEhsKE25ld190aHJlYWRfcHJpb3JpdHkYAyABKBESGwoTb2xkX3RocmVhZF9wcmlvcml0eRgEIAEoERIYChBwcmV2aW91c19jX3N0YXRlGAUgASgNElQKFm9sZF90aHJlYWRfd2FpdF9yZWFzb24YBiABKA4yNC5wZXJmZXR0by5wcm90b3MuQ1N3aXRjaEV0d0V2ZW50Lk9sZFRocmVhZFdhaXRSZWFzb24SUAoUb2xkX3RocmVhZF93YWl0X21vZGUYByABKA4yMi5wZXJmZXR0by5wcm90b3MuQ1N3aXRjaEV0d0V2ZW50Lk9sZFRocmVhZFdhaXRNb2RlEkkKEG9sZF90aHJlYWRfc3RhdGUYCCABKA4yLy5wZXJmZXR0by5wcm90b3MuQ1N3aXRjaEV0d0V2ZW50Lk9sZFRocmVhZFN0YXRlEicKH29sZF90aHJlYWRfd2FpdF9pZGVhbF9wcm9jZXNzb3IYCSABKBESHAoUbmV3X3RocmVhZF93YWl0X3RpbWUYCiABKA0i6QUKE09sZFRocmVhZFdhaXRSZWFzb24SDQoJRVhFQ1VUSVZFEAASDQoJRlJFRV9QQUdFEAESCwoHUEFHRV9JThACEhMKD1BPT0xfQUxMT0NBVElPThADEhMKD0RFTEFZX0VYRUNVVElPThAEEgsKB1NVU1BFTkQQBRIQCgxVU0VSX1JFUVVFU1QQBhIQCgxXUl9FWEVDVVRJVkUQBxIQCgxXUl9GUkVFX1BBR0UQCBIOCgpXUl9QQUdFX0lOEAkSFgoSV1JfUE9PTF9BTExPQ0FUSU9OEAoSFgoSV1JfREVMQVlfRVhFQ1VUSU9OEAsSEAoMV1JfU1VTUEVOREVEEAwSEwoPV1JfVVNFUl9SRVFVRVNUEA0SEQoNV1JfRVZFTlRfUEFJUhAOEgwKCFdSX1FVRVVFEA8SEwoPV1JfTFBDX1JFQ0VJVkVSEBASEAoMV1JfTFBDX1JFUExZEBESFQoRV1JfVklSVFVBTF9NRU1PUlkQEhIPCgtXUl9QQUdFX09VVBATEhIKDldSX1JFTkRFWl9WT1VTEBQSEgoOV1JfS0VZRURfRVZFTlQQFRIRCg1XUl9URVJNSU5BVEVEEBYSFgoSV1JfUFJPQ0VTU19JTl9TV0FQEBcSFwoTV1JfQ1BVX1JBVEVfQ09OVFJPTBAYEhQKEFdSX0NBTExPVVRfU1RBQ0sQGRINCglXUl9LRVJORUwQGhIPCgtXUl9SRVNPVVJDRRAbEhAKDFdSX1BVU0hfTE9DSxAcEgwKCFdSX01VVEVYEB0SEgoOV1JfUVVBTlRVTV9FTkQQHhITCg9XUl9ESVNQQVRDSF9JTlQQHxIQCgxXUl9QUkVFTVBURUQQIBIWChJXUl9ZSUVMRF9FWEVDVVRJT04QIRIRCg1XUl9GQVNUX01VVEVYECISEgoOV1JfR1VBUkRfTVVURVgQIxIOCgpXUl9SVU5ET1dOECQSFwoTTUFYSU1VTV9XQUlUX1JFQVNPThAlIjMKEU9sZFRocmVhZFdhaXRNb2RlEg8KC0tFUk5FTF9NT0RFEAASDQoJVVNFUl9NT0RFEAEihwEKDk9sZFRocmVhZFN0YXRlEg8KC0lOSVRJQUxJWkVEEAASCQoFUkVBRFkQARILCgdSVU5OSU5HEAISCwoHU1RBTkRCWRADEg4KClRFUk1JTkFURUQQBBILCgdXQUlUSU5HEAUSDgoKVFJBTlNJVElPThAGEhIKDkRFRkVSUkVEX1JFQURZEAciogMKE1JlYWR5VGhyZWFkRXR3RXZlbnQSEwoLdF90aHJlYWRfaWQYASABKA0SSAoNYWRqdXN0X3JlYXNvbhgCIAEoDjIxLnBlcmZldHRvLnByb3Rvcy5SZWFkeVRocmVhZEV0d0V2ZW50LkFkanVzdFJlYXNvbhIYChBhZGp1c3RfaW5jcmVtZW50GAMgASgREjwKBGZsYWcYBCABKA4yLi5wZXJmZXR0by5wcm90b3MuUmVhZHlUaHJlYWRFdHdFdmVudC5UcmFjZUZsYWciWAoMQWRqdXN0UmVhc29uEhgKFElHTk9SRV9USEVfSU5DUkVNRU5UEAASEwoPQVBQTFlfSU5DUkVNRU5UEAESGQoVQVBQTFlfSU5DUkVNRU5UX0JPT1NUEAIiegoJVHJhY2VGbGFnEhoKFlRSQUNFX0ZMQUdfVU5TUEVDSUZJRUQQABISCg5USFJFQURfUkVBRElFRBABEhwKGEtFUk5FTF9TVEFDS19TV0FQUEVEX09VVBACEh8KG1BST0NFU1NfQUREUkVTU19TV0FQUEVEX09VVBAE"); /** * Proto definition based on the Thread_v2 CSwitch class definition * See: https://learn.microsoft.com/en-us/windows/win32/etw/cswitch * * @generated from message perfetto.protos.CSwitchEtwEvent */ export type CSwitchEtwEvent = Message<"perfetto.protos.CSwitchEtwEvent"> & { /** * New thread ID after the switch. * * @generated from field: optional uint32 new_thread_id = 1; */ newThreadId: number; /** * Previous thread ID. * * @generated from field: optional uint32 old_thread_id = 2; */ oldThreadId: number; /** * Thread priority of the new thread. * * @generated from field: optional sint32 new_thread_priority = 3; */ newThreadPriority: number; /** * Thread priority of the previous thread. * * @generated from field: optional sint32 old_thread_priority = 4; */ oldThreadPriority: number; /** * The index of the C-state that was last used by the processor. A value of 0 * represents the lightest idle state with higher values representing deeper * C-states. * * @generated from field: optional uint32 previous_c_state = 5; */ previousCState: number; /** * @generated from field: optional perfetto.protos.CSwitchEtwEvent.OldThreadWaitReason old_thread_wait_reason = 6; */ oldThreadWaitReason: CSwitchEtwEvent_OldThreadWaitReason; /** * @generated from field: optional perfetto.protos.CSwitchEtwEvent.OldThreadWaitMode old_thread_wait_mode = 7; */ oldThreadWaitMode: CSwitchEtwEvent_OldThreadWaitMode; /** * @generated from field: optional perfetto.protos.CSwitchEtwEvent.OldThreadState old_thread_state = 8; */ oldThreadState: CSwitchEtwEvent_OldThreadState; /** * Ideal wait time of the previous thread. * * @generated from field: optional sint32 old_thread_wait_ideal_processor = 9; */ oldThreadWaitIdealProcessor: number; /** * Wait time for the new thread. * * @generated from field: optional uint32 new_thread_wait_time = 10; */ newThreadWaitTime: number; }; /** * Describes the message perfetto.protos.CSwitchEtwEvent. * Use `create(CSwitchEtwEventSchema)` to create a new message. */ export const CSwitchEtwEventSchema: GenMessage<CSwitchEtwEvent> = /*@__PURE__*/ messageDesc(file_protos_perfetto_trace_etw_etw, 0); /** * Wait reason for the previous thread. The ordering is important as based on * the OldThreadWaitReason definition from the link above. The following are * the possible values: * * @generated from enum perfetto.protos.CSwitchEtwEvent.OldThreadWaitReason */ export enum CSwitchEtwEvent_OldThreadWaitReason { /** * @generated from enum value: EXECUTIVE = 0; */ EXECUTIVE = 0, /** * @generated from enum value: FREE_PAGE = 1; */ FREE_PAGE = 1, /** * @generated from enum value: PAGE_IN = 2; */ PAGE_IN = 2, /** * @generated from enum value: POOL_ALLOCATION = 3; */ POOL_ALLOCATION = 3, /** * @generated from enum value: DELAY_EXECUTION = 4; */ DELAY_EXECUTION = 4, /** * @generated from enum value: SUSPEND = 5; */ SUSPEND = 5, /** * @generated from enum value: USER_REQUEST = 6; */ USER_REQUEST = 6, /** * @generated from enum value: WR_EXECUTIVE = 7; */ WR_EXECUTIVE = 7, /** * @generated from enum value: WR_FREE_PAGE = 8; */ WR_FREE_PAGE = 8, /** * @generated from enum value: WR_PAGE_IN = 9; */ WR_PAGE_IN = 9, /** * @generated from enum value: WR_POOL_ALLOCATION = 10; */ WR_POOL_ALLOCATION = 10, /** * @generated from enum value: WR_DELAY_EXECUTION = 11; */ WR_DELAY_EXECUTION = 11, /** * @generated from enum value: WR_SUSPENDED = 12; */ WR_SUSPENDED = 12, /** * @generated from enum value: WR_USER_REQUEST = 13; */ WR_USER_REQUEST = 13, /** * @generated from enum value: WR_EVENT_PAIR = 14; */ WR_EVENT_PAIR = 14, /** * @generated from enum value: WR_QUEUE = 15; */ WR_QUEUE = 15, /** * @generated from enum value: WR_LPC_RECEIVER = 16; */ WR_LPC_RECEIVER = 16, /** * @generated from enum value: WR_LPC_REPLY = 17; */ WR_LPC_REPLY = 17, /** * @generated from enum value: WR_VIRTUAL_MEMORY = 18; */ WR_VIRTUAL_MEMORY = 18, /** * @generated from enum value: WR_PAGE_OUT = 19; */ WR_PAGE_OUT = 19, /** * @generated from enum value: WR_RENDEZ_VOUS = 20; */ WR_RENDEZ_VOUS = 20, /** * @generated from enum value: WR_KEYED_EVENT = 21; */ WR_KEYED_EVENT = 21, /** * @generated from enum value: WR_TERMINATED = 22; */ WR_TERMINATED = 22, /** * @generated from enum value: WR_PROCESS_IN_SWAP = 23; */ WR_PROCESS_IN_SWAP = 23, /** * @generated from enum value: WR_CPU_RATE_CONTROL = 24; */ WR_CPU_RATE_CONTROL = 24, /** * @generated from enum value: WR_CALLOUT_STACK = 25; */ WR_CALLOUT_STACK = 25, /** * @generated from enum value: WR_KERNEL = 26; */ WR_KERNEL = 26, /** * @generated from enum value: WR_RESOURCE = 27; */ WR_RESOURCE = 27, /** * @generated from enum value: WR_PUSH_LOCK = 28; */ WR_PUSH_LOCK = 28, /** * @generated from enum value: WR_MUTEX = 29; */ WR_MUTEX = 29, /** * @generated from enum value: WR_QUANTUM_END = 30; */ WR_QUANTUM_END = 30, /** * @generated from enum value: WR_DISPATCH_INT = 31; */ WR_DISPATCH_INT = 31, /** * @generated from enum value: WR_PREEMPTED = 32; */ WR_PREEMPTED = 32, /** * @generated from enum value: WR_YIELD_EXECUTION = 33; */ WR_YIELD_EXECUTION = 33, /** * @generated from enum value: WR_FAST_MUTEX = 34; */ WR_FAST_MUTEX = 34, /** * @generated from enum value: WR_GUARD_MUTEX = 35; */ WR_GUARD_MUTEX = 35, /** * @generated from enum value: WR_RUNDOWN = 36; */ WR_RUNDOWN = 36, /** * @generated from enum value: MAXIMUM_WAIT_REASON = 37; */ MAXIMUM_WAIT_REASON = 37, } /** * Describes the enum perfetto.protos.CSwitchEtwEvent.OldThreadWaitReason. */ export const CSwitchEtwEvent_OldThreadWaitReasonSchema: GenEnum<CSwitchEtwEvent_OldThreadWaitReason> = /*@__PURE__*/ enumDesc(file_protos_perfetto_trace_etw_etw, 0, 0); /** * Wait mode for the previous thread. The ordering is important as based on * the OldThreadWaitMode definition from the link above. The following are the * possible values: * * @generated from enum perfetto.protos.CSwitchEtwEvent.OldThreadWaitMode */ export enum CSwitchEtwEvent_OldThreadWaitMode { /** * @generated from enum value: KERNEL_MODE = 0; */ KERNEL_MODE = 0, /** * @generated from enum value: USER_MODE = 1; */ USER_MODE = 1, } /** * Describes the enum perfetto.protos.CSwitchEtwEvent.OldThreadWaitMode. */ export const CSwitchEtwEvent_OldThreadWaitModeSchema: GenEnum<CSwitchEtwEvent_OldThreadWaitMode> = /*@__PURE__*/ enumDesc(file_protos_perfetto_trace_etw_etw, 0, 1); /** * State of the previous thread. The ordering is important as based on the * OldThreadState definition from the link above. The following are the * possible state values: * * @generated from enum perfetto.protos.CSwitchEtwEvent.OldThreadState */ export enum CSwitchEtwEvent_OldThreadState { /** * @generated from enum value: INITIALIZED = 0; */ INITIALIZED = 0, /** * @generated from enum value: READY = 1; */ READY = 1, /** * @generated from enum value: RUNNING = 2; */ RUNNING = 2, /** * @generated from enum value: STANDBY = 3; */ STANDBY = 3, /** * @generated from enum value: TERMINATED = 4; */ TERMINATED = 4, /** * @generated from enum value: WAITING = 5; */ WAITING = 5, /** * @generated from enum value: TRANSITION = 6; */ TRANSITION = 6, /** * @generated from enum value: DEFERRED_READY = 7; */ DEFERRED_READY = 7, } /** * Describes the enum perfetto.protos.CSwitchEtwEvent.OldThreadState. */ export const CSwitchEtwEvent_OldThreadStateSchema: GenEnum<CSwitchEtwEvent_OldThreadState> = /*@__PURE__*/ enumDesc(file_protos_perfetto_trace_etw_etw, 0, 2); /** * Proto definition based on the Thread_v2 CSwitch class definition * See: https://learn.microsoft.com/en-us/windows/win32/etw/readythread * * @generated from message perfetto.protos.ReadyThreadEtwEvent */ export type ReadyThreadEtwEvent = Message<"perfetto.protos.ReadyThreadEtwEvent"> & { /** * The thread identifier of the thread being readied for execution. * * @generated from field: optional uint32 t_thread_id = 1; */ tThreadId: number; /** * @generated from field: optional perfetto.protos.ReadyThreadEtwEvent.AdjustReason adjust_reason = 2; */ adjustReason: ReadyThreadEtwEvent_AdjustReason; /** * The value by which the priority is being adjusted. * * @generated from field: optional sint32 adjust_increment = 3; */ adjustIncrement: number; /** * @generated from field: optional perfetto.protos.ReadyThreadEtwEvent.TraceFlag flag = 4; */ flag: ReadyThreadEtwEvent_TraceFlag; }; /** * Describes the message perfetto.protos.ReadyThreadEtwEvent. * Use `create(ReadyThreadEtwEventSchema)` to create a new message. */ export const ReadyThreadEtwEventSchema: GenMessage<ReadyThreadEtwEvent> = /*@__PURE__*/ messageDesc(file_protos_perfetto_trace_etw_etw, 1); /** * The reason for the priority boost. The ordering is important as based on * the AdjustReason definition from the link above. * * @generated from enum perfetto.protos.ReadyThreadEtwEvent.AdjustReason */ export enum ReadyThreadEtwEvent_AdjustReason { /** * @generated from enum value: IGNORE_THE_INCREMENT = 0; */ IGNORE_THE_INCREMENT = 0, /** * Apply the increment, which will decay incrementally at the end of each * quantum. * * @generated from enum value: APPLY_INCREMENT = 1; */ APPLY_INCREMENT = 1, /** * Apply the increment as a boost that will decay in its entirety at quantum * (typically for priority donation). * * @generated from enum value: APPLY_INCREMENT_BOOST = 2; */ APPLY_INCREMENT_BOOST = 2, } /** * Describes the enum perfetto.protos.ReadyThreadEtwEvent.AdjustReason. */ export const ReadyThreadEtwEvent_AdjustReasonSchema: GenEnum<ReadyThreadEtwEvent_AdjustReason> = /*@__PURE__*/ enumDesc(file_protos_perfetto_trace_etw_etw, 1, 0); /** * @generated from enum perfetto.protos.ReadyThreadEtwEvent.TraceFlag */ export enum ReadyThreadEtwEvent_TraceFlag { /** * @generated from enum value: TRACE_FLAG_UNSPECIFIED = 0; */ TRACE_FLAG_UNSPECIFIED = 0, /** * The thread has been readied from DPC (deferred procedure call). * * @generated from enum value: THREAD_READIED = 1; */ THREAD_READIED = 1, /** * The kernel stack is currently swapped out. * * @generated from enum value: KERNEL_STACK_SWAPPED_OUT = 2; */ KERNEL_STACK_SWAPPED_OUT = 2, /** * The process address space is swapped out. * * @generated from enum value: PROCESS_ADDRESS_SWAPPED_OUT = 4; */ PROCESS_ADDRESS_SWAPPED_OUT = 4, } /** * Describes the enum perfetto.protos.ReadyThreadEtwEvent.TraceFlag. */ export const ReadyThreadEtwEvent_TraceFlagSchema: GenEnum<ReadyThreadEtwEvent_TraceFlag> = /*@__PURE__*/ enumDesc(file_protos_perfetto_trace_etw_etw, 1, 1);