perfetto-protos
Version:
Perfetto protos exposed via protobuf-es for browser and node
449 lines (393 loc) • 14.4 kB
text/typescript
//
// Copyright (C) 2018 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/chrome/chrome_trace_event.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/chrome/chrome_trace_event.proto.
*/
export const file_protos_perfetto_trace_chrome_chrome_trace_event: GenFile = /*@__PURE__*/
fileDesc("CjVwcm90b3MvcGVyZmV0dG8vdHJhY2UvY2hyb21lL2Nocm9tZV90cmFjZV9ldmVudC5wcm90bxIPcGVyZmV0dG8ucHJvdG9zItMCChFDaHJvbWVUcmFjZWRWYWx1ZRJCCgtuZXN0ZWRfdHlwZRgBIAEoDjItLnBlcmZldHRvLnByb3Rvcy5DaHJvbWVUcmFjZWRWYWx1ZS5OZXN0ZWRUeXBlEhEKCWRpY3Rfa2V5cxgCIAMoCRI3CgtkaWN0X3ZhbHVlcxgDIAMoCzIiLnBlcmZldHRvLnByb3Rvcy5DaHJvbWVUcmFjZWRWYWx1ZRI4CgxhcnJheV92YWx1ZXMYBCADKAsyIi5wZXJmZXR0by5wcm90b3MuQ2hyb21lVHJhY2VkVmFsdWUSEQoJaW50X3ZhbHVlGAUgASgFEhQKDGRvdWJsZV92YWx1ZRgGIAEoARISCgpib29sX3ZhbHVlGAcgASgIEhQKDHN0cmluZ192YWx1ZRgIIAEoCSIhCgpOZXN0ZWRUeXBlEggKBERJQ1QQABIJCgVBUlJBWRABIjYKFkNocm9tZVN0cmluZ1RhYmxlRW50cnkSDQoFdmFsdWUYASABKAkSDQoFaW5kZXgYAiABKAUigQUKEENocm9tZVRyYWNlRXZlbnQSDAoEbmFtZRgBIAEoCRIRCgl0aW1lc3RhbXAYAiABKAMSDQoFcGhhc2UYAyABKAUSEQoJdGhyZWFkX2lkGAQgASgFEhAKCGR1cmF0aW9uGAUgASgDEhcKD3RocmVhZF9kdXJhdGlvbhgGIAEoAxINCgVzY29wZRgHIAEoCRIKCgJpZBgIIAEoBBINCgVmbGFncxgJIAEoDRIbChNjYXRlZ29yeV9ncm91cF9uYW1lGAogASgJEhIKCnByb2Nlc3NfaWQYCyABKAUSGAoQdGhyZWFkX3RpbWVzdGFtcBgMIAEoAxIPCgdiaW5kX2lkGA0gASgEEjMKBGFyZ3MYDiADKAsyJS5wZXJmZXR0by5wcm90b3MuQ2hyb21lVHJhY2VFdmVudC5BcmcSEgoKbmFtZV9pbmRleBgPIAEoDRIhChljYXRlZ29yeV9ncm91cF9uYW1lX2luZGV4GBAgASgNGowCCgNBcmcSDAoEbmFtZRgBIAEoCRIUCgpib29sX3ZhbHVlGAIgASgISAASFAoKdWludF92YWx1ZRgDIAEoBEgAEhMKCWludF92YWx1ZRgEIAEoA0gAEhYKDGRvdWJsZV92YWx1ZRgFIAEoAUgAEhYKDHN0cmluZ192YWx1ZRgGIAEoCUgAEhcKDXBvaW50ZXJfdmFsdWUYByABKARIABIUCgpqc29uX3ZhbHVlGAggASgJSAASOgoMdHJhY2VkX3ZhbHVlGAogASgLMiIucGVyZmV0dG8ucHJvdG9zLkNocm9tZVRyYWNlZFZhbHVlSAASEgoKbmFtZV9pbmRleBgJIAEoDUIHCgV2YWx1ZSKAAQoOQ2hyb21lTWV0YWRhdGESDAoEbmFtZRgBIAEoCRIWCgxzdHJpbmdfdmFsdWUYAiABKAlIABIUCgpib29sX3ZhbHVlGAMgASgISAASEwoJaW50X3ZhbHVlGAQgASgDSAASFAoKanNvbl92YWx1ZRgFIAEoCUgAQgcKBXZhbHVlIpQBChVDaHJvbWVMZWdhY3lKc29uVHJhY2USPgoEdHlwZRgBIAEoDjIwLnBlcmZldHRvLnByb3Rvcy5DaHJvbWVMZWdhY3lKc29uVHJhY2UuVHJhY2VUeXBlEgwKBGRhdGEYAiABKAkiLQoJVHJhY2VUeXBlEg4KClVTRVJfVFJBQ0UQABIQCgxTWVNURU1fVFJBQ0UQASKnAgoRQ2hyb21lRXZlbnRCdW5kbGUSOwoMdHJhY2VfZXZlbnRzGAEgAygLMiEucGVyZmV0dG8ucHJvdG9zLkNocm9tZVRyYWNlRXZlbnRCAhgBEjEKCG1ldGFkYXRhGAIgAygLMh8ucGVyZmV0dG8ucHJvdG9zLkNocm9tZU1ldGFkYXRhEhwKFGxlZ2FjeV9mdHJhY2Vfb3V0cHV0GAQgAygJEkEKEWxlZ2FjeV9qc29uX3RyYWNlGAUgAygLMiYucGVyZmV0dG8ucHJvdG9zLkNocm9tZUxlZ2FjeUpzb25UcmFjZRJBCgxzdHJpbmdfdGFibGUYAyADKAsyJy5wZXJmZXR0by5wcm90b3MuQ2hyb21lU3RyaW5nVGFibGVFbnRyeUICGAE");
/**
* @generated from message perfetto.protos.ChromeTracedValue
*/
export type ChromeTracedValue = Message<"perfetto.protos.ChromeTracedValue"> & {
/**
* @generated from field: optional perfetto.protos.ChromeTracedValue.NestedType nested_type = 1;
*/
nestedType: ChromeTracedValue_NestedType;
/**
* @generated from field: repeated string dict_keys = 2;
*/
dictKeys: string[];
/**
* @generated from field: repeated perfetto.protos.ChromeTracedValue dict_values = 3;
*/
dictValues: ChromeTracedValue[];
/**
* @generated from field: repeated perfetto.protos.ChromeTracedValue array_values = 4;
*/
arrayValues: ChromeTracedValue[];
/**
* @generated from field: optional int32 int_value = 5;
*/
intValue: number;
/**
* @generated from field: optional double double_value = 6;
*/
doubleValue: number;
/**
* @generated from field: optional bool bool_value = 7;
*/
boolValue: boolean;
/**
* @generated from field: optional string string_value = 8;
*/
stringValue: string;
};
/**
* Describes the message perfetto.protos.ChromeTracedValue.
* Use `create(ChromeTracedValueSchema)` to create a new message.
*/
export const ChromeTracedValueSchema: GenMessage<ChromeTracedValue> = /*@__PURE__*/
messageDesc(file_protos_perfetto_trace_chrome_chrome_trace_event, 0);
/**
* @generated from enum perfetto.protos.ChromeTracedValue.NestedType
*/
export enum ChromeTracedValue_NestedType {
/**
* @generated from enum value: DICT = 0;
*/
DICT = 0,
/**
* @generated from enum value: ARRAY = 1;
*/
ARRAY = 1,
}
/**
* Describes the enum perfetto.protos.ChromeTracedValue.NestedType.
*/
export const ChromeTracedValue_NestedTypeSchema: GenEnum<ChromeTracedValue_NestedType> = /*@__PURE__*/
enumDesc(file_protos_perfetto_trace_chrome_chrome_trace_event, 0, 0);
/**
* @generated from message perfetto.protos.ChromeStringTableEntry
*/
export type ChromeStringTableEntry = Message<"perfetto.protos.ChromeStringTableEntry"> & {
/**
* @generated from field: optional string value = 1;
*/
value: string;
/**
* @generated from field: optional int32 index = 2;
*/
index: number;
};
/**
* Describes the message perfetto.protos.ChromeStringTableEntry.
* Use `create(ChromeStringTableEntrySchema)` to create a new message.
*/
export const ChromeStringTableEntrySchema: GenMessage<ChromeStringTableEntry> = /*@__PURE__*/
messageDesc(file_protos_perfetto_trace_chrome_chrome_trace_event, 1);
/**
* Deprecated, use TrackEvent protos instead.
*
* @generated from message perfetto.protos.ChromeTraceEvent
*/
export type ChromeTraceEvent = Message<"perfetto.protos.ChromeTraceEvent"> & {
/**
* @generated from field: optional string name = 1;
*/
name: string;
/**
* @generated from field: optional int64 timestamp = 2;
*/
timestamp: bigint;
/**
* @generated from field: optional int32 phase = 3;
*/
phase: number;
/**
* @generated from field: optional int32 thread_id = 4;
*/
threadId: number;
/**
* @generated from field: optional int64 duration = 5;
*/
duration: bigint;
/**
* @generated from field: optional int64 thread_duration = 6;
*/
threadDuration: bigint;
/**
* @generated from field: optional string scope = 7;
*/
scope: string;
/**
* @generated from field: optional uint64 id = 8;
*/
id: bigint;
/**
* @generated from field: optional uint32 flags = 9;
*/
flags: number;
/**
* @generated from field: optional string category_group_name = 10;
*/
categoryGroupName: string;
/**
* @generated from field: optional int32 process_id = 11;
*/
processId: number;
/**
* @generated from field: optional int64 thread_timestamp = 12;
*/
threadTimestamp: bigint;
/**
* @generated from field: optional uint64 bind_id = 13;
*/
bindId: bigint;
/**
* @generated from field: repeated perfetto.protos.ChromeTraceEvent.Arg args = 14;
*/
args: ChromeTraceEvent_Arg[];
/**
* Takes precedence over respectively |name| and
* |category_group_name_index| if set,
* and are indices into |string_table|.
*
* @generated from field: optional uint32 name_index = 15;
*/
nameIndex: number;
/**
* @generated from field: optional uint32 category_group_name_index = 16;
*/
categoryGroupNameIndex: number;
};
/**
* Describes the message perfetto.protos.ChromeTraceEvent.
* Use `create(ChromeTraceEventSchema)` to create a new message.
*/
export const ChromeTraceEventSchema: GenMessage<ChromeTraceEvent> = /*@__PURE__*/
messageDesc(file_protos_perfetto_trace_chrome_chrome_trace_event, 2);
/**
* @generated from message perfetto.protos.ChromeTraceEvent.Arg
*/
export type ChromeTraceEvent_Arg = Message<"perfetto.protos.ChromeTraceEvent.Arg"> & {
/**
* @generated from field: optional string name = 1;
*/
name: string;
/**
* @generated from oneof perfetto.protos.ChromeTraceEvent.Arg.value
*/
value: {
/**
* @generated from field: bool bool_value = 2;
*/
value: boolean;
case: "boolValue";
} | {
/**
* @generated from field: uint64 uint_value = 3;
*/
value: bigint;
case: "uintValue";
} | {
/**
* @generated from field: int64 int_value = 4;
*/
value: bigint;
case: "intValue";
} | {
/**
* @generated from field: double double_value = 5;
*/
value: number;
case: "doubleValue";
} | {
/**
* @generated from field: string string_value = 6;
*/
value: string;
case: "stringValue";
} | {
/**
* Pointers are stored in a separate type as the JSON output treats them
* differently from other uint64 values.
*
* @generated from field: uint64 pointer_value = 7;
*/
value: bigint;
case: "pointerValue";
} | {
/**
* @generated from field: string json_value = 8;
*/
value: string;
case: "jsonValue";
} | {
/**
* @generated from field: perfetto.protos.ChromeTracedValue traced_value = 10;
*/
value: ChromeTracedValue;
case: "tracedValue";
} | { case: undefined; value?: undefined };
/**
* Takes precedence over |name| if set,
* and is an index into |string_table|.
*
* @generated from field: optional uint32 name_index = 9;
*/
nameIndex: number;
};
/**
* Describes the message perfetto.protos.ChromeTraceEvent.Arg.
* Use `create(ChromeTraceEvent_ArgSchema)` to create a new message.
*/
export const ChromeTraceEvent_ArgSchema: GenMessage<ChromeTraceEvent_Arg> = /*@__PURE__*/
messageDesc(file_protos_perfetto_trace_chrome_chrome_trace_event, 2, 0);
/**
* @generated from message perfetto.protos.ChromeMetadata
*/
export type ChromeMetadata = Message<"perfetto.protos.ChromeMetadata"> & {
/**
* @generated from field: optional string name = 1;
*/
name: string;
/**
* @generated from oneof perfetto.protos.ChromeMetadata.value
*/
value: {
/**
* @generated from field: string string_value = 2;
*/
value: string;
case: "stringValue";
} | {
/**
* @generated from field: bool bool_value = 3;
*/
value: boolean;
case: "boolValue";
} | {
/**
* @generated from field: int64 int_value = 4;
*/
value: bigint;
case: "intValue";
} | {
/**
* @generated from field: string json_value = 5;
*/
value: string;
case: "jsonValue";
} | { case: undefined; value?: undefined };
};
/**
* Describes the message perfetto.protos.ChromeMetadata.
* Use `create(ChromeMetadataSchema)` to create a new message.
*/
export const ChromeMetadataSchema: GenMessage<ChromeMetadata> = /*@__PURE__*/
messageDesc(file_protos_perfetto_trace_chrome_chrome_trace_event, 3);
/**
* Subtraces produced in legacy json format by Chrome tracing agents not yet
* updated to support the new binary format, e.g. ETW and CrOS ARC.
* TODO(eseckler): Update these agents to become perfetto producers.
*
* @generated from message perfetto.protos.ChromeLegacyJsonTrace
*/
export type ChromeLegacyJsonTrace = Message<"perfetto.protos.ChromeLegacyJsonTrace"> & {
/**
* @generated from field: optional perfetto.protos.ChromeLegacyJsonTrace.TraceType type = 1;
*/
type: ChromeLegacyJsonTrace_TraceType;
/**
* @generated from field: optional string data = 2;
*/
data: string;
};
/**
* Describes the message perfetto.protos.ChromeLegacyJsonTrace.
* Use `create(ChromeLegacyJsonTraceSchema)` to create a new message.
*/
export const ChromeLegacyJsonTraceSchema: GenMessage<ChromeLegacyJsonTrace> = /*@__PURE__*/
messageDesc(file_protos_perfetto_trace_chrome_chrome_trace_event, 4);
/**
* @generated from enum perfetto.protos.ChromeLegacyJsonTrace.TraceType
*/
export enum ChromeLegacyJsonTrace_TraceType {
/**
* @generated from enum value: USER_TRACE = 0;
*/
USER_TRACE = 0,
/**
* Deprecated.
*
* @generated from enum value: SYSTEM_TRACE = 1;
*/
SYSTEM_TRACE = 1,
}
/**
* Describes the enum perfetto.protos.ChromeLegacyJsonTrace.TraceType.
*/
export const ChromeLegacyJsonTrace_TraceTypeSchema: GenEnum<ChromeLegacyJsonTrace_TraceType> = /*@__PURE__*/
enumDesc(file_protos_perfetto_trace_chrome_chrome_trace_event, 4, 0);
/**
* @generated from message perfetto.protos.ChromeEventBundle
*/
export type ChromeEventBundle = Message<"perfetto.protos.ChromeEventBundle"> & {
/**
* Deprecated, use TrackEvent protos instead.
*
* @generated from field: repeated perfetto.protos.ChromeTraceEvent trace_events = 1 [deprecated = true];
* @deprecated
*/
traceEvents: ChromeTraceEvent[];
/**
* TODO(ssid): This should be deprecated in favor of ChromeMetadataPacket
* which contains typed fields.
*
* @generated from field: repeated perfetto.protos.ChromeMetadata metadata = 2;
*/
metadata: ChromeMetadata[];
/**
* ftrace output from CrOS and Cast system tracing agents.
* TODO(eseckler): Replace system traces with native perfetto service.
*
* @generated from field: repeated string legacy_ftrace_output = 4;
*/
legacyFtraceOutput: string[];
/**
* @generated from field: repeated perfetto.protos.ChromeLegacyJsonTrace legacy_json_trace = 5;
*/
legacyJsonTrace: ChromeLegacyJsonTrace[];
/**
* Contents of a string table that's valid for
* the whole ChromeEventBundle entry.
*
* @generated from field: repeated perfetto.protos.ChromeStringTableEntry string_table = 3 [deprecated = true];
* @deprecated
*/
stringTable: ChromeStringTableEntry[];
};
/**
* Describes the message perfetto.protos.ChromeEventBundle.
* Use `create(ChromeEventBundleSchema)` to create a new message.
*/
export const ChromeEventBundleSchema: GenMessage<ChromeEventBundle> = /*@__PURE__*/
messageDesc(file_protos_perfetto_trace_chrome_chrome_trace_event, 5);