11#ifndef PERFETTO_PROTOS_PROTOS_PERFETTO_TRACE_INTERNED_DATA_INTERNED_DATA_PROTO_H_
12#define PERFETTO_PROTOS_PROTOS_PERFETTO_TRACE_INTERNED_DATA_INTERNED_DATA_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"
37 : TypedProtoDecoder(data, len) {}
39 : TypedProtoDecoder(reinterpret_cast<const uint8_t*>(raw.data()),
42 : TypedProtoDecoder(raw.data, raw.size) {}
44 ::protozero::RepeatedFieldIterator<::protozero::ConstBytes>
mapping_paths()
46 return GetRepeated<::protozero::ConstBytes>(17);
51 return GetRepeated<::protozero::ConstBytes>(5);
54 ::protozero::RepeatedFieldIterator<::protozero::ConstBytes>
mappings()
const {
55 return GetRepeated<::protozero::ConstBytes>(19);
58 ::protozero::RepeatedFieldIterator<::protozero::ConstBytes>
frames()
const {
59 return GetRepeated<::protozero::ConstBytes>(6);
62 ::protozero::RepeatedFieldIterator<::protozero::ConstBytes>
callstacks()
64 return GetRepeated<::protozero::ConstBytes>(7);
79 return ".perfetto.protos.InternedData";
84 ::protozero::proto_utils::RepetitionType::kRepeatedNotPacked,
85 ::protozero::proto_utils::ProtoSchemaType::kMessage,
97 template <
typename T = InternedString>
99 return BeginNestedMessage<T>(17);
104 ::protozero::proto_utils::RepetitionType::kRepeatedNotPacked,
105 ::protozero::proto_utils::ProtoSchemaType::kMessage,
117 template <
typename T = InternedString>
119 return BeginNestedMessage<T>(5);
124 ::protozero::proto_utils::RepetitionType::kRepeatedNotPacked,
125 ::protozero::proto_utils::ProtoSchemaType::kMessage,
137 template <
typename T = Mapping>
139 return BeginNestedMessage<T>(19);
144 ::protozero::proto_utils::RepetitionType::kRepeatedNotPacked,
145 ::protozero::proto_utils::ProtoSchemaType::kMessage,
157 template <
typename T = Frame>
159 return BeginNestedMessage<T>(6);
164 ::protozero::proto_utils::RepetitionType::kRepeatedNotPacked,
165 ::protozero::proto_utils::ProtoSchemaType::kMessage,
177 template <
typename T = Callstack>
179 return BeginNestedMessage<T>(7);
bool has_mapping_paths() const
bool has_callstacks() const
bool has_mappings() const
InternedData_Decoder(const ::protozero::ConstBytes &raw)
InternedData_Decoder(const std::string &raw)
::protozero::RepeatedFieldIterator<::protozero::ConstBytes > mappings() const
::protozero::RepeatedFieldIterator<::protozero::ConstBytes > frames() const
::protozero::RepeatedFieldIterator<::protozero::ConstBytes > callstacks() const
::protozero::RepeatedFieldIterator<::protozero::ConstBytes > function_names() const
bool has_function_names() const
InternedData_Decoder(const uint8_t *data, size_t len)
::protozero::RepeatedFieldIterator<::protozero::ConstBytes > mapping_paths() const
::protozero::proto_utils::FieldMetadata< 7, ::protozero::proto_utils::RepetitionType::kRepeatedNotPacked, ::protozero::proto_utils::ProtoSchemaType::kMessage, Callstack, InternedData > FieldMetadata_Callstacks
static constexpr FieldMetadata_FunctionNames kFunctionNames()
static constexpr const char * GetName()
@ kFunctionNamesFieldNumber
@ kMappingPathsFieldNumber
::protozero::proto_utils::FieldMetadata< 6, ::protozero::proto_utils::RepetitionType::kRepeatedNotPacked, ::protozero::proto_utils::ProtoSchemaType::kMessage, Frame, InternedData > FieldMetadata_Frames
static constexpr FieldMetadata_MappingPaths kMappingPaths()
::protozero::proto_utils::FieldMetadata< 17, ::protozero::proto_utils::RepetitionType::kRepeatedNotPacked, ::protozero::proto_utils::ProtoSchemaType::kMessage, InternedString, InternedData > FieldMetadata_MappingPaths
::protozero::proto_utils::FieldMetadata< 5, ::protozero::proto_utils::RepetitionType::kRepeatedNotPacked, ::protozero::proto_utils::ProtoSchemaType::kMessage, InternedString, InternedData > FieldMetadata_FunctionNames
static constexpr FieldMetadata_Frames kFrames()
static constexpr FieldMetadata_Callstacks kCallstacks()
::protozero::proto_utils::FieldMetadata< 19, ::protozero::proto_utils::RepetitionType::kRepeatedNotPacked, ::protozero::proto_utils::ProtoSchemaType::kMessage, Mapping, InternedData > FieldMetadata_Mappings
static constexpr FieldMetadata_Mappings kMappings()