perfetto-protos
Version:
Perfetto protos exposed via protobuf-es for browser and node
127 lines (112 loc) • 5.83 kB
text/typescript
//
// Copyright (C) 2017 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/common/data_source_descriptor.proto (package perfetto.protos, syntax proto2)
/* eslint-disable */
import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1";
import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv1";
import type { FtraceDescriptor } from "./ftrace_descriptor_pb";
import { file_protos_perfetto_common_ftrace_descriptor } from "./ftrace_descriptor_pb";
import type { GpuCounterDescriptor } from "./gpu_counter_descriptor_pb";
import { file_protos_perfetto_common_gpu_counter_descriptor } from "./gpu_counter_descriptor_pb";
import type { TrackEventDescriptor } from "./track_event_descriptor_pb";
import { file_protos_perfetto_common_track_event_descriptor } from "./track_event_descriptor_pb";
import type { Message } from "@bufbuild/protobuf";
/**
* Describes the file protos/perfetto/common/data_source_descriptor.proto.
*/
export const file_protos_perfetto_common_data_source_descriptor: GenFile = /*@__PURE__*/
fileDesc("CjNwcm90b3MvcGVyZmV0dG8vY29tbW9uL2RhdGFfc291cmNlX2Rlc2NyaXB0b3IucHJvdG8SD3BlcmZldHRvLnByb3RvcyL+AgoURGF0YVNvdXJjZURlc2NyaXB0b3ISDAoEbmFtZRgBIAEoCRIKCgJpZBgHIAEoBBIbChN3aWxsX25vdGlmeV9vbl9zdG9wGAIgASgIEhwKFHdpbGxfbm90aWZ5X29uX3N0YXJ0GAMgASgIEicKH2hhbmRsZXNfaW5jcmVtZW50YWxfc3RhdGVfY2xlYXIYBCABKAgSEAoIbm9fZmx1c2gYCSABKAgSSQoWZ3B1X2NvdW50ZXJfZGVzY3JpcHRvchgFIAEoCzIlLnBlcmZldHRvLnByb3Rvcy5HcHVDb3VudGVyRGVzY3JpcHRvckICKAESSQoWdHJhY2tfZXZlbnRfZGVzY3JpcHRvchgGIAEoCzIlLnBlcmZldHRvLnByb3Rvcy5UcmFja0V2ZW50RGVzY3JpcHRvckICKAESQAoRZnRyYWNlX2Rlc2NyaXB0b3IYCCABKAsyIS5wZXJmZXR0by5wcm90b3MuRnRyYWNlRGVzY3JpcHRvckICKAE", [file_protos_perfetto_common_ftrace_descriptor, file_protos_perfetto_common_gpu_counter_descriptor, file_protos_perfetto_common_track_event_descriptor]);
/**
* This message is sent from Producer(s) to the tracing Service when registering
* to advertise their capabilities. It describes the structure of tracing
* protos that will be produced by the data source and the supported filters.
*
* @generated from message perfetto.protos.DataSourceDescriptor
*/
export type DataSourceDescriptor = Message<"perfetto.protos.DataSourceDescriptor"> & {
/**
* e.g., "linux.ftrace", "chromium.tracing"
*
* @generated from field: optional string name = 1;
*/
name: string;
/**
* When non-zero, this is a unique ID within the scope of the Producer for
* this data source (it is NOT globally unique). This is useful to
* differentiate between data sources with matching names when calling
* UpdateDataSource(). This field has been introduced in November 2021
* (v22, Android T) and is not supported on older versions.
*
* @generated from field: optional uint64 id = 7;
*/
id: bigint;
/**
* When true the data source is expected to ack the stop request through the
* NotifyDataSourceStopped() IPC. This field has been introduced after
* Android P in Jul 2018 and is not supported on older versions.
*
* @generated from field: optional bool will_notify_on_stop = 2;
*/
willNotifyOnStop: boolean;
/**
* When true the data source is expected to ack the start request through the
* NotifyDataSourceStarted() IPC. This field has been introduced after
* Android P in March 2019 and is not supported on older versions.
*
* @generated from field: optional bool will_notify_on_start = 3;
*/
willNotifyOnStart: boolean;
/**
* If true, opt into receiving the ClearIncrementalState() IPC. This should be
* set if the data source writes packets that refer to previous trace
* contents, and knows how to stop referring to the already-emitted data.
*
* @generated from field: optional bool handles_incremental_state_clear = 4;
*/
handlesIncrementalStateClear: boolean;
/**
* If true, indicates that the data source does nothing upon Flush. This
* allows the service to reduce the flush-related IPC traffic and better deal
* with frozen producers (see go/perfetto-frozen). This is usually the case
* for data sources like 'track_event' that don't have access to the various
* thread task runners to post a flush task and rely purely on server-side
* scraping.
* Introduced in v39 / Android V.
*
* @generated from field: optional bool no_flush = 9;
*/
noFlush: boolean;
/**
* Optional specification about available GPU counters.
*
* @generated from field: optional perfetto.protos.GpuCounterDescriptor gpu_counter_descriptor = 5;
*/
gpuCounterDescriptor?: GpuCounterDescriptor;
/**
* @generated from field: optional perfetto.protos.TrackEventDescriptor track_event_descriptor = 6;
*/
trackEventDescriptor?: TrackEventDescriptor;
/**
* @generated from field: optional perfetto.protos.FtraceDescriptor ftrace_descriptor = 8;
*/
ftraceDescriptor?: FtraceDescriptor;
};
/**
* Describes the message perfetto.protos.DataSourceDescriptor.
* Use `create(DataSourceDescriptorSchema)` to create a new message.
*/
export const DataSourceDescriptorSchema: GenMessage<DataSourceDescriptor> = /*@__PURE__*/
messageDesc(file_protos_perfetto_common_data_source_descriptor, 0);