UNPKG

perfetto-protos

Version:

Perfetto protos exposed via protobuf-es for browser and node

373 lines 11.3 kB
import type { GenEnum, GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1"; import type { InternedString } from "./profile_common_pb"; import type { Message } from "@bufbuild/protobuf"; /** * Describes the file protos/perfetto/trace/profiling/heap_graph.proto. */ export declare const file_protos_perfetto_trace_profiling_heap_graph: GenFile; /** * @generated from message perfetto.protos.HeapGraphRoot */ export type HeapGraphRoot = Message<"perfetto.protos.HeapGraphRoot"> & { /** * Objects retained by this root. * * @generated from field: repeated uint64 object_ids = 1 [packed = true]; */ objectIds: bigint[]; /** * @generated from field: optional perfetto.protos.HeapGraphRoot.Type root_type = 2; */ rootType: HeapGraphRoot_Type; }; /** * Describes the message perfetto.protos.HeapGraphRoot. * Use `create(HeapGraphRootSchema)` to create a new message. */ export declare const HeapGraphRootSchema: GenMessage<HeapGraphRoot>; /** * @generated from enum perfetto.protos.HeapGraphRoot.Type */ export declare enum HeapGraphRoot_Type { /** * @generated from enum value: ROOT_UNKNOWN = 0; */ ROOT_UNKNOWN = 0, /** * @generated from enum value: ROOT_JNI_GLOBAL = 1; */ ROOT_JNI_GLOBAL = 1, /** * @generated from enum value: ROOT_JNI_LOCAL = 2; */ ROOT_JNI_LOCAL = 2, /** * @generated from enum value: ROOT_JAVA_FRAME = 3; */ ROOT_JAVA_FRAME = 3, /** * @generated from enum value: ROOT_NATIVE_STACK = 4; */ ROOT_NATIVE_STACK = 4, /** * @generated from enum value: ROOT_STICKY_CLASS = 5; */ ROOT_STICKY_CLASS = 5, /** * @generated from enum value: ROOT_THREAD_BLOCK = 6; */ ROOT_THREAD_BLOCK = 6, /** * @generated from enum value: ROOT_MONITOR_USED = 7; */ ROOT_MONITOR_USED = 7, /** * @generated from enum value: ROOT_THREAD_OBJECT = 8; */ ROOT_THREAD_OBJECT = 8, /** * @generated from enum value: ROOT_INTERNED_STRING = 9; */ ROOT_INTERNED_STRING = 9, /** * @generated from enum value: ROOT_FINALIZING = 10; */ ROOT_FINALIZING = 10, /** * @generated from enum value: ROOT_DEBUGGER = 11; */ ROOT_DEBUGGER = 11, /** * @generated from enum value: ROOT_REFERENCE_CLEANUP = 12; */ ROOT_REFERENCE_CLEANUP = 12, /** * @generated from enum value: ROOT_VM_INTERNAL = 13; */ ROOT_VM_INTERNAL = 13, /** * @generated from enum value: ROOT_JNI_MONITOR = 14; */ ROOT_JNI_MONITOR = 14 } /** * Describes the enum perfetto.protos.HeapGraphRoot.Type. */ export declare const HeapGraphRoot_TypeSchema: GenEnum<HeapGraphRoot_Type>; /** * @generated from message perfetto.protos.HeapGraphType */ export type HeapGraphType = Message<"perfetto.protos.HeapGraphType"> & { /** * TODO(fmayer): Consider removing this and using the index in the repeaed * field to save space. * * @generated from field: optional uint64 id = 1; */ id: bigint; /** * @generated from field: optional uint64 location_id = 2; */ locationId: bigint; /** * @generated from field: optional string class_name = 3; */ className: string; /** * Size of objects of this type. * * @generated from field: optional uint64 object_size = 4; */ objectSize: bigint; /** * @generated from field: optional uint64 superclass_id = 5; */ superclassId: bigint; /** * Indices for InternedData.field_names for the names of the fields of * instances of this class. This does NOT include the fields from * superclasses. The consumer of this data needs to walk all super * classes to get a full lists of fields. Objects always write the * fields in order of most specific class to the furthest up superclass. * * @generated from field: repeated uint64 reference_field_id = 6 [packed = true]; */ referenceFieldId: bigint[]; /** * @generated from field: optional perfetto.protos.HeapGraphType.Kind kind = 7; */ kind: HeapGraphType_Kind; /** * @generated from field: optional uint64 classloader_id = 8; */ classloaderId: bigint; }; /** * Describes the message perfetto.protos.HeapGraphType. * Use `create(HeapGraphTypeSchema)` to create a new message. */ export declare const HeapGraphTypeSchema: GenMessage<HeapGraphType>; /** * @generated from enum perfetto.protos.HeapGraphType.Kind */ export declare enum HeapGraphType_Kind { /** * @generated from enum value: KIND_UNKNOWN = 0; */ UNKNOWN = 0, /** * @generated from enum value: KIND_NORMAL = 1; */ NORMAL = 1, /** * @generated from enum value: KIND_NOREFERENCES = 2; */ NOREFERENCES = 2, /** * @generated from enum value: KIND_STRING = 3; */ STRING = 3, /** * @generated from enum value: KIND_ARRAY = 4; */ ARRAY = 4, /** * @generated from enum value: KIND_CLASS = 5; */ CLASS = 5, /** * @generated from enum value: KIND_CLASSLOADER = 6; */ CLASSLOADER = 6, /** * @generated from enum value: KIND_DEXCACHE = 7; */ DEXCACHE = 7, /** * @generated from enum value: KIND_SOFT_REFERENCE = 8; */ SOFT_REFERENCE = 8, /** * @generated from enum value: KIND_WEAK_REFERENCE = 9; */ WEAK_REFERENCE = 9, /** * @generated from enum value: KIND_FINALIZER_REFERENCE = 10; */ FINALIZER_REFERENCE = 10, /** * @generated from enum value: KIND_PHANTOM_REFERENCE = 11; */ PHANTOM_REFERENCE = 11 } /** * Describes the enum perfetto.protos.HeapGraphType.Kind. */ export declare const HeapGraphType_KindSchema: GenEnum<HeapGraphType_Kind>; /** * @generated from message perfetto.protos.HeapGraphObject */ export type HeapGraphObject = Message<"perfetto.protos.HeapGraphObject"> & { /** * @generated from oneof perfetto.protos.HeapGraphObject.identifier */ identifier: { /** * @generated from field: uint64 id = 1; */ value: bigint; case: "id"; } | { /** * @generated from field: uint64 id_delta = 7; */ value: bigint; case: "idDelta"; } | { case: undefined; value?: undefined; }; /** * Index for InternedData.types for the name of the type of this object. * * @generated from field: optional uint64 type_id = 2; */ typeId: bigint; /** * Bytes occupied by this objects. * * @generated from field: optional uint64 self_size = 3; */ selfSize: bigint; /** * Add this to all non-zero values in reference_object_id. This is used to * get more compact varint encoding. * * The name is confusing, but this has always been used as a base for * reference_object_id. The field should be named reference_object_id_base. * * @generated from field: optional uint64 reference_field_id_base = 6; */ referenceFieldIdBase: bigint; /** * Indices for InternedData.field_names for the name of the field referring * to the object. For Android S+ and for instances of normal classes (e.g. * not instances of java.lang.Class or arrays), this is instead set in the * corresponding HeapGraphType, and this is left empty. * * @generated from field: repeated uint64 reference_field_id = 4 [packed = true]; */ referenceFieldId: bigint[]; /** * Ids of the Object that is referred to. * * @generated from field: repeated uint64 reference_object_id = 5 [packed = true]; */ referenceObjectId: bigint[]; /** * If this object is an instance of `libcore.util.NativeAllocationRegistry`, * the value of the `size` field. * * N.B. This is not the native size of this object. * * @generated from field: optional int64 native_allocation_registry_size_field = 8; */ nativeAllocationRegistrySizeField: bigint; /** * To reduce the space required we only emit the heap type if it has changed * from the previous object we recorded. * * @generated from field: optional perfetto.protos.HeapGraphObject.HeapType heap_type_delta = 9; */ heapTypeDelta: HeapGraphObject_HeapType; }; /** * Describes the message perfetto.protos.HeapGraphObject. * Use `create(HeapGraphObjectSchema)` to create a new message. */ export declare const HeapGraphObjectSchema: GenMessage<HeapGraphObject>; /** * @generated from enum perfetto.protos.HeapGraphObject.HeapType */ export declare enum HeapGraphObject_HeapType { /** * @generated from enum value: HEAP_TYPE_UNKNOWN = 0; */ UNKNOWN = 0, /** * @generated from enum value: HEAP_TYPE_APP = 1; */ APP = 1, /** * @generated from enum value: HEAP_TYPE_ZYGOTE = 2; */ ZYGOTE = 2, /** * @generated from enum value: HEAP_TYPE_BOOT_IMAGE = 3; */ BOOT_IMAGE = 3 } /** * Describes the enum perfetto.protos.HeapGraphObject.HeapType. */ export declare const HeapGraphObject_HeapTypeSchema: GenEnum<HeapGraphObject_HeapType>; /** * @generated from message perfetto.protos.HeapGraph */ export type HeapGraph = Message<"perfetto.protos.HeapGraph"> & { /** * @generated from field: optional int32 pid = 1; */ pid: number; /** * This contains all objects at the time this dump was taken. Some of these * will be live, some of those unreachable (garbage). To find the live * objects, the client needs to build the transitive closure of objects * reachable from |roots|. * All objects not contained within that transitive closure are garbage that * has not yet been collected. * * @generated from field: repeated perfetto.protos.HeapGraphObject objects = 2; */ objects: HeapGraphObject[]; /** * Roots at the time this dump was taken. * All live objects are reachable from the roots. All other objects are * garbage. * * @generated from field: repeated perfetto.protos.HeapGraphRoot roots = 7; */ roots: HeapGraphRoot[]; /** * Types used in HeapGraphObjects. * * @generated from field: repeated perfetto.protos.HeapGraphType types = 9; */ types: HeapGraphType[]; /** * Field names for references in managed heap graph. * * @generated from field: repeated perfetto.protos.InternedString field_names = 4; */ fieldNames: InternedString[]; /** * Paths of files used in managed heap graph. * * @generated from field: repeated perfetto.protos.InternedString location_names = 8; */ locationNames: InternedString[]; /** * @generated from field: optional bool continued = 5; */ continued: boolean; /** * @generated from field: optional uint64 index = 6; */ index: bigint; }; /** * Describes the message perfetto.protos.HeapGraph. * Use `create(HeapGraphSchema)` to create a new message. */ export declare const HeapGraphSchema: GenMessage<HeapGraph>; //# sourceMappingURL=heap_graph_pb.d.ts.map