blob: 1b3987ca7826e5a81664f568201b771898a16988 [file] [log] [blame]
// Autogenerated by the ProtoZero compiler plugin. DO NOT EDIT.
#ifndef PERFETTO_PROTOS_PROTOS_PERFETTO_TRACE_TRACE_PACKET_PROTO_H_
#define PERFETTO_PROTOS_PROTOS_PERFETTO_TRACE_TRACE_PACKET_PROTO_H_
#include <stddef.h>
#include <stdint.h>
#include "perfetto/protozero/field_writer.h"
#include "perfetto/protozero/message.h"
#include "perfetto/protozero/packed_repeated_fields.h"
#include "perfetto/protozero/proto_decoder.h"
#include "perfetto/protozero/proto_utils.h"
namespace perfetto {
namespace protos {
namespace pbzero {
class AndroidEnergyEstimationBreakdown;
class AndroidLogPacket;
class BatteryCounters;
class ChromeBenchmarkMetadata;
class ChromeEventBundle;
class ChromeMetadataPacket;
class ClockSnapshot;
class CpuInfo;
class DeobfuscationMapping;
class ExtensionDescriptor;
class FrameTimelineEvent;
class FtraceEventBundle;
class FtraceStats;
class GpuCounterEvent;
class GpuLog;
class GpuMemTotalEvent;
class GpuRenderStageEvent;
class GraphicsFrameEvent;
class HeapGraph;
class InitialDisplayState;
class InodeFileMap;
class InternedData;
class MemoryTrackerSnapshot;
class ModuleSymbols;
class PackagesList;
class PerfSample;
class PerfettoMetatrace;
class PowerRails;
class ProcessDescriptor;
class ProcessStats;
class ProcessTree;
class ProfilePacket;
class ProfiledFrameSymbols;
class SmapsPacket;
class StreamingAllocation;
class StreamingFree;
class StreamingProfilePacket;
class SysStats;
class SystemInfo;
class TestEvent;
class ThreadDescriptor;
class TraceConfig;
class TracePacketDefaults;
class TraceStats;
class TracingServiceEvent;
class TrackDescriptor;
class TrackEvent;
class Trigger;
class UiState;
class VulkanApiEvent;
class VulkanMemoryEvent;
enum TracePacket_SequenceFlags : int32_t {
TracePacket_SequenceFlags_SEQ_UNSPECIFIED = 0,
TracePacket_SequenceFlags_SEQ_INCREMENTAL_STATE_CLEARED = 1,
TracePacket_SequenceFlags_SEQ_NEEDS_INCREMENTAL_STATE = 2,
};
const TracePacket_SequenceFlags TracePacket_SequenceFlags_MIN = TracePacket_SequenceFlags_SEQ_UNSPECIFIED;
const TracePacket_SequenceFlags TracePacket_SequenceFlags_MAX = TracePacket_SequenceFlags_SEQ_NEEDS_INCREMENTAL_STATE;
class TracePacket_Decoder : public ::protozero::TypedProtoDecoder</*MAX_FIELD_ID=*/900, /*HAS_NONPACKED_REPEATED_FIELDS=*/false> {
public:
TracePacket_Decoder(const uint8_t* data, size_t len) : TypedProtoDecoder(data, len) {}
explicit TracePacket_Decoder(const std::string& raw) : TypedProtoDecoder(reinterpret_cast<const uint8_t*>(raw.data()), raw.size()) {}
explicit TracePacket_Decoder(const ::protozero::ConstBytes& raw) : TypedProtoDecoder(raw.data, raw.size) {}
bool has_timestamp() const { return at<8>().valid(); }
uint64_t timestamp() const { return at<8>().as_uint64(); }
bool has_timestamp_clock_id() const { return at<58>().valid(); }
uint32_t timestamp_clock_id() const { return at<58>().as_uint32(); }
bool has_process_tree() const { return at<2>().valid(); }
::protozero::ConstBytes process_tree() const { return at<2>().as_bytes(); }
bool has_process_stats() const { return at<9>().valid(); }
::protozero::ConstBytes process_stats() const { return at<9>().as_bytes(); }
bool has_inode_file_map() const { return at<4>().valid(); }
::protozero::ConstBytes inode_file_map() const { return at<4>().as_bytes(); }
bool has_chrome_events() const { return at<5>().valid(); }
::protozero::ConstBytes chrome_events() const { return at<5>().as_bytes(); }
bool has_clock_snapshot() const { return at<6>().valid(); }
::protozero::ConstBytes clock_snapshot() const { return at<6>().as_bytes(); }
bool has_sys_stats() const { return at<7>().valid(); }
::protozero::ConstBytes sys_stats() const { return at<7>().as_bytes(); }
bool has_track_event() const { return at<11>().valid(); }
::protozero::ConstBytes track_event() const { return at<11>().as_bytes(); }
bool has_trace_config() const { return at<33>().valid(); }
::protozero::ConstBytes trace_config() const { return at<33>().as_bytes(); }
bool has_ftrace_stats() const { return at<34>().valid(); }
::protozero::ConstBytes ftrace_stats() const { return at<34>().as_bytes(); }
bool has_trace_stats() const { return at<35>().valid(); }
::protozero::ConstBytes trace_stats() const { return at<35>().as_bytes(); }
bool has_profile_packet() const { return at<37>().valid(); }
::protozero::ConstBytes profile_packet() const { return at<37>().as_bytes(); }
bool has_streaming_allocation() const { return at<74>().valid(); }
::protozero::ConstBytes streaming_allocation() const { return at<74>().as_bytes(); }
bool has_streaming_free() const { return at<75>().valid(); }
::protozero::ConstBytes streaming_free() const { return at<75>().as_bytes(); }
bool has_battery() const { return at<38>().valid(); }
::protozero::ConstBytes battery() const { return at<38>().as_bytes(); }
bool has_power_rails() const { return at<40>().valid(); }
::protozero::ConstBytes power_rails() const { return at<40>().as_bytes(); }
bool has_android_log() const { return at<39>().valid(); }
::protozero::ConstBytes android_log() const { return at<39>().as_bytes(); }
bool has_system_info() const { return at<45>().valid(); }
::protozero::ConstBytes system_info() const { return at<45>().as_bytes(); }
bool has_trigger() const { return at<46>().valid(); }
::protozero::ConstBytes trigger() const { return at<46>().as_bytes(); }
bool has_packages_list() const { return at<47>().valid(); }
::protozero::ConstBytes packages_list() const { return at<47>().as_bytes(); }
bool has_chrome_benchmark_metadata() const { return at<48>().valid(); }
::protozero::ConstBytes chrome_benchmark_metadata() const { return at<48>().as_bytes(); }
bool has_perfetto_metatrace() const { return at<49>().valid(); }
::protozero::ConstBytes perfetto_metatrace() const { return at<49>().as_bytes(); }
bool has_chrome_metadata() const { return at<51>().valid(); }
::protozero::ConstBytes chrome_metadata() const { return at<51>().as_bytes(); }
bool has_gpu_counter_event() const { return at<52>().valid(); }
::protozero::ConstBytes gpu_counter_event() const { return at<52>().as_bytes(); }
bool has_gpu_render_stage_event() const { return at<53>().valid(); }
::protozero::ConstBytes gpu_render_stage_event() const { return at<53>().as_bytes(); }
bool has_streaming_profile_packet() const { return at<54>().valid(); }
::protozero::ConstBytes streaming_profile_packet() const { return at<54>().as_bytes(); }
bool has_heap_graph() const { return at<56>().valid(); }
::protozero::ConstBytes heap_graph() const { return at<56>().as_bytes(); }
bool has_graphics_frame_event() const { return at<57>().valid(); }
::protozero::ConstBytes graphics_frame_event() const { return at<57>().as_bytes(); }
bool has_vulkan_memory_event() const { return at<62>().valid(); }
::protozero::ConstBytes vulkan_memory_event() const { return at<62>().as_bytes(); }
bool has_gpu_log() const { return at<63>().valid(); }
::protozero::ConstBytes gpu_log() const { return at<63>().as_bytes(); }
bool has_vulkan_api_event() const { return at<65>().valid(); }
::protozero::ConstBytes vulkan_api_event() const { return at<65>().as_bytes(); }
bool has_perf_sample() const { return at<66>().valid(); }
::protozero::ConstBytes perf_sample() const { return at<66>().as_bytes(); }
bool has_cpu_info() const { return at<67>().valid(); }
::protozero::ConstBytes cpu_info() const { return at<67>().as_bytes(); }
bool has_smaps_packet() const { return at<68>().valid(); }
::protozero::ConstBytes smaps_packet() const { return at<68>().as_bytes(); }
bool has_service_event() const { return at<69>().valid(); }
::protozero::ConstBytes service_event() const { return at<69>().as_bytes(); }
bool has_initial_display_state() const { return at<70>().valid(); }
::protozero::ConstBytes initial_display_state() const { return at<70>().as_bytes(); }
bool has_gpu_mem_total_event() const { return at<71>().valid(); }
::protozero::ConstBytes gpu_mem_total_event() const { return at<71>().as_bytes(); }
bool has_memory_tracker_snapshot() const { return at<73>().valid(); }
::protozero::ConstBytes memory_tracker_snapshot() const { return at<73>().as_bytes(); }
bool has_frame_timeline_event() const { return at<76>().valid(); }
::protozero::ConstBytes frame_timeline_event() const { return at<76>().as_bytes(); }
bool has_android_energy_estimation_breakdown() const { return at<77>().valid(); }
::protozero::ConstBytes android_energy_estimation_breakdown() const { return at<77>().as_bytes(); }
bool has_ui_state() const { return at<78>().valid(); }
::protozero::ConstBytes ui_state() const { return at<78>().as_bytes(); }
bool has_profiled_frame_symbols() const { return at<55>().valid(); }
::protozero::ConstBytes profiled_frame_symbols() const { return at<55>().as_bytes(); }
bool has_module_symbols() const { return at<61>().valid(); }
::protozero::ConstBytes module_symbols() const { return at<61>().as_bytes(); }
bool has_deobfuscation_mapping() const { return at<64>().valid(); }
::protozero::ConstBytes deobfuscation_mapping() const { return at<64>().as_bytes(); }
bool has_track_descriptor() const { return at<60>().valid(); }
::protozero::ConstBytes track_descriptor() const { return at<60>().as_bytes(); }
bool has_process_descriptor() const { return at<43>().valid(); }
::protozero::ConstBytes process_descriptor() const { return at<43>().as_bytes(); }
bool has_thread_descriptor() const { return at<44>().valid(); }
::protozero::ConstBytes thread_descriptor() const { return at<44>().as_bytes(); }
bool has_ftrace_events() const { return at<1>().valid(); }
::protozero::ConstBytes ftrace_events() const { return at<1>().as_bytes(); }
bool has_synchronization_marker() const { return at<36>().valid(); }
::protozero::ConstBytes synchronization_marker() const { return at<36>().as_bytes(); }
bool has_compressed_packets() const { return at<50>().valid(); }
::protozero::ConstBytes compressed_packets() const { return at<50>().as_bytes(); }
bool has_extension_descriptor() const { return at<72>().valid(); }
::protozero::ConstBytes extension_descriptor() const { return at<72>().as_bytes(); }
bool has_for_testing() const { return at<900>().valid(); }
::protozero::ConstBytes for_testing() const { return at<900>().as_bytes(); }
bool has_trusted_uid() const { return at<3>().valid(); }
int32_t trusted_uid() const { return at<3>().as_int32(); }
bool has_trusted_packet_sequence_id() const { return at<10>().valid(); }
uint32_t trusted_packet_sequence_id() const { return at<10>().as_uint32(); }
bool has_interned_data() const { return at<12>().valid(); }
::protozero::ConstBytes interned_data() const { return at<12>().as_bytes(); }
bool has_sequence_flags() const { return at<13>().valid(); }
uint32_t sequence_flags() const { return at<13>().as_uint32(); }
bool has_incremental_state_cleared() const { return at<41>().valid(); }
bool incremental_state_cleared() const { return at<41>().as_bool(); }
bool has_trace_packet_defaults() const { return at<59>().valid(); }
::protozero::ConstBytes trace_packet_defaults() const { return at<59>().as_bytes(); }
bool has_previous_packet_dropped() const { return at<42>().valid(); }
bool previous_packet_dropped() const { return at<42>().as_bool(); }
};
class TracePacket : public ::protozero::Message {
public:
using Decoder = TracePacket_Decoder;
enum : int32_t {
kTimestampFieldNumber = 8,
kTimestampClockIdFieldNumber = 58,
kProcessTreeFieldNumber = 2,
kProcessStatsFieldNumber = 9,
kInodeFileMapFieldNumber = 4,
kChromeEventsFieldNumber = 5,
kClockSnapshotFieldNumber = 6,
kSysStatsFieldNumber = 7,
kTrackEventFieldNumber = 11,
kTraceConfigFieldNumber = 33,
kFtraceStatsFieldNumber = 34,
kTraceStatsFieldNumber = 35,
kProfilePacketFieldNumber = 37,
kStreamingAllocationFieldNumber = 74,
kStreamingFreeFieldNumber = 75,
kBatteryFieldNumber = 38,
kPowerRailsFieldNumber = 40,
kAndroidLogFieldNumber = 39,
kSystemInfoFieldNumber = 45,
kTriggerFieldNumber = 46,
kPackagesListFieldNumber = 47,
kChromeBenchmarkMetadataFieldNumber = 48,
kPerfettoMetatraceFieldNumber = 49,
kChromeMetadataFieldNumber = 51,
kGpuCounterEventFieldNumber = 52,
kGpuRenderStageEventFieldNumber = 53,
kStreamingProfilePacketFieldNumber = 54,
kHeapGraphFieldNumber = 56,
kGraphicsFrameEventFieldNumber = 57,
kVulkanMemoryEventFieldNumber = 62,
kGpuLogFieldNumber = 63,
kVulkanApiEventFieldNumber = 65,
kPerfSampleFieldNumber = 66,
kCpuInfoFieldNumber = 67,
kSmapsPacketFieldNumber = 68,
kServiceEventFieldNumber = 69,
kInitialDisplayStateFieldNumber = 70,
kGpuMemTotalEventFieldNumber = 71,
kMemoryTrackerSnapshotFieldNumber = 73,
kFrameTimelineEventFieldNumber = 76,
kAndroidEnergyEstimationBreakdownFieldNumber = 77,
kUiStateFieldNumber = 78,
kProfiledFrameSymbolsFieldNumber = 55,
kModuleSymbolsFieldNumber = 61,
kDeobfuscationMappingFieldNumber = 64,
kTrackDescriptorFieldNumber = 60,
kProcessDescriptorFieldNumber = 43,
kThreadDescriptorFieldNumber = 44,
kFtraceEventsFieldNumber = 1,
kSynchronizationMarkerFieldNumber = 36,
kCompressedPacketsFieldNumber = 50,
kExtensionDescriptorFieldNumber = 72,
kForTestingFieldNumber = 900,
kTrustedUidFieldNumber = 3,
kTrustedPacketSequenceIdFieldNumber = 10,
kInternedDataFieldNumber = 12,
kSequenceFlagsFieldNumber = 13,
kIncrementalStateClearedFieldNumber = 41,
kTracePacketDefaultsFieldNumber = 59,
kPreviousPacketDroppedFieldNumber = 42,
};
using SequenceFlags = ::perfetto::protos::pbzero::TracePacket_SequenceFlags;
static const SequenceFlags SEQ_UNSPECIFIED = TracePacket_SequenceFlags_SEQ_UNSPECIFIED;
static const SequenceFlags SEQ_INCREMENTAL_STATE_CLEARED = TracePacket_SequenceFlags_SEQ_INCREMENTAL_STATE_CLEARED;
static const SequenceFlags SEQ_NEEDS_INCREMENTAL_STATE = TracePacket_SequenceFlags_SEQ_NEEDS_INCREMENTAL_STATE;
using FieldMetadata_Timestamp =
::protozero::proto_utils::FieldMetadata<
8,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kUint64,
uint64_t,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_Timestamp kTimestamp() { return {}; }
void set_timestamp(uint64_t value) {
static constexpr uint32_t field_id = FieldMetadata_Timestamp::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kUint64>
::Append(*this, field_id, value);
}
using FieldMetadata_TimestampClockId =
::protozero::proto_utils::FieldMetadata<
58,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kUint32,
uint32_t,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_TimestampClockId kTimestampClockId() { return {}; }
void set_timestamp_clock_id(uint32_t value) {
static constexpr uint32_t field_id = FieldMetadata_TimestampClockId::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kUint32>
::Append(*this, field_id, value);
}
using FieldMetadata_ProcessTree =
::protozero::proto_utils::FieldMetadata<
2,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
ProcessTree,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_ProcessTree kProcessTree() { return {}; }
template <typename T = ProcessTree> T* set_process_tree() {
return BeginNestedMessage<T>(2);
}
using FieldMetadata_ProcessStats =
::protozero::proto_utils::FieldMetadata<
9,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
ProcessStats,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_ProcessStats kProcessStats() { return {}; }
template <typename T = ProcessStats> T* set_process_stats() {
return BeginNestedMessage<T>(9);
}
using FieldMetadata_InodeFileMap =
::protozero::proto_utils::FieldMetadata<
4,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
InodeFileMap,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_InodeFileMap kInodeFileMap() { return {}; }
template <typename T = InodeFileMap> T* set_inode_file_map() {
return BeginNestedMessage<T>(4);
}
using FieldMetadata_ChromeEvents =
::protozero::proto_utils::FieldMetadata<
5,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
ChromeEventBundle,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_ChromeEvents kChromeEvents() { return {}; }
template <typename T = ChromeEventBundle> T* set_chrome_events() {
return BeginNestedMessage<T>(5);
}
using FieldMetadata_ClockSnapshot =
::protozero::proto_utils::FieldMetadata<
6,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
ClockSnapshot,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_ClockSnapshot kClockSnapshot() { return {}; }
template <typename T = ClockSnapshot> T* set_clock_snapshot() {
return BeginNestedMessage<T>(6);
}
using FieldMetadata_SysStats =
::protozero::proto_utils::FieldMetadata<
7,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
SysStats,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_SysStats kSysStats() { return {}; }
template <typename T = SysStats> T* set_sys_stats() {
return BeginNestedMessage<T>(7);
}
using FieldMetadata_TrackEvent =
::protozero::proto_utils::FieldMetadata<
11,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
TrackEvent,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_TrackEvent kTrackEvent() { return {}; }
template <typename T = TrackEvent> T* set_track_event() {
return BeginNestedMessage<T>(11);
}
using FieldMetadata_TraceConfig =
::protozero::proto_utils::FieldMetadata<
33,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
TraceConfig,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_TraceConfig kTraceConfig() { return {}; }
template <typename T = TraceConfig> T* set_trace_config() {
return BeginNestedMessage<T>(33);
}
using FieldMetadata_FtraceStats =
::protozero::proto_utils::FieldMetadata<
34,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
FtraceStats,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_FtraceStats kFtraceStats() { return {}; }
template <typename T = FtraceStats> T* set_ftrace_stats() {
return BeginNestedMessage<T>(34);
}
using FieldMetadata_TraceStats =
::protozero::proto_utils::FieldMetadata<
35,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
TraceStats,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_TraceStats kTraceStats() { return {}; }
template <typename T = TraceStats> T* set_trace_stats() {
return BeginNestedMessage<T>(35);
}
using FieldMetadata_ProfilePacket =
::protozero::proto_utils::FieldMetadata<
37,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
ProfilePacket,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_ProfilePacket kProfilePacket() { return {}; }
template <typename T = ProfilePacket> T* set_profile_packet() {
return BeginNestedMessage<T>(37);
}
using FieldMetadata_StreamingAllocation =
::protozero::proto_utils::FieldMetadata<
74,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
StreamingAllocation,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_StreamingAllocation kStreamingAllocation() { return {}; }
template <typename T = StreamingAllocation> T* set_streaming_allocation() {
return BeginNestedMessage<T>(74);
}
using FieldMetadata_StreamingFree =
::protozero::proto_utils::FieldMetadata<
75,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
StreamingFree,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_StreamingFree kStreamingFree() { return {}; }
template <typename T = StreamingFree> T* set_streaming_free() {
return BeginNestedMessage<T>(75);
}
using FieldMetadata_Battery =
::protozero::proto_utils::FieldMetadata<
38,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
BatteryCounters,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_Battery kBattery() { return {}; }
template <typename T = BatteryCounters> T* set_battery() {
return BeginNestedMessage<T>(38);
}
using FieldMetadata_PowerRails =
::protozero::proto_utils::FieldMetadata<
40,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
PowerRails,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_PowerRails kPowerRails() { return {}; }
template <typename T = PowerRails> T* set_power_rails() {
return BeginNestedMessage<T>(40);
}
using FieldMetadata_AndroidLog =
::protozero::proto_utils::FieldMetadata<
39,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
AndroidLogPacket,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_AndroidLog kAndroidLog() { return {}; }
template <typename T = AndroidLogPacket> T* set_android_log() {
return BeginNestedMessage<T>(39);
}
using FieldMetadata_SystemInfo =
::protozero::proto_utils::FieldMetadata<
45,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
SystemInfo,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_SystemInfo kSystemInfo() { return {}; }
template <typename T = SystemInfo> T* set_system_info() {
return BeginNestedMessage<T>(45);
}
using FieldMetadata_Trigger =
::protozero::proto_utils::FieldMetadata<
46,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
Trigger,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_Trigger kTrigger() { return {}; }
template <typename T = Trigger> T* set_trigger() {
return BeginNestedMessage<T>(46);
}
using FieldMetadata_PackagesList =
::protozero::proto_utils::FieldMetadata<
47,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
PackagesList,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_PackagesList kPackagesList() { return {}; }
template <typename T = PackagesList> T* set_packages_list() {
return BeginNestedMessage<T>(47);
}
using FieldMetadata_ChromeBenchmarkMetadata =
::protozero::proto_utils::FieldMetadata<
48,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
ChromeBenchmarkMetadata,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_ChromeBenchmarkMetadata kChromeBenchmarkMetadata() { return {}; }
template <typename T = ChromeBenchmarkMetadata> T* set_chrome_benchmark_metadata() {
return BeginNestedMessage<T>(48);
}
using FieldMetadata_PerfettoMetatrace =
::protozero::proto_utils::FieldMetadata<
49,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
PerfettoMetatrace,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_PerfettoMetatrace kPerfettoMetatrace() { return {}; }
template <typename T = PerfettoMetatrace> T* set_perfetto_metatrace() {
return BeginNestedMessage<T>(49);
}
using FieldMetadata_ChromeMetadata =
::protozero::proto_utils::FieldMetadata<
51,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
ChromeMetadataPacket,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_ChromeMetadata kChromeMetadata() { return {}; }
template <typename T = ChromeMetadataPacket> T* set_chrome_metadata() {
return BeginNestedMessage<T>(51);
}
using FieldMetadata_GpuCounterEvent =
::protozero::proto_utils::FieldMetadata<
52,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
GpuCounterEvent,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_GpuCounterEvent kGpuCounterEvent() { return {}; }
template <typename T = GpuCounterEvent> T* set_gpu_counter_event() {
return BeginNestedMessage<T>(52);
}
using FieldMetadata_GpuRenderStageEvent =
::protozero::proto_utils::FieldMetadata<
53,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
GpuRenderStageEvent,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_GpuRenderStageEvent kGpuRenderStageEvent() { return {}; }
template <typename T = GpuRenderStageEvent> T* set_gpu_render_stage_event() {
return BeginNestedMessage<T>(53);
}
using FieldMetadata_StreamingProfilePacket =
::protozero::proto_utils::FieldMetadata<
54,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
StreamingProfilePacket,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_StreamingProfilePacket kStreamingProfilePacket() { return {}; }
template <typename T = StreamingProfilePacket> T* set_streaming_profile_packet() {
return BeginNestedMessage<T>(54);
}
using FieldMetadata_HeapGraph =
::protozero::proto_utils::FieldMetadata<
56,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
HeapGraph,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_HeapGraph kHeapGraph() { return {}; }
template <typename T = HeapGraph> T* set_heap_graph() {
return BeginNestedMessage<T>(56);
}
using FieldMetadata_GraphicsFrameEvent =
::protozero::proto_utils::FieldMetadata<
57,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
GraphicsFrameEvent,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_GraphicsFrameEvent kGraphicsFrameEvent() { return {}; }
template <typename T = GraphicsFrameEvent> T* set_graphics_frame_event() {
return BeginNestedMessage<T>(57);
}
using FieldMetadata_VulkanMemoryEvent =
::protozero::proto_utils::FieldMetadata<
62,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
VulkanMemoryEvent,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_VulkanMemoryEvent kVulkanMemoryEvent() { return {}; }
template <typename T = VulkanMemoryEvent> T* set_vulkan_memory_event() {
return BeginNestedMessage<T>(62);
}
using FieldMetadata_GpuLog =
::protozero::proto_utils::FieldMetadata<
63,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
GpuLog,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_GpuLog kGpuLog() { return {}; }
template <typename T = GpuLog> T* set_gpu_log() {
return BeginNestedMessage<T>(63);
}
using FieldMetadata_VulkanApiEvent =
::protozero::proto_utils::FieldMetadata<
65,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
VulkanApiEvent,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_VulkanApiEvent kVulkanApiEvent() { return {}; }
template <typename T = VulkanApiEvent> T* set_vulkan_api_event() {
return BeginNestedMessage<T>(65);
}
using FieldMetadata_PerfSample =
::protozero::proto_utils::FieldMetadata<
66,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
PerfSample,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_PerfSample kPerfSample() { return {}; }
template <typename T = PerfSample> T* set_perf_sample() {
return BeginNestedMessage<T>(66);
}
using FieldMetadata_CpuInfo =
::protozero::proto_utils::FieldMetadata<
67,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
CpuInfo,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_CpuInfo kCpuInfo() { return {}; }
template <typename T = CpuInfo> T* set_cpu_info() {
return BeginNestedMessage<T>(67);
}
using FieldMetadata_SmapsPacket =
::protozero::proto_utils::FieldMetadata<
68,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
SmapsPacket,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_SmapsPacket kSmapsPacket() { return {}; }
template <typename T = SmapsPacket> T* set_smaps_packet() {
return BeginNestedMessage<T>(68);
}
using FieldMetadata_ServiceEvent =
::protozero::proto_utils::FieldMetadata<
69,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
TracingServiceEvent,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_ServiceEvent kServiceEvent() { return {}; }
template <typename T = TracingServiceEvent> T* set_service_event() {
return BeginNestedMessage<T>(69);
}
using FieldMetadata_InitialDisplayState =
::protozero::proto_utils::FieldMetadata<
70,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
InitialDisplayState,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_InitialDisplayState kInitialDisplayState() { return {}; }
template <typename T = InitialDisplayState> T* set_initial_display_state() {
return BeginNestedMessage<T>(70);
}
using FieldMetadata_GpuMemTotalEvent =
::protozero::proto_utils::FieldMetadata<
71,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
GpuMemTotalEvent,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_GpuMemTotalEvent kGpuMemTotalEvent() { return {}; }
template <typename T = GpuMemTotalEvent> T* set_gpu_mem_total_event() {
return BeginNestedMessage<T>(71);
}
using FieldMetadata_MemoryTrackerSnapshot =
::protozero::proto_utils::FieldMetadata<
73,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
MemoryTrackerSnapshot,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_MemoryTrackerSnapshot kMemoryTrackerSnapshot() { return {}; }
template <typename T = MemoryTrackerSnapshot> T* set_memory_tracker_snapshot() {
return BeginNestedMessage<T>(73);
}
using FieldMetadata_FrameTimelineEvent =
::protozero::proto_utils::FieldMetadata<
76,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
FrameTimelineEvent,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_FrameTimelineEvent kFrameTimelineEvent() { return {}; }
template <typename T = FrameTimelineEvent> T* set_frame_timeline_event() {
return BeginNestedMessage<T>(76);
}
using FieldMetadata_AndroidEnergyEstimationBreakdown =
::protozero::proto_utils::FieldMetadata<
77,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
AndroidEnergyEstimationBreakdown,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_AndroidEnergyEstimationBreakdown kAndroidEnergyEstimationBreakdown() { return {}; }
template <typename T = AndroidEnergyEstimationBreakdown> T* set_android_energy_estimation_breakdown() {
return BeginNestedMessage<T>(77);
}
using FieldMetadata_UiState =
::protozero::proto_utils::FieldMetadata<
78,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
UiState,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_UiState kUiState() { return {}; }
template <typename T = UiState> T* set_ui_state() {
return BeginNestedMessage<T>(78);
}
using FieldMetadata_ProfiledFrameSymbols =
::protozero::proto_utils::FieldMetadata<
55,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
ProfiledFrameSymbols,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_ProfiledFrameSymbols kProfiledFrameSymbols() { return {}; }
template <typename T = ProfiledFrameSymbols> T* set_profiled_frame_symbols() {
return BeginNestedMessage<T>(55);
}
using FieldMetadata_ModuleSymbols =
::protozero::proto_utils::FieldMetadata<
61,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
ModuleSymbols,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_ModuleSymbols kModuleSymbols() { return {}; }
template <typename T = ModuleSymbols> T* set_module_symbols() {
return BeginNestedMessage<T>(61);
}
using FieldMetadata_DeobfuscationMapping =
::protozero::proto_utils::FieldMetadata<
64,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
DeobfuscationMapping,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_DeobfuscationMapping kDeobfuscationMapping() { return {}; }
template <typename T = DeobfuscationMapping> T* set_deobfuscation_mapping() {
return BeginNestedMessage<T>(64);
}
using FieldMetadata_TrackDescriptor =
::protozero::proto_utils::FieldMetadata<
60,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
TrackDescriptor,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_TrackDescriptor kTrackDescriptor() { return {}; }
template <typename T = TrackDescriptor> T* set_track_descriptor() {
return BeginNestedMessage<T>(60);
}
using FieldMetadata_ProcessDescriptor =
::protozero::proto_utils::FieldMetadata<
43,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
ProcessDescriptor,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_ProcessDescriptor kProcessDescriptor() { return {}; }
template <typename T = ProcessDescriptor> T* set_process_descriptor() {
return BeginNestedMessage<T>(43);
}
using FieldMetadata_ThreadDescriptor =
::protozero::proto_utils::FieldMetadata<
44,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
ThreadDescriptor,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_ThreadDescriptor kThreadDescriptor() { return {}; }
template <typename T = ThreadDescriptor> T* set_thread_descriptor() {
return BeginNestedMessage<T>(44);
}
using FieldMetadata_FtraceEvents =
::protozero::proto_utils::FieldMetadata<
1,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
FtraceEventBundle,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_FtraceEvents kFtraceEvents() { return {}; }
template <typename T = FtraceEventBundle> T* set_ftrace_events() {
return BeginNestedMessage<T>(1);
}
using FieldMetadata_SynchronizationMarker =
::protozero::proto_utils::FieldMetadata<
36,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kBytes,
std::string,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_SynchronizationMarker kSynchronizationMarker() { return {}; }
void set_synchronization_marker(const uint8_t* data, size_t size) {
AppendBytes(FieldMetadata_SynchronizationMarker::kFieldId, data, size);
}
void set_synchronization_marker(std::string value) {
static constexpr uint32_t field_id = FieldMetadata_SynchronizationMarker::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kBytes>
::Append(*this, field_id, value);
}
using FieldMetadata_CompressedPackets =
::protozero::proto_utils::FieldMetadata<
50,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kBytes,
std::string,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_CompressedPackets kCompressedPackets() { return {}; }
void set_compressed_packets(const uint8_t* data, size_t size) {
AppendBytes(FieldMetadata_CompressedPackets::kFieldId, data, size);
}
void set_compressed_packets(std::string value) {
static constexpr uint32_t field_id = FieldMetadata_CompressedPackets::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kBytes>
::Append(*this, field_id, value);
}
using FieldMetadata_ExtensionDescriptor =
::protozero::proto_utils::FieldMetadata<
72,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
ExtensionDescriptor,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_ExtensionDescriptor kExtensionDescriptor() { return {}; }
template <typename T = ExtensionDescriptor> T* set_extension_descriptor() {
return BeginNestedMessage<T>(72);
}
using FieldMetadata_ForTesting =
::protozero::proto_utils::FieldMetadata<
900,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
TestEvent,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_ForTesting kForTesting() { return {}; }
template <typename T = TestEvent> T* set_for_testing() {
return BeginNestedMessage<T>(900);
}
using FieldMetadata_TrustedUid =
::protozero::proto_utils::FieldMetadata<
3,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kInt32,
int32_t,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_TrustedUid kTrustedUid() { return {}; }
void set_trusted_uid(int32_t value) {
static constexpr uint32_t field_id = FieldMetadata_TrustedUid::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kInt32>
::Append(*this, field_id, value);
}
using FieldMetadata_TrustedPacketSequenceId =
::protozero::proto_utils::FieldMetadata<
10,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kUint32,
uint32_t,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_TrustedPacketSequenceId kTrustedPacketSequenceId() { return {}; }
void set_trusted_packet_sequence_id(uint32_t value) {
static constexpr uint32_t field_id = FieldMetadata_TrustedPacketSequenceId::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kUint32>
::Append(*this, field_id, value);
}
using FieldMetadata_InternedData =
::protozero::proto_utils::FieldMetadata<
12,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
InternedData,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_InternedData kInternedData() { return {}; }
template <typename T = InternedData> T* set_interned_data() {
return BeginNestedMessage<T>(12);
}
using FieldMetadata_SequenceFlags =
::protozero::proto_utils::FieldMetadata<
13,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kUint32,
uint32_t,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_SequenceFlags kSequenceFlags() { return {}; }
void set_sequence_flags(uint32_t value) {
static constexpr uint32_t field_id = FieldMetadata_SequenceFlags::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kUint32>
::Append(*this, field_id, value);
}
using FieldMetadata_IncrementalStateCleared =
::protozero::proto_utils::FieldMetadata<
41,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kBool,
bool,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_IncrementalStateCleared kIncrementalStateCleared() { return {}; }
void set_incremental_state_cleared(bool value) {
static constexpr uint32_t field_id = FieldMetadata_IncrementalStateCleared::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kBool>
::Append(*this, field_id, value);
}
using FieldMetadata_TracePacketDefaults =
::protozero::proto_utils::FieldMetadata<
59,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kMessage,
TracePacketDefaults,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_TracePacketDefaults kTracePacketDefaults() { return {}; }
template <typename T = TracePacketDefaults> T* set_trace_packet_defaults() {
return BeginNestedMessage<T>(59);
}
using FieldMetadata_PreviousPacketDropped =
::protozero::proto_utils::FieldMetadata<
42,
::protozero::proto_utils::RepetitionType::kNotRepeated,
::protozero::proto_utils::ProtoSchemaType::kBool,
bool,
TracePacket>;
// Ceci n'est pas une pipe.
// This is actually a variable of FieldMetadataHelper<FieldMetadata<...>>
// type (and users are expected to use it as such, hence kCamelCase name).
// It is declared as a function to keep protozero bindings header-only as
// inline constexpr variables are not available until C++17 (while inline
// functions are).
// TODO(altimin): Use inline variable instead after adopting C++17.
static constexpr FieldMetadata_PreviousPacketDropped kPreviousPacketDropped() { return {}; }
void set_previous_packet_dropped(bool value) {
static constexpr uint32_t field_id = FieldMetadata_PreviousPacketDropped::kFieldId;
// Call the appropriate protozero::Message::Append(field_id, ...)
// method based on the type of the field.
::protozero::internal::FieldWriter<
::protozero::proto_utils::ProtoSchemaType::kBool>
::Append(*this, field_id, value);
}
};
} // Namespace.
} // Namespace.
} // Namespace.
#endif // Include guard.