UNPKG

perfetto-protos

Version:

Perfetto protos exposed via protobuf-es for browser and node

302 lines (261 loc) 10.8 kB
// // 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. // @generated by protoc-gen-es v2.2.2 with parameter "target=ts" // @generated from file protos/perfetto/trace/track_event/chrome_frame_reporter.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/track_event/chrome_frame_reporter.proto. */ export const file_protos_perfetto_trace_track_event_chrome_frame_reporter: GenFile = /*@__PURE__*/ fileDesc("Cj1wcm90b3MvcGVyZmV0dG8vdHJhY2UvdHJhY2tfZXZlbnQvY2hyb21lX2ZyYW1lX3JlcG9ydGVyLnByb3RvEg9wZXJmZXR0by5wcm90b3MioggKE0Nocm9tZUZyYW1lUmVwb3J0ZXISOQoFc3RhdGUYASABKA4yKi5wZXJmZXR0by5wcm90b3MuQ2hyb21lRnJhbWVSZXBvcnRlci5TdGF0ZRJECgZyZWFzb24YAiABKA4yNC5wZXJmZXR0by5wcm90b3MuQ2hyb21lRnJhbWVSZXBvcnRlci5GcmFtZURyb3BSZWFzb24SFAoMZnJhbWVfc291cmNlGAMgASgEEhYKDmZyYW1lX3NlcXVlbmNlGAQgASgEEhoKEmFmZmVjdHNfc21vb3RobmVzcxgFIAEoCBJGCgxzY3JvbGxfc3RhdGUYBiABKA4yMC5wZXJmZXR0by5wcm90b3MuQ2hyb21lRnJhbWVSZXBvcnRlci5TY3JvbGxTdGF0ZRIaChJoYXNfbWFpbl9hbmltYXRpb24YByABKAgSIAoYaGFzX2NvbXBvc2l0b3JfYW5pbWF0aW9uGAggASgIEh0KFWhhc19zbW9vdGhfaW5wdXRfbWFpbhgJIAEoCBIbChNoYXNfbWlzc2luZ19jb250ZW50GAogASgIEhoKEmxheWVyX3RyZWVfaG9zdF9pZBgLIAEoBBIYChBoYXNfaGlnaF9sYXRlbmN5GAwgASgIEkIKCmZyYW1lX3R5cGUYDSABKA4yLi5wZXJmZXR0by5wcm90b3MuQ2hyb21lRnJhbWVSZXBvcnRlci5GcmFtZVR5cGUSJwofaGlnaF9sYXRlbmN5X2NvbnRyaWJ1dGlvbl9zdGFnZRgOIAMoCRIjChtjaGVja2VyYm9hcmRlZF9uZWVkc19yYXN0ZXIYDyABKAgSIwobY2hlY2tlcmJvYXJkZWRfbmVlZHNfcmVjb3JkGBAgASgIIm0KBVN0YXRlEhsKF1NUQVRFX05PX1VQREFURV9ERVNJUkVEEAASFwoTU1RBVEVfUFJFU0VOVEVEX0FMTBABEhsKF1NUQVRFX1BSRVNFTlRFRF9QQVJUSUFMEAISEQoNU1RBVEVfRFJPUFBFRBADIn4KD0ZyYW1lRHJvcFJlYXNvbhIWChJSRUFTT05fVU5TUEVDSUZJRUQQABIdChlSRUFTT05fRElTUExBWV9DT01QT1NJVE9SEAESFgoSUkVBU09OX01BSU5fVEhSRUFEEAISHAoYUkVBU09OX0NMSUVOVF9DT01QT1NJVE9SEAMiewoLU2Nyb2xsU3RhdGUSDwoLU0NST0xMX05PTkUQABIWChJTQ1JPTExfTUFJTl9USFJFQUQQARIcChhTQ1JPTExfQ09NUE9TSVRPUl9USFJFQUQQAhIRCg1TQ1JPTExfUkFTVEVSEAMSEgoOU0NST0xMX1VOS05PV04QBCIlCglGcmFtZVR5cGUSCgoGRk9SS0VEEAASDAoIQkFDS0ZJTEwQAQ"); /** * @generated from message perfetto.protos.ChromeFrameReporter */ export type ChromeFrameReporter = Message<"perfetto.protos.ChromeFrameReporter"> & { /** * @generated from field: optional perfetto.protos.ChromeFrameReporter.State state = 1; */ state: ChromeFrameReporter_State; /** * The reason is set only if |state| is not |STATE_UPDATED_ALL|. * * @generated from field: optional perfetto.protos.ChromeFrameReporter.FrameDropReason reason = 2; */ reason: ChromeFrameReporter_FrameDropReason; /** * @generated from field: optional uint64 frame_source = 3; */ frameSource: bigint; /** * @generated from field: optional uint64 frame_sequence = 4; */ frameSequence: bigint; /** * If this is a droped frame (i.e. if |state| is set to |STATE_DROPPED| or * |STATE_PRESENTED_PARTIAL|), then indicates whether this frame impacts * smoothness. * * @generated from field: optional bool affects_smoothness = 5; */ affectsSmoothness: boolean; /** * The type of active scroll. * * @generated from field: optional perfetto.protos.ChromeFrameReporter.ScrollState scroll_state = 6; */ scrollState: ChromeFrameReporter_ScrollState; /** * If any main thread animation is active during this frame. * * @generated from field: optional bool has_main_animation = 7; */ hasMainAnimation: boolean; /** * If any compositor thread animation is active during this frame. * * @generated from field: optional bool has_compositor_animation = 8; */ hasCompositorAnimation: boolean; /** * If any touch-driven UX (not scroll) is active during this frame. * * @generated from field: optional bool has_smooth_input_main = 9; */ hasSmoothInputMain: boolean; /** * Whether the frame contained any missing content (i.e. whether there was * checkerboarding in the frame). If has_missing_content, * checkerboarded_needs_raster and checkerboarded_needs_record all have * values, has_missing_content should equal checkerboarded_needs_raster || * checkerboarded_needs_record. * * @generated from field: optional bool has_missing_content = 10; */ hasMissingContent: boolean; /** * The id of layer_tree_host that the frame has been produced for. * * @generated from field: optional uint64 layer_tree_host_id = 11; */ layerTreeHostId: bigint; /** * If total latency of PipelineReporter exceeds a certain limit. * * @generated from field: optional bool has_high_latency = 12; */ hasHighLatency: boolean; /** * Indicate if the frame is "FORKED" (i.e. a PipelineReporter event starts at * the same frame sequence as another PipelineReporter) or "BACKFILL" * (i.e. dropped frames when there are no partial compositor updates). * * @generated from field: optional perfetto.protos.ChromeFrameReporter.FrameType frame_type = 13; */ frameType: ChromeFrameReporter_FrameType; /** * The breakdown stage of PipelineReporter that is most likely accountable for * high latency. * * @generated from field: repeated string high_latency_contribution_stage = 14; */ highLatencyContributionStage: string[]; /** * Whether the frame contained any content that is not fully rastered. * * @generated from field: optional bool checkerboarded_needs_raster = 15; */ checkerboardedNeedsRaster: boolean; /** * Whether the frame contained any content that is not fully recorded. * * @generated from field: optional bool checkerboarded_needs_record = 16; */ checkerboardedNeedsRecord: boolean; }; /** * Describes the message perfetto.protos.ChromeFrameReporter. * Use `create(ChromeFrameReporterSchema)` to create a new message. */ export const ChromeFrameReporterSchema: GenMessage<ChromeFrameReporter> = /*@__PURE__*/ messageDesc(file_protos_perfetto_trace_track_event_chrome_frame_reporter, 0); /** * @generated from enum perfetto.protos.ChromeFrameReporter.State */ export enum ChromeFrameReporter_State { /** * The frame did not have any updates to present. * * @generated from enum value: STATE_NO_UPDATE_DESIRED = 0; */ NO_UPDATE_DESIRED = 0, /** * The frame presented all the desired updates (i.e. any updates requested * from both the compositor thread and main-threads were handled). * * @generated from enum value: STATE_PRESENTED_ALL = 1; */ PRESENTED_ALL = 1, /** * The frame was presented with some updates, but also missed some updates * (e.g. missed updates from the main-thread, but included updates from the * compositor thread). * * @generated from enum value: STATE_PRESENTED_PARTIAL = 2; */ PRESENTED_PARTIAL = 2, /** * The frame was dropped, i.e. some updates were desired for the frame, but * was not presented. * * @generated from enum value: STATE_DROPPED = 3; */ DROPPED = 3, } /** * Describes the enum perfetto.protos.ChromeFrameReporter.State. */ export const ChromeFrameReporter_StateSchema: GenEnum<ChromeFrameReporter_State> = /*@__PURE__*/ enumDesc(file_protos_perfetto_trace_track_event_chrome_frame_reporter, 0, 0); /** * @generated from enum perfetto.protos.ChromeFrameReporter.FrameDropReason */ export enum ChromeFrameReporter_FrameDropReason { /** * @generated from enum value: REASON_UNSPECIFIED = 0; */ REASON_UNSPECIFIED = 0, /** * Frame was dropped by the display-compositor. * The display-compositor may drop a frame some times (e.g. the frame missed * the deadline, or was blocked on surface-sync, etc.) * * @generated from enum value: REASON_DISPLAY_COMPOSITOR = 1; */ REASON_DISPLAY_COMPOSITOR = 1, /** * Frame was dropped because of the main-thread. * The main-thread may cause a frame to be dropped, e.g. if the main-thread * is running expensive javascript, or doing a lot of layout updates, etc. * * @generated from enum value: REASON_MAIN_THREAD = 2; */ REASON_MAIN_THREAD = 2, /** * Frame was dropped by the client compositor. * The client compositor can drop some frames too (e.g. attempting to * recover latency, missing the deadline, etc.). * * @generated from enum value: REASON_CLIENT_COMPOSITOR = 3; */ REASON_CLIENT_COMPOSITOR = 3, } /** * Describes the enum perfetto.protos.ChromeFrameReporter.FrameDropReason. */ export const ChromeFrameReporter_FrameDropReasonSchema: GenEnum<ChromeFrameReporter_FrameDropReason> = /*@__PURE__*/ enumDesc(file_protos_perfetto_trace_track_event_chrome_frame_reporter, 0, 1); /** * @generated from enum perfetto.protos.ChromeFrameReporter.ScrollState */ export enum ChromeFrameReporter_ScrollState { /** * @generated from enum value: SCROLL_NONE = 0; */ SCROLL_NONE = 0, /** * @generated from enum value: SCROLL_MAIN_THREAD = 1; */ SCROLL_MAIN_THREAD = 1, /** * @generated from enum value: SCROLL_COMPOSITOR_THREAD = 2; */ SCROLL_COMPOSITOR_THREAD = 2, /** * @generated from enum value: SCROLL_RASTER = 3; */ SCROLL_RASTER = 3, /** * Used when it can't be determined whether a scroll is in progress or not. * * @generated from enum value: SCROLL_UNKNOWN = 4; */ SCROLL_UNKNOWN = 4, } /** * Describes the enum perfetto.protos.ChromeFrameReporter.ScrollState. */ export const ChromeFrameReporter_ScrollStateSchema: GenEnum<ChromeFrameReporter_ScrollState> = /*@__PURE__*/ enumDesc(file_protos_perfetto_trace_track_event_chrome_frame_reporter, 0, 2); /** * @generated from enum perfetto.protos.ChromeFrameReporter.FrameType */ export enum ChromeFrameReporter_FrameType { /** * @generated from enum value: FORKED = 0; */ FORKED = 0, /** * @generated from enum value: BACKFILL = 1; */ BACKFILL = 1, } /** * Describes the enum perfetto.protos.ChromeFrameReporter.FrameType. */ export const ChromeFrameReporter_FrameTypeSchema: GenEnum<ChromeFrameReporter_FrameType> = /*@__PURE__*/ enumDesc(file_protos_perfetto_trace_track_event_chrome_frame_reporter, 0, 3);