UNPKG

perfetto-protos

Version:

Perfetto protos exposed via protobuf-es for browser and node

166 lines (145 loc) 6.74 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/metrics/chrome/scroll_jank_v3.proto (package perfetto.protos, syntax proto2) /* eslint-disable */ import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1"; import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv1"; import { file_protos_perfetto_metrics_custom_options } from "../custom_options_pb"; import type { Message } from "@bufbuild/protobuf"; /** * Describes the file protos/perfetto/metrics/chrome/scroll_jank_v3.proto. */ export const file_protos_perfetto_metrics_chrome_scroll_jank_v3: GenFile = /*@__PURE__*/ fileDesc("CjNwcm90b3MvcGVyZmV0dG8vbWV0cmljcy9jaHJvbWUvc2Nyb2xsX2phbmtfdjMucHJvdG8SD3BlcmZldHRvLnByb3RvcyLjBQoSQ2hyb21lU2Nyb2xsSmFua1YzEjIKEHRyYWNlX251bV9mcmFtZXMYASABKANCGIq1GBRjb3VudF9iaWdnZXJJc0JldHRlchI5ChZ0cmFjZV9udW1famFua3lfZnJhbWVzGAIgASgDQhmKtRgVY291bnRfc21hbGxlcklzQmV0dGVyEjwKHHRyYWNlX3Njcm9sbF9qYW5rX3BlcmNlbnRhZ2UYAyABKAFCFoq1GBJuJV9zbWFsbGVySXNCZXR0ZXISMAoRdnN5bmNfaW50ZXJ2YWxfbXMYBCABKAFCFYq1GBFtc19iaWdnZXJJc0JldHRlchI7CgdzY3JvbGxzGAUgAygLMioucGVyZmV0dG8ucHJvdG9zLkNocm9tZVNjcm9sbEphbmtWMy5TY3JvbGwasAMKBlNjcm9sbBIsCgpudW1fZnJhbWVzGAEgASgDQhiKtRgUY291bnRfYmlnZ2VySXNCZXR0ZXISMwoQbnVtX2phbmt5X2ZyYW1lcxgCIAEoA0IZirUYFWNvdW50X3NtYWxsZXJJc0JldHRlchI2ChZzY3JvbGxfamFua19wZXJjZW50YWdlGAMgASgBQhaKtRgSbiVfc21hbGxlcklzQmV0dGVyEkAKGm1heF9kZWxheV9zaW5jZV9sYXN0X2ZyYW1lGAQgASgBQhyKtRgYdW5pdGxlc3Nfc21hbGxlcklzQmV0dGVyElYKEnNjcm9sbF9qYW5rX2NhdXNlcxgFIAMoCzI6LnBlcmZldHRvLnByb3Rvcy5DaHJvbWVTY3JvbGxKYW5rVjMuU2Nyb2xsLlNjcm9sbEphbmtDYXVzZRpxCg9TY3JvbGxKYW5rQ2F1c2USDQoFY2F1c2UYASABKAkSEQoJc3ViX2NhdXNlGAIgASgJEjwKFmRlbGF5X3NpbmNlX2xhc3RfZnJhbWUYAyABKAFCHIq1GBh1bml0bGVzc19zbWFsbGVySXNCZXR0ZXI", [file_protos_perfetto_metrics_custom_options]); /** * @generated from message perfetto.protos.ChromeScrollJankV3 */ export type ChromeScrollJankV3 = Message<"perfetto.protos.ChromeScrollJankV3"> & { /** * Total count of unique frames in the trace. * * @generated from field: optional int64 trace_num_frames = 1; */ traceNumFrames: bigint; /** * Number of frames in the trace that had missed vsyncs. * * @generated from field: optional int64 trace_num_janky_frames = 2; */ traceNumJankyFrames: bigint; /** * Computed as: `100 * trace_num_janky_frames / * trace_num_frames`. * * @generated from field: optional double trace_scroll_jank_percentage = 3; */ traceScrollJankPercentage: number; /** * Vsync interval at the time of recording the trace. * * @generated from field: optional double vsync_interval_ms = 4; */ vsyncIntervalMs: number; /** * @generated from field: repeated perfetto.protos.ChromeScrollJankV3.Scroll scrolls = 5; */ scrolls: ChromeScrollJankV3_Scroll[]; }; /** * Describes the message perfetto.protos.ChromeScrollJankV3. * Use `create(ChromeScrollJankV3Schema)` to create a new message. */ export const ChromeScrollJankV3Schema: GenMessage<ChromeScrollJankV3> = /*@__PURE__*/ messageDesc(file_protos_perfetto_metrics_chrome_scroll_jank_v3, 0); /** * Per-scroll metrics. * * @generated from message perfetto.protos.ChromeScrollJankV3.Scroll */ export type ChromeScrollJankV3_Scroll = Message<"perfetto.protos.ChromeScrollJankV3.Scroll"> & { /** * Total count of unique frames during this scroll. * * @generated from field: optional int64 num_frames = 1; */ numFrames: bigint; /** * Number of frames during this scroll that had missed vsyncs. * * @generated from field: optional int64 num_janky_frames = 2; */ numJankyFrames: bigint; /** * Computed as: `100 * num_janky_frames / num_frames`. * * @generated from field: optional double scroll_jank_percentage = 3; */ scrollJankPercentage: number; /** * Maximum `delay_since_last_frame` for janky frames during this scroll * (i.e. maximum `delay_since_last_frame` from the `scroll_jank_causes` * repeated field below). * This is measured in units of vsync interval. For example, a value of 2 * means the delay was 2x the vsync interval. * * @generated from field: optional double max_delay_since_last_frame = 4; */ maxDelaySinceLastFrame: number; /** * @generated from field: repeated perfetto.protos.ChromeScrollJankV3.Scroll.ScrollJankCause scroll_jank_causes = 5; */ scrollJankCauses: ChromeScrollJankV3_Scroll_ScrollJankCause[]; }; /** * Describes the message perfetto.protos.ChromeScrollJankV3.Scroll. * Use `create(ChromeScrollJankV3_ScrollSchema)` to create a new message. */ export const ChromeScrollJankV3_ScrollSchema: GenMessage<ChromeScrollJankV3_Scroll> = /*@__PURE__*/ messageDesc(file_protos_perfetto_metrics_chrome_scroll_jank_v3, 0, 0); /** * The primary cause and sub-cause for scroll jank, one for each jank. * There are exactly `num_janky_frames` items in this field. * * @generated from message perfetto.protos.ChromeScrollJankV3.Scroll.ScrollJankCause */ export type ChromeScrollJankV3_Scroll_ScrollJankCause = Message<"perfetto.protos.ChromeScrollJankV3.Scroll.ScrollJankCause"> & { /** * May be empty, if a cause is not available. * * @generated from field: optional string cause = 1; */ cause: string; /** * May be empty, if a sub-cause is not available. * * @generated from field: optional string sub_cause = 2; */ subCause: string; /** * Number of vsyncs elapsed since the previous frame was presented: will * be > 1.0 since this was a "janky" frame. For example, a value of 2 * means the delay was 2x the vsync interval. * * @generated from field: optional double delay_since_last_frame = 3; */ delaySinceLastFrame: number; }; /** * Describes the message perfetto.protos.ChromeScrollJankV3.Scroll.ScrollJankCause. * Use `create(ChromeScrollJankV3_Scroll_ScrollJankCauseSchema)` to create a new message. */ export const ChromeScrollJankV3_Scroll_ScrollJankCauseSchema: GenMessage<ChromeScrollJankV3_Scroll_ScrollJankCause> = /*@__PURE__*/ messageDesc(file_protos_perfetto_metrics_chrome_scroll_jank_v3, 0, 0, 0);