11#ifndef PERFETTO_PROTOS_PROTOS_PERFETTO_TRACE_TRACK_EVENT_TRACK_EVENT_PROTO_H_
12#define PERFETTO_PROTOS_PROTOS_PERFETTO_TRACE_TRACK_EVENT_TRACK_EVENT_PROTO_H_
17#include "perfetto/protozero/field_writer.h"
18#include "perfetto/protozero/message.h"
19#include "perfetto/protozero/packed_repeated_fields.h"
20#include "perfetto/protozero/proto_decoder.h"
21#include "perfetto/protozero/proto_utils.h"
28namespace perfetto_pbzero_enum_TrackEvent {
33namespace perfetto_pbzero_enum_TrackEvent {
46PERFETTO_PROTOZERO_CONSTEXPR14_OR_INLINE
51 return "TYPE_SLICE_BEGIN";
54 return "TYPE_SLICE_END";
57 return "TYPE_INSTANT";
59 return "PBZERO_UNKNOWN_ENUM_VALUE";
67 : TypedProtoDecoder(
data,
len) {}
69 : TypedProtoDecoder(reinterpret_cast<const uint8_t*>(raw.
data()),
72 : TypedProtoDecoder(raw.
data, raw.
size) {}
74 ::protozero::RepeatedFieldIterator<::protozero::ConstChars>
categories()
76 return GetRepeated<::protozero::ConstChars>(22);
78 bool has_name()
const {
return at<23>().valid(); }
79 ::protozero::ConstChars
name()
const {
return at<23>().as_string(); }
80 bool has_type()
const {
return at<9>().valid(); }
81 int32_t
type()
const {
return at<9>().as_int32(); }
83 uint64_t
track_uuid()
const {
return at<11>().as_uint64(); }
85 ::protozero::RepeatedFieldIterator<uint64_t>
flow_ids()
const {
86 return GetRepeated<uint64_t>(47);
90 return GetRepeated<uint64_t>(48);
93 ::protozero::RepeatedFieldIterator<::protozero::ConstBytes>
95 return GetRepeated<::protozero::ConstBytes>(4);
112 return ".perfetto.protos.TrackEvent";
125 ::protozero::proto_utils::RepetitionType::kRepeatedNotPacked,
126 ::protozero::proto_utils::ProtoSchemaType::kString,
139 AppendBytes(FieldMetadata_Categories::kFieldId,
data,
size);
142 AppendBytes(FieldMetadata_Categories::kFieldId, chars.data, chars.size);
145 static constexpr uint32_t field_id = FieldMetadata_Categories::kFieldId;
148 ::protozero::internal::FieldWriter<
149 ::protozero::proto_utils::ProtoSchemaType::kString>::Append(*
this,
156 ::protozero::proto_utils::RepetitionType::kNotRepeated,
157 ::protozero::proto_utils::ProtoSchemaType::kString,
170 AppendBytes(FieldMetadata_Name::kFieldId,
data,
size);
173 AppendBytes(FieldMetadata_Name::kFieldId, chars.data, chars.size);
176 static constexpr uint32_t field_id = FieldMetadata_Name::kFieldId;
179 ::protozero::internal::FieldWriter<
180 ::protozero::proto_utils::ProtoSchemaType::kString>::Append(*
this,
187 ::protozero::proto_utils::RepetitionType::kNotRepeated,
188 ::protozero::proto_utils::ProtoSchemaType::kEnum,
201 static constexpr uint32_t field_id = FieldMetadata_Type::kFieldId;
204 ::protozero::internal::FieldWriter<
205 ::protozero::proto_utils::ProtoSchemaType::kEnum>::Append(*
this,
212 ::protozero::proto_utils::RepetitionType::kNotRepeated,
226 static constexpr uint32_t field_id = FieldMetadata_TrackUuid::kFieldId;
229 ::protozero::internal::FieldWriter<
237 ::protozero::proto_utils::RepetitionType::kRepeatedNotPacked,
238 ::protozero::proto_utils::ProtoSchemaType::kFixed64,
251 static constexpr uint32_t field_id = FieldMetadata_FlowIds::kFieldId;
254 ::protozero::internal::FieldWriter<
255 ::protozero::proto_utils::ProtoSchemaType::kFixed64>::Append(*
this,
261 ::protozero::proto_utils::FieldMetadata<
263 ::protozero::proto_utils::RepetitionType::kRepeatedNotPacked,
264 ::protozero::proto_utils::ProtoSchemaType::kFixed64,
279 static constexpr uint32_t field_id =
280 FieldMetadata_TerminatingFlowIds::kFieldId;
283 ::protozero::internal::FieldWriter<
284 ::protozero::proto_utils::ProtoSchemaType::kFixed64>::Append(*
this,
290 ::protozero::proto_utils::FieldMetadata<
292 ::protozero::proto_utils::RepetitionType::kRepeatedNotPacked,
293 ::protozero::proto_utils::ProtoSchemaType::kMessage,
307 template <
typename T = DebugAnnotation>
309 return BeginNestedMessage<T>(4);
uint64_t track_uuid() const
TrackEvent_Decoder(const std::string &raw)
::protozero::RepeatedFieldIterator< uint64_t > flow_ids() const
bool has_track_uuid() const
::protozero::RepeatedFieldIterator< uint64_t > terminating_flow_ids() const
bool has_categories() const
TrackEvent_Decoder(const ::protozero::ConstBytes &raw)
bool has_debug_annotations() const
bool has_terminating_flow_ids() const
::protozero::ConstChars name() const
bool has_flow_ids() const
::protozero::RepeatedFieldIterator<::protozero::ConstChars > categories() const
::protozero::RepeatedFieldIterator<::protozero::ConstBytes > debug_annotations() const
TrackEvent_Decoder(const uint8_t *data, size_t len)
void add_categories(std::string value)
void add_categories(const char *data, size_t size)
static constexpr FieldMetadata_Categories kCategories()
@ kTerminatingFlowIdsFieldNumber
@ kDebugAnnotationsFieldNumber
::protozero::proto_utils::FieldMetadata< 22, ::protozero::proto_utils::RepetitionType::kRepeatedNotPacked, ::protozero::proto_utils::ProtoSchemaType::kString, std::string, TrackEvent > FieldMetadata_Categories
::protozero::proto_utils::FieldMetadata< 9, ::protozero::proto_utils::RepetitionType::kNotRepeated, ::protozero::proto_utils::ProtoSchemaType::kEnum, ::perfetto::protos::pbzero::TrackEvent_Type, TrackEvent > FieldMetadata_Type
void set_type(::perfetto::protos::pbzero::TrackEvent_Type value)
static const Type TYPE_SLICE_END
void add_categories(::protozero::ConstChars chars)
static const char * Type_Name(Type value)
::protozero::proto_utils::FieldMetadata< 4, ::protozero::proto_utils::RepetitionType::kRepeatedNotPacked, ::protozero::proto_utils::ProtoSchemaType::kMessage, DebugAnnotation, TrackEvent > FieldMetadata_DebugAnnotations
void set_track_uuid(uint64_t value)
static constexpr FieldMetadata_FlowIds kFlowIds()
void add_flow_ids(uint64_t value)
static constexpr FieldMetadata_Name kName()
::protozero::proto_utils::FieldMetadata< 47, ::protozero::proto_utils::RepetitionType::kRepeatedNotPacked, ::protozero::proto_utils::ProtoSchemaType::kFixed64, uint64_t, TrackEvent > FieldMetadata_FlowIds
::protozero::proto_utils::FieldMetadata< 11, ::protozero::proto_utils::RepetitionType::kNotRepeated, ::protozero::proto_utils::ProtoSchemaType::kUint64, uint64_t, TrackEvent > FieldMetadata_TrackUuid
T * add_debug_annotations()
void add_terminating_flow_ids(uint64_t value)
static const Type TYPE_INSTANT
::protozero::proto_utils::FieldMetadata< 48, ::protozero::proto_utils::RepetitionType::kRepeatedNotPacked, ::protozero::proto_utils::ProtoSchemaType::kFixed64, uint64_t, TrackEvent > FieldMetadata_TerminatingFlowIds
static constexpr FieldMetadata_DebugAnnotations kDebugAnnotations()
static constexpr const char * GetName()
static constexpr FieldMetadata_TrackUuid kTrackUuid()
void set_name(::protozero::ConstChars chars)
static constexpr FieldMetadata_TerminatingFlowIds kTerminatingFlowIds()
void set_name(const char *data, size_t size)
::protozero::proto_utils::FieldMetadata< 23, ::protozero::proto_utils::RepetitionType::kNotRepeated, ::protozero::proto_utils::ProtoSchemaType::kString, std::string, TrackEvent > FieldMetadata_Name
void set_name(std::string value)
static constexpr FieldMetadata_Type kType()
static const Type TYPE_SLICE_BEGIN
it will be possible to load the file into Perfetto s trace viewer disable asset Prevents usage of any non test fonts unless they were explicitly Loaded via prefetched default font Indicates whether the embedding started a prefetch of the default font manager before creating the engine run In non interactive keep the shell running after the Dart script has completed enable serial On low power devices with low core running concurrent GC tasks on threads can cause them to contend with the UI thread which could potentially lead to jank This option turns off all concurrent GC activities domain network JSON encoded network policy per domain This overrides the DisallowInsecureConnections switch Embedder can specify whether to allow or disallow insecure connections at a domain level old gen heap size
constexpr TrackEvent_Type TrackEvent_Type_MIN
constexpr TrackEvent_Type TrackEvent_Type_MAX
PERFETTO_PROTOZERO_CONSTEXPR14_OR_INLINE const char * TrackEvent_Type_Name(::perfetto::protos::pbzero::TrackEvent_Type value)
perfetto_pbzero_enum_TrackEvent::Type TrackEvent_Type
std::shared_ptr< const fml::Mapping > data