• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Autogenerated by the ProtoZero compiler plugin. DO NOT EDIT.
2 
3 #ifndef PERFETTO_PROTOS_TRACE_CONFIG_PROTO_H_
4 #define PERFETTO_PROTOS_TRACE_CONFIG_PROTO_H_
5 
6 #include <stddef.h>
7 #include <stdint.h>
8 
9 #include "perfetto/protozero/message.h"
10 #include "perfetto/protozero/packed_repeated_fields.h"
11 #include "perfetto/protozero/proto_decoder.h"
12 #include "perfetto/protozero/proto_utils.h"
13 
14 namespace perfetto {
15 namespace protos {
16 namespace pbzero {
17 
18 class DataSourceConfig;
19 class TraceConfig_BufferConfig;
20 class TraceConfig_BuiltinDataSource;
21 class TraceConfig_DataSource;
22 class TraceConfig_GuardrailOverrides;
23 class TraceConfig_IncidentReportConfig;
24 class TraceConfig_IncrementalStateConfig;
25 class TraceConfig_ProducerConfig;
26 class TraceConfig_StatsdMetadata;
27 class TraceConfig_TriggerConfig;
28 class TraceConfig_TriggerConfig_Trigger;
29 enum BuiltinClock : int32_t;
30 enum TraceConfig_BufferConfig_FillPolicy : int32_t;
31 enum TraceConfig_CompressionType : int32_t;
32 enum TraceConfig_LockdownModeOperation : int32_t;
33 enum TraceConfig_TriggerConfig_TriggerMode : int32_t;
34 
35 enum TraceConfig_LockdownModeOperation : int32_t {
36   TraceConfig_LockdownModeOperation_LOCKDOWN_UNCHANGED = 0,
37   TraceConfig_LockdownModeOperation_LOCKDOWN_CLEAR = 1,
38   TraceConfig_LockdownModeOperation_LOCKDOWN_SET = 2,
39 };
40 
41 const TraceConfig_LockdownModeOperation TraceConfig_LockdownModeOperation_MIN = TraceConfig_LockdownModeOperation_LOCKDOWN_UNCHANGED;
42 const TraceConfig_LockdownModeOperation TraceConfig_LockdownModeOperation_MAX = TraceConfig_LockdownModeOperation_LOCKDOWN_SET;
43 
44 enum TraceConfig_CompressionType : int32_t {
45   TraceConfig_CompressionType_COMPRESSION_TYPE_UNSPECIFIED = 0,
46   TraceConfig_CompressionType_COMPRESSION_TYPE_DEFLATE = 1,
47 };
48 
49 const TraceConfig_CompressionType TraceConfig_CompressionType_MIN = TraceConfig_CompressionType_COMPRESSION_TYPE_UNSPECIFIED;
50 const TraceConfig_CompressionType TraceConfig_CompressionType_MAX = TraceConfig_CompressionType_COMPRESSION_TYPE_DEFLATE;
51 
52 enum TraceConfig_TriggerConfig_TriggerMode : int32_t {
53   TraceConfig_TriggerConfig_TriggerMode_UNSPECIFIED = 0,
54   TraceConfig_TriggerConfig_TriggerMode_START_TRACING = 1,
55   TraceConfig_TriggerConfig_TriggerMode_STOP_TRACING = 2,
56 };
57 
58 const TraceConfig_TriggerConfig_TriggerMode TraceConfig_TriggerConfig_TriggerMode_MIN = TraceConfig_TriggerConfig_TriggerMode_UNSPECIFIED;
59 const TraceConfig_TriggerConfig_TriggerMode TraceConfig_TriggerConfig_TriggerMode_MAX = TraceConfig_TriggerConfig_TriggerMode_STOP_TRACING;
60 
61 enum TraceConfig_BufferConfig_FillPolicy : int32_t {
62   TraceConfig_BufferConfig_FillPolicy_UNSPECIFIED = 0,
63   TraceConfig_BufferConfig_FillPolicy_RING_BUFFER = 1,
64   TraceConfig_BufferConfig_FillPolicy_DISCARD = 2,
65 };
66 
67 const TraceConfig_BufferConfig_FillPolicy TraceConfig_BufferConfig_FillPolicy_MIN = TraceConfig_BufferConfig_FillPolicy_UNSPECIFIED;
68 const TraceConfig_BufferConfig_FillPolicy TraceConfig_BufferConfig_FillPolicy_MAX = TraceConfig_BufferConfig_FillPolicy_DISCARD;
69 
70 class TraceConfig_Decoder : public ::protozero::TypedProtoDecoder</*MAX_FIELD_ID=*/29, /*HAS_NONPACKED_REPEATED_FIELDS=*/true> {
71  public:
TraceConfig_Decoder(const uint8_t * data,size_t len)72   TraceConfig_Decoder(const uint8_t* data, size_t len) : TypedProtoDecoder(data, len) {}
TraceConfig_Decoder(const std::string & raw)73   explicit TraceConfig_Decoder(const std::string& raw) : TypedProtoDecoder(reinterpret_cast<const uint8_t*>(raw.data()), raw.size()) {}
TraceConfig_Decoder(const::protozero::ConstBytes & raw)74   explicit TraceConfig_Decoder(const ::protozero::ConstBytes& raw) : TypedProtoDecoder(raw.data, raw.size) {}
has_buffers()75   bool has_buffers() const { return at<1>().valid(); }
buffers()76   ::protozero::RepeatedFieldIterator<::protozero::ConstBytes> buffers() const { return GetRepeated<::protozero::ConstBytes>(1); }
has_data_sources()77   bool has_data_sources() const { return at<2>().valid(); }
data_sources()78   ::protozero::RepeatedFieldIterator<::protozero::ConstBytes> data_sources() const { return GetRepeated<::protozero::ConstBytes>(2); }
has_builtin_data_sources()79   bool has_builtin_data_sources() const { return at<20>().valid(); }
builtin_data_sources()80   ::protozero::ConstBytes builtin_data_sources() const { return at<20>().as_bytes(); }
has_duration_ms()81   bool has_duration_ms() const { return at<3>().valid(); }
duration_ms()82   uint32_t duration_ms() const { return at<3>().as_uint32(); }
has_enable_extra_guardrails()83   bool has_enable_extra_guardrails() const { return at<4>().valid(); }
enable_extra_guardrails()84   bool enable_extra_guardrails() const { return at<4>().as_bool(); }
has_lockdown_mode()85   bool has_lockdown_mode() const { return at<5>().valid(); }
lockdown_mode()86   int32_t lockdown_mode() const { return at<5>().as_int32(); }
has_producers()87   bool has_producers() const { return at<6>().valid(); }
producers()88   ::protozero::RepeatedFieldIterator<::protozero::ConstBytes> producers() const { return GetRepeated<::protozero::ConstBytes>(6); }
has_statsd_metadata()89   bool has_statsd_metadata() const { return at<7>().valid(); }
statsd_metadata()90   ::protozero::ConstBytes statsd_metadata() const { return at<7>().as_bytes(); }
has_write_into_file()91   bool has_write_into_file() const { return at<8>().valid(); }
write_into_file()92   bool write_into_file() const { return at<8>().as_bool(); }
has_output_path()93   bool has_output_path() const { return at<29>().valid(); }
output_path()94   ::protozero::ConstChars output_path() const { return at<29>().as_string(); }
has_file_write_period_ms()95   bool has_file_write_period_ms() const { return at<9>().valid(); }
file_write_period_ms()96   uint32_t file_write_period_ms() const { return at<9>().as_uint32(); }
has_max_file_size_bytes()97   bool has_max_file_size_bytes() const { return at<10>().valid(); }
max_file_size_bytes()98   uint64_t max_file_size_bytes() const { return at<10>().as_uint64(); }
has_guardrail_overrides()99   bool has_guardrail_overrides() const { return at<11>().valid(); }
guardrail_overrides()100   ::protozero::ConstBytes guardrail_overrides() const { return at<11>().as_bytes(); }
has_deferred_start()101   bool has_deferred_start() const { return at<12>().valid(); }
deferred_start()102   bool deferred_start() const { return at<12>().as_bool(); }
has_flush_period_ms()103   bool has_flush_period_ms() const { return at<13>().valid(); }
flush_period_ms()104   uint32_t flush_period_ms() const { return at<13>().as_uint32(); }
has_flush_timeout_ms()105   bool has_flush_timeout_ms() const { return at<14>().valid(); }
flush_timeout_ms()106   uint32_t flush_timeout_ms() const { return at<14>().as_uint32(); }
has_data_source_stop_timeout_ms()107   bool has_data_source_stop_timeout_ms() const { return at<23>().valid(); }
data_source_stop_timeout_ms()108   uint32_t data_source_stop_timeout_ms() const { return at<23>().as_uint32(); }
has_notify_traceur()109   bool has_notify_traceur() const { return at<16>().valid(); }
notify_traceur()110   bool notify_traceur() const { return at<16>().as_bool(); }
has_trigger_config()111   bool has_trigger_config() const { return at<17>().valid(); }
trigger_config()112   ::protozero::ConstBytes trigger_config() const { return at<17>().as_bytes(); }
has_activate_triggers()113   bool has_activate_triggers() const { return at<18>().valid(); }
activate_triggers()114   ::protozero::RepeatedFieldIterator<::protozero::ConstChars> activate_triggers() const { return GetRepeated<::protozero::ConstChars>(18); }
has_incremental_state_config()115   bool has_incremental_state_config() const { return at<21>().valid(); }
incremental_state_config()116   ::protozero::ConstBytes incremental_state_config() const { return at<21>().as_bytes(); }
has_allow_user_build_tracing()117   bool has_allow_user_build_tracing() const { return at<19>().valid(); }
allow_user_build_tracing()118   bool allow_user_build_tracing() const { return at<19>().as_bool(); }
has_unique_session_name()119   bool has_unique_session_name() const { return at<22>().valid(); }
unique_session_name()120   ::protozero::ConstChars unique_session_name() const { return at<22>().as_string(); }
has_compression_type()121   bool has_compression_type() const { return at<24>().valid(); }
compression_type()122   int32_t compression_type() const { return at<24>().as_int32(); }
has_incident_report_config()123   bool has_incident_report_config() const { return at<25>().valid(); }
incident_report_config()124   ::protozero::ConstBytes incident_report_config() const { return at<25>().as_bytes(); }
has_trace_uuid_msb()125   bool has_trace_uuid_msb() const { return at<27>().valid(); }
trace_uuid_msb()126   int64_t trace_uuid_msb() const { return at<27>().as_int64(); }
has_trace_uuid_lsb()127   bool has_trace_uuid_lsb() const { return at<28>().valid(); }
trace_uuid_lsb()128   int64_t trace_uuid_lsb() const { return at<28>().as_int64(); }
129 };
130 
131 class TraceConfig : public ::protozero::Message {
132  public:
133   using Decoder = TraceConfig_Decoder;
134   enum : int32_t {
135     kBuffersFieldNumber = 1,
136     kDataSourcesFieldNumber = 2,
137     kBuiltinDataSourcesFieldNumber = 20,
138     kDurationMsFieldNumber = 3,
139     kEnableExtraGuardrailsFieldNumber = 4,
140     kLockdownModeFieldNumber = 5,
141     kProducersFieldNumber = 6,
142     kStatsdMetadataFieldNumber = 7,
143     kWriteIntoFileFieldNumber = 8,
144     kOutputPathFieldNumber = 29,
145     kFileWritePeriodMsFieldNumber = 9,
146     kMaxFileSizeBytesFieldNumber = 10,
147     kGuardrailOverridesFieldNumber = 11,
148     kDeferredStartFieldNumber = 12,
149     kFlushPeriodMsFieldNumber = 13,
150     kFlushTimeoutMsFieldNumber = 14,
151     kDataSourceStopTimeoutMsFieldNumber = 23,
152     kNotifyTraceurFieldNumber = 16,
153     kTriggerConfigFieldNumber = 17,
154     kActivateTriggersFieldNumber = 18,
155     kIncrementalStateConfigFieldNumber = 21,
156     kAllowUserBuildTracingFieldNumber = 19,
157     kUniqueSessionNameFieldNumber = 22,
158     kCompressionTypeFieldNumber = 24,
159     kIncidentReportConfigFieldNumber = 25,
160     kTraceUuidMsbFieldNumber = 27,
161     kTraceUuidLsbFieldNumber = 28,
162   };
163   using BufferConfig = ::perfetto::protos::pbzero::TraceConfig_BufferConfig;
164   using DataSource = ::perfetto::protos::pbzero::TraceConfig_DataSource;
165   using BuiltinDataSource = ::perfetto::protos::pbzero::TraceConfig_BuiltinDataSource;
166   using ProducerConfig = ::perfetto::protos::pbzero::TraceConfig_ProducerConfig;
167   using StatsdMetadata = ::perfetto::protos::pbzero::TraceConfig_StatsdMetadata;
168   using GuardrailOverrides = ::perfetto::protos::pbzero::TraceConfig_GuardrailOverrides;
169   using TriggerConfig = ::perfetto::protos::pbzero::TraceConfig_TriggerConfig;
170   using IncrementalStateConfig = ::perfetto::protos::pbzero::TraceConfig_IncrementalStateConfig;
171   using IncidentReportConfig = ::perfetto::protos::pbzero::TraceConfig_IncidentReportConfig;
172   using LockdownModeOperation = ::perfetto::protos::pbzero::TraceConfig_LockdownModeOperation;
173   using CompressionType = ::perfetto::protos::pbzero::TraceConfig_CompressionType;
174   static const LockdownModeOperation LOCKDOWN_UNCHANGED = TraceConfig_LockdownModeOperation_LOCKDOWN_UNCHANGED;
175   static const LockdownModeOperation LOCKDOWN_CLEAR = TraceConfig_LockdownModeOperation_LOCKDOWN_CLEAR;
176   static const LockdownModeOperation LOCKDOWN_SET = TraceConfig_LockdownModeOperation_LOCKDOWN_SET;
177   static const CompressionType COMPRESSION_TYPE_UNSPECIFIED = TraceConfig_CompressionType_COMPRESSION_TYPE_UNSPECIFIED;
178   static const CompressionType COMPRESSION_TYPE_DEFLATE = TraceConfig_CompressionType_COMPRESSION_TYPE_DEFLATE;
add_buffers()179   template <typename T = TraceConfig_BufferConfig> T* add_buffers() {
180     return BeginNestedMessage<T>(1);
181   }
182 
add_data_sources()183   template <typename T = TraceConfig_DataSource> T* add_data_sources() {
184     return BeginNestedMessage<T>(2);
185   }
186 
set_builtin_data_sources()187   template <typename T = TraceConfig_BuiltinDataSource> T* set_builtin_data_sources() {
188     return BeginNestedMessage<T>(20);
189   }
190 
set_duration_ms(uint32_t value)191   void set_duration_ms(uint32_t value) {
192     AppendVarInt(3, value);
193   }
set_enable_extra_guardrails(bool value)194   void set_enable_extra_guardrails(bool value) {
195     AppendTinyVarInt(4, value);
196   }
set_lockdown_mode(::perfetto::protos::pbzero::TraceConfig_LockdownModeOperation value)197   void set_lockdown_mode(::perfetto::protos::pbzero::TraceConfig_LockdownModeOperation value) {
198     AppendTinyVarInt(5, value);
199   }
add_producers()200   template <typename T = TraceConfig_ProducerConfig> T* add_producers() {
201     return BeginNestedMessage<T>(6);
202   }
203 
set_statsd_metadata()204   template <typename T = TraceConfig_StatsdMetadata> T* set_statsd_metadata() {
205     return BeginNestedMessage<T>(7);
206   }
207 
set_write_into_file(bool value)208   void set_write_into_file(bool value) {
209     AppendTinyVarInt(8, value);
210   }
set_output_path(const std::string & value)211   void set_output_path(const std::string& value) {
212     AppendBytes(29, value.data(), value.size());
213   }
set_output_path(const char * data,size_t size)214   void set_output_path(const char* data, size_t size) {
215     AppendBytes(29, data, size);
216   }
set_file_write_period_ms(uint32_t value)217   void set_file_write_period_ms(uint32_t value) {
218     AppendVarInt(9, value);
219   }
set_max_file_size_bytes(uint64_t value)220   void set_max_file_size_bytes(uint64_t value) {
221     AppendVarInt(10, value);
222   }
set_guardrail_overrides()223   template <typename T = TraceConfig_GuardrailOverrides> T* set_guardrail_overrides() {
224     return BeginNestedMessage<T>(11);
225   }
226 
set_deferred_start(bool value)227   void set_deferred_start(bool value) {
228     AppendTinyVarInt(12, value);
229   }
set_flush_period_ms(uint32_t value)230   void set_flush_period_ms(uint32_t value) {
231     AppendVarInt(13, value);
232   }
set_flush_timeout_ms(uint32_t value)233   void set_flush_timeout_ms(uint32_t value) {
234     AppendVarInt(14, value);
235   }
set_data_source_stop_timeout_ms(uint32_t value)236   void set_data_source_stop_timeout_ms(uint32_t value) {
237     AppendVarInt(23, value);
238   }
set_notify_traceur(bool value)239   void set_notify_traceur(bool value) {
240     AppendTinyVarInt(16, value);
241   }
set_trigger_config()242   template <typename T = TraceConfig_TriggerConfig> T* set_trigger_config() {
243     return BeginNestedMessage<T>(17);
244   }
245 
add_activate_triggers(const std::string & value)246   void add_activate_triggers(const std::string& value) {
247     AppendBytes(18, value.data(), value.size());
248   }
add_activate_triggers(const char * data,size_t size)249   void add_activate_triggers(const char* data, size_t size) {
250     AppendBytes(18, data, size);
251   }
set_incremental_state_config()252   template <typename T = TraceConfig_IncrementalStateConfig> T* set_incremental_state_config() {
253     return BeginNestedMessage<T>(21);
254   }
255 
set_allow_user_build_tracing(bool value)256   void set_allow_user_build_tracing(bool value) {
257     AppendTinyVarInt(19, value);
258   }
set_unique_session_name(const std::string & value)259   void set_unique_session_name(const std::string& value) {
260     AppendBytes(22, value.data(), value.size());
261   }
set_unique_session_name(const char * data,size_t size)262   void set_unique_session_name(const char* data, size_t size) {
263     AppendBytes(22, data, size);
264   }
set_compression_type(::perfetto::protos::pbzero::TraceConfig_CompressionType value)265   void set_compression_type(::perfetto::protos::pbzero::TraceConfig_CompressionType value) {
266     AppendTinyVarInt(24, value);
267   }
set_incident_report_config()268   template <typename T = TraceConfig_IncidentReportConfig> T* set_incident_report_config() {
269     return BeginNestedMessage<T>(25);
270   }
271 
set_trace_uuid_msb(int64_t value)272   void set_trace_uuid_msb(int64_t value) {
273     AppendVarInt(27, value);
274   }
set_trace_uuid_lsb(int64_t value)275   void set_trace_uuid_lsb(int64_t value) {
276     AppendVarInt(28, value);
277   }
278 };
279 
280 class TraceConfig_IncidentReportConfig_Decoder : public ::protozero::TypedProtoDecoder</*MAX_FIELD_ID=*/4, /*HAS_NONPACKED_REPEATED_FIELDS=*/false> {
281  public:
TraceConfig_IncidentReportConfig_Decoder(const uint8_t * data,size_t len)282   TraceConfig_IncidentReportConfig_Decoder(const uint8_t* data, size_t len) : TypedProtoDecoder(data, len) {}
TraceConfig_IncidentReportConfig_Decoder(const std::string & raw)283   explicit TraceConfig_IncidentReportConfig_Decoder(const std::string& raw) : TypedProtoDecoder(reinterpret_cast<const uint8_t*>(raw.data()), raw.size()) {}
TraceConfig_IncidentReportConfig_Decoder(const::protozero::ConstBytes & raw)284   explicit TraceConfig_IncidentReportConfig_Decoder(const ::protozero::ConstBytes& raw) : TypedProtoDecoder(raw.data, raw.size) {}
has_destination_package()285   bool has_destination_package() const { return at<1>().valid(); }
destination_package()286   ::protozero::ConstChars destination_package() const { return at<1>().as_string(); }
has_destination_class()287   bool has_destination_class() const { return at<2>().valid(); }
destination_class()288   ::protozero::ConstChars destination_class() const { return at<2>().as_string(); }
has_privacy_level()289   bool has_privacy_level() const { return at<3>().valid(); }
privacy_level()290   int32_t privacy_level() const { return at<3>().as_int32(); }
has_skip_dropbox()291   bool has_skip_dropbox() const { return at<4>().valid(); }
skip_dropbox()292   bool skip_dropbox() const { return at<4>().as_bool(); }
293 };
294 
295 class TraceConfig_IncidentReportConfig : public ::protozero::Message {
296  public:
297   using Decoder = TraceConfig_IncidentReportConfig_Decoder;
298   enum : int32_t {
299     kDestinationPackageFieldNumber = 1,
300     kDestinationClassFieldNumber = 2,
301     kPrivacyLevelFieldNumber = 3,
302     kSkipDropboxFieldNumber = 4,
303   };
set_destination_package(const std::string & value)304   void set_destination_package(const std::string& value) {
305     AppendBytes(1, value.data(), value.size());
306   }
set_destination_package(const char * data,size_t size)307   void set_destination_package(const char* data, size_t size) {
308     AppendBytes(1, data, size);
309   }
set_destination_class(const std::string & value)310   void set_destination_class(const std::string& value) {
311     AppendBytes(2, value.data(), value.size());
312   }
set_destination_class(const char * data,size_t size)313   void set_destination_class(const char* data, size_t size) {
314     AppendBytes(2, data, size);
315   }
set_privacy_level(int32_t value)316   void set_privacy_level(int32_t value) {
317     AppendVarInt(3, value);
318   }
set_skip_dropbox(bool value)319   void set_skip_dropbox(bool value) {
320     AppendTinyVarInt(4, value);
321   }
322 };
323 
324 class TraceConfig_IncrementalStateConfig_Decoder : public ::protozero::TypedProtoDecoder</*MAX_FIELD_ID=*/1, /*HAS_NONPACKED_REPEATED_FIELDS=*/false> {
325  public:
TraceConfig_IncrementalStateConfig_Decoder(const uint8_t * data,size_t len)326   TraceConfig_IncrementalStateConfig_Decoder(const uint8_t* data, size_t len) : TypedProtoDecoder(data, len) {}
TraceConfig_IncrementalStateConfig_Decoder(const std::string & raw)327   explicit TraceConfig_IncrementalStateConfig_Decoder(const std::string& raw) : TypedProtoDecoder(reinterpret_cast<const uint8_t*>(raw.data()), raw.size()) {}
TraceConfig_IncrementalStateConfig_Decoder(const::protozero::ConstBytes & raw)328   explicit TraceConfig_IncrementalStateConfig_Decoder(const ::protozero::ConstBytes& raw) : TypedProtoDecoder(raw.data, raw.size) {}
has_clear_period_ms()329   bool has_clear_period_ms() const { return at<1>().valid(); }
clear_period_ms()330   uint32_t clear_period_ms() const { return at<1>().as_uint32(); }
331 };
332 
333 class TraceConfig_IncrementalStateConfig : public ::protozero::Message {
334  public:
335   using Decoder = TraceConfig_IncrementalStateConfig_Decoder;
336   enum : int32_t {
337     kClearPeriodMsFieldNumber = 1,
338   };
set_clear_period_ms(uint32_t value)339   void set_clear_period_ms(uint32_t value) {
340     AppendVarInt(1, value);
341   }
342 };
343 
344 class TraceConfig_TriggerConfig_Decoder : public ::protozero::TypedProtoDecoder</*MAX_FIELD_ID=*/3, /*HAS_NONPACKED_REPEATED_FIELDS=*/true> {
345  public:
TraceConfig_TriggerConfig_Decoder(const uint8_t * data,size_t len)346   TraceConfig_TriggerConfig_Decoder(const uint8_t* data, size_t len) : TypedProtoDecoder(data, len) {}
TraceConfig_TriggerConfig_Decoder(const std::string & raw)347   explicit TraceConfig_TriggerConfig_Decoder(const std::string& raw) : TypedProtoDecoder(reinterpret_cast<const uint8_t*>(raw.data()), raw.size()) {}
TraceConfig_TriggerConfig_Decoder(const::protozero::ConstBytes & raw)348   explicit TraceConfig_TriggerConfig_Decoder(const ::protozero::ConstBytes& raw) : TypedProtoDecoder(raw.data, raw.size) {}
has_trigger_mode()349   bool has_trigger_mode() const { return at<1>().valid(); }
trigger_mode()350   int32_t trigger_mode() const { return at<1>().as_int32(); }
has_triggers()351   bool has_triggers() const { return at<2>().valid(); }
triggers()352   ::protozero::RepeatedFieldIterator<::protozero::ConstBytes> triggers() const { return GetRepeated<::protozero::ConstBytes>(2); }
has_trigger_timeout_ms()353   bool has_trigger_timeout_ms() const { return at<3>().valid(); }
trigger_timeout_ms()354   uint32_t trigger_timeout_ms() const { return at<3>().as_uint32(); }
355 };
356 
357 class TraceConfig_TriggerConfig : public ::protozero::Message {
358  public:
359   using Decoder = TraceConfig_TriggerConfig_Decoder;
360   enum : int32_t {
361     kTriggerModeFieldNumber = 1,
362     kTriggersFieldNumber = 2,
363     kTriggerTimeoutMsFieldNumber = 3,
364   };
365   using Trigger = ::perfetto::protos::pbzero::TraceConfig_TriggerConfig_Trigger;
366   using TriggerMode = ::perfetto::protos::pbzero::TraceConfig_TriggerConfig_TriggerMode;
367   static const TriggerMode UNSPECIFIED = TraceConfig_TriggerConfig_TriggerMode_UNSPECIFIED;
368   static const TriggerMode START_TRACING = TraceConfig_TriggerConfig_TriggerMode_START_TRACING;
369   static const TriggerMode STOP_TRACING = TraceConfig_TriggerConfig_TriggerMode_STOP_TRACING;
set_trigger_mode(::perfetto::protos::pbzero::TraceConfig_TriggerConfig_TriggerMode value)370   void set_trigger_mode(::perfetto::protos::pbzero::TraceConfig_TriggerConfig_TriggerMode value) {
371     AppendTinyVarInt(1, value);
372   }
add_triggers()373   template <typename T = TraceConfig_TriggerConfig_Trigger> T* add_triggers() {
374     return BeginNestedMessage<T>(2);
375   }
376 
set_trigger_timeout_ms(uint32_t value)377   void set_trigger_timeout_ms(uint32_t value) {
378     AppendVarInt(3, value);
379   }
380 };
381 
382 class TraceConfig_TriggerConfig_Trigger_Decoder : public ::protozero::TypedProtoDecoder</*MAX_FIELD_ID=*/3, /*HAS_NONPACKED_REPEATED_FIELDS=*/false> {
383  public:
TraceConfig_TriggerConfig_Trigger_Decoder(const uint8_t * data,size_t len)384   TraceConfig_TriggerConfig_Trigger_Decoder(const uint8_t* data, size_t len) : TypedProtoDecoder(data, len) {}
TraceConfig_TriggerConfig_Trigger_Decoder(const std::string & raw)385   explicit TraceConfig_TriggerConfig_Trigger_Decoder(const std::string& raw) : TypedProtoDecoder(reinterpret_cast<const uint8_t*>(raw.data()), raw.size()) {}
TraceConfig_TriggerConfig_Trigger_Decoder(const::protozero::ConstBytes & raw)386   explicit TraceConfig_TriggerConfig_Trigger_Decoder(const ::protozero::ConstBytes& raw) : TypedProtoDecoder(raw.data, raw.size) {}
has_name()387   bool has_name() const { return at<1>().valid(); }
name()388   ::protozero::ConstChars name() const { return at<1>().as_string(); }
has_producer_name_regex()389   bool has_producer_name_regex() const { return at<2>().valid(); }
producer_name_regex()390   ::protozero::ConstChars producer_name_regex() const { return at<2>().as_string(); }
has_stop_delay_ms()391   bool has_stop_delay_ms() const { return at<3>().valid(); }
stop_delay_ms()392   uint32_t stop_delay_ms() const { return at<3>().as_uint32(); }
393 };
394 
395 class TraceConfig_TriggerConfig_Trigger : public ::protozero::Message {
396  public:
397   using Decoder = TraceConfig_TriggerConfig_Trigger_Decoder;
398   enum : int32_t {
399     kNameFieldNumber = 1,
400     kProducerNameRegexFieldNumber = 2,
401     kStopDelayMsFieldNumber = 3,
402   };
set_name(const std::string & value)403   void set_name(const std::string& value) {
404     AppendBytes(1, value.data(), value.size());
405   }
set_name(const char * data,size_t size)406   void set_name(const char* data, size_t size) {
407     AppendBytes(1, data, size);
408   }
set_producer_name_regex(const std::string & value)409   void set_producer_name_regex(const std::string& value) {
410     AppendBytes(2, value.data(), value.size());
411   }
set_producer_name_regex(const char * data,size_t size)412   void set_producer_name_regex(const char* data, size_t size) {
413     AppendBytes(2, data, size);
414   }
set_stop_delay_ms(uint32_t value)415   void set_stop_delay_ms(uint32_t value) {
416     AppendVarInt(3, value);
417   }
418 };
419 
420 class TraceConfig_GuardrailOverrides_Decoder : public ::protozero::TypedProtoDecoder</*MAX_FIELD_ID=*/1, /*HAS_NONPACKED_REPEATED_FIELDS=*/false> {
421  public:
TraceConfig_GuardrailOverrides_Decoder(const uint8_t * data,size_t len)422   TraceConfig_GuardrailOverrides_Decoder(const uint8_t* data, size_t len) : TypedProtoDecoder(data, len) {}
TraceConfig_GuardrailOverrides_Decoder(const std::string & raw)423   explicit TraceConfig_GuardrailOverrides_Decoder(const std::string& raw) : TypedProtoDecoder(reinterpret_cast<const uint8_t*>(raw.data()), raw.size()) {}
TraceConfig_GuardrailOverrides_Decoder(const::protozero::ConstBytes & raw)424   explicit TraceConfig_GuardrailOverrides_Decoder(const ::protozero::ConstBytes& raw) : TypedProtoDecoder(raw.data, raw.size) {}
has_max_upload_per_day_bytes()425   bool has_max_upload_per_day_bytes() const { return at<1>().valid(); }
max_upload_per_day_bytes()426   uint64_t max_upload_per_day_bytes() const { return at<1>().as_uint64(); }
427 };
428 
429 class TraceConfig_GuardrailOverrides : public ::protozero::Message {
430  public:
431   using Decoder = TraceConfig_GuardrailOverrides_Decoder;
432   enum : int32_t {
433     kMaxUploadPerDayBytesFieldNumber = 1,
434   };
set_max_upload_per_day_bytes(uint64_t value)435   void set_max_upload_per_day_bytes(uint64_t value) {
436     AppendVarInt(1, value);
437   }
438 };
439 
440 class TraceConfig_StatsdMetadata_Decoder : public ::protozero::TypedProtoDecoder</*MAX_FIELD_ID=*/4, /*HAS_NONPACKED_REPEATED_FIELDS=*/false> {
441  public:
TraceConfig_StatsdMetadata_Decoder(const uint8_t * data,size_t len)442   TraceConfig_StatsdMetadata_Decoder(const uint8_t* data, size_t len) : TypedProtoDecoder(data, len) {}
TraceConfig_StatsdMetadata_Decoder(const std::string & raw)443   explicit TraceConfig_StatsdMetadata_Decoder(const std::string& raw) : TypedProtoDecoder(reinterpret_cast<const uint8_t*>(raw.data()), raw.size()) {}
TraceConfig_StatsdMetadata_Decoder(const::protozero::ConstBytes & raw)444   explicit TraceConfig_StatsdMetadata_Decoder(const ::protozero::ConstBytes& raw) : TypedProtoDecoder(raw.data, raw.size) {}
has_triggering_alert_id()445   bool has_triggering_alert_id() const { return at<1>().valid(); }
triggering_alert_id()446   int64_t triggering_alert_id() const { return at<1>().as_int64(); }
has_triggering_config_uid()447   bool has_triggering_config_uid() const { return at<2>().valid(); }
triggering_config_uid()448   int32_t triggering_config_uid() const { return at<2>().as_int32(); }
has_triggering_config_id()449   bool has_triggering_config_id() const { return at<3>().valid(); }
triggering_config_id()450   int64_t triggering_config_id() const { return at<3>().as_int64(); }
has_triggering_subscription_id()451   bool has_triggering_subscription_id() const { return at<4>().valid(); }
triggering_subscription_id()452   int64_t triggering_subscription_id() const { return at<4>().as_int64(); }
453 };
454 
455 class TraceConfig_StatsdMetadata : public ::protozero::Message {
456  public:
457   using Decoder = TraceConfig_StatsdMetadata_Decoder;
458   enum : int32_t {
459     kTriggeringAlertIdFieldNumber = 1,
460     kTriggeringConfigUidFieldNumber = 2,
461     kTriggeringConfigIdFieldNumber = 3,
462     kTriggeringSubscriptionIdFieldNumber = 4,
463   };
set_triggering_alert_id(int64_t value)464   void set_triggering_alert_id(int64_t value) {
465     AppendVarInt(1, value);
466   }
set_triggering_config_uid(int32_t value)467   void set_triggering_config_uid(int32_t value) {
468     AppendVarInt(2, value);
469   }
set_triggering_config_id(int64_t value)470   void set_triggering_config_id(int64_t value) {
471     AppendVarInt(3, value);
472   }
set_triggering_subscription_id(int64_t value)473   void set_triggering_subscription_id(int64_t value) {
474     AppendVarInt(4, value);
475   }
476 };
477 
478 class TraceConfig_ProducerConfig_Decoder : public ::protozero::TypedProtoDecoder</*MAX_FIELD_ID=*/3, /*HAS_NONPACKED_REPEATED_FIELDS=*/false> {
479  public:
TraceConfig_ProducerConfig_Decoder(const uint8_t * data,size_t len)480   TraceConfig_ProducerConfig_Decoder(const uint8_t* data, size_t len) : TypedProtoDecoder(data, len) {}
TraceConfig_ProducerConfig_Decoder(const std::string & raw)481   explicit TraceConfig_ProducerConfig_Decoder(const std::string& raw) : TypedProtoDecoder(reinterpret_cast<const uint8_t*>(raw.data()), raw.size()) {}
TraceConfig_ProducerConfig_Decoder(const::protozero::ConstBytes & raw)482   explicit TraceConfig_ProducerConfig_Decoder(const ::protozero::ConstBytes& raw) : TypedProtoDecoder(raw.data, raw.size) {}
has_producer_name()483   bool has_producer_name() const { return at<1>().valid(); }
producer_name()484   ::protozero::ConstChars producer_name() const { return at<1>().as_string(); }
has_shm_size_kb()485   bool has_shm_size_kb() const { return at<2>().valid(); }
shm_size_kb()486   uint32_t shm_size_kb() const { return at<2>().as_uint32(); }
has_page_size_kb()487   bool has_page_size_kb() const { return at<3>().valid(); }
page_size_kb()488   uint32_t page_size_kb() const { return at<3>().as_uint32(); }
489 };
490 
491 class TraceConfig_ProducerConfig : public ::protozero::Message {
492  public:
493   using Decoder = TraceConfig_ProducerConfig_Decoder;
494   enum : int32_t {
495     kProducerNameFieldNumber = 1,
496     kShmSizeKbFieldNumber = 2,
497     kPageSizeKbFieldNumber = 3,
498   };
set_producer_name(const std::string & value)499   void set_producer_name(const std::string& value) {
500     AppendBytes(1, value.data(), value.size());
501   }
set_producer_name(const char * data,size_t size)502   void set_producer_name(const char* data, size_t size) {
503     AppendBytes(1, data, size);
504   }
set_shm_size_kb(uint32_t value)505   void set_shm_size_kb(uint32_t value) {
506     AppendVarInt(2, value);
507   }
set_page_size_kb(uint32_t value)508   void set_page_size_kb(uint32_t value) {
509     AppendVarInt(3, value);
510   }
511 };
512 
513 class TraceConfig_BuiltinDataSource_Decoder : public ::protozero::TypedProtoDecoder</*MAX_FIELD_ID=*/6, /*HAS_NONPACKED_REPEATED_FIELDS=*/false> {
514  public:
TraceConfig_BuiltinDataSource_Decoder(const uint8_t * data,size_t len)515   TraceConfig_BuiltinDataSource_Decoder(const uint8_t* data, size_t len) : TypedProtoDecoder(data, len) {}
TraceConfig_BuiltinDataSource_Decoder(const std::string & raw)516   explicit TraceConfig_BuiltinDataSource_Decoder(const std::string& raw) : TypedProtoDecoder(reinterpret_cast<const uint8_t*>(raw.data()), raw.size()) {}
TraceConfig_BuiltinDataSource_Decoder(const::protozero::ConstBytes & raw)517   explicit TraceConfig_BuiltinDataSource_Decoder(const ::protozero::ConstBytes& raw) : TypedProtoDecoder(raw.data, raw.size) {}
has_disable_clock_snapshotting()518   bool has_disable_clock_snapshotting() const { return at<1>().valid(); }
disable_clock_snapshotting()519   bool disable_clock_snapshotting() const { return at<1>().as_bool(); }
has_disable_trace_config()520   bool has_disable_trace_config() const { return at<2>().valid(); }
disable_trace_config()521   bool disable_trace_config() const { return at<2>().as_bool(); }
has_disable_system_info()522   bool has_disable_system_info() const { return at<3>().valid(); }
disable_system_info()523   bool disable_system_info() const { return at<3>().as_bool(); }
has_disable_service_events()524   bool has_disable_service_events() const { return at<4>().valid(); }
disable_service_events()525   bool disable_service_events() const { return at<4>().as_bool(); }
has_primary_trace_clock()526   bool has_primary_trace_clock() const { return at<5>().valid(); }
primary_trace_clock()527   int32_t primary_trace_clock() const { return at<5>().as_int32(); }
has_snapshot_interval_ms()528   bool has_snapshot_interval_ms() const { return at<6>().valid(); }
snapshot_interval_ms()529   uint32_t snapshot_interval_ms() const { return at<6>().as_uint32(); }
530 };
531 
532 class TraceConfig_BuiltinDataSource : public ::protozero::Message {
533  public:
534   using Decoder = TraceConfig_BuiltinDataSource_Decoder;
535   enum : int32_t {
536     kDisableClockSnapshottingFieldNumber = 1,
537     kDisableTraceConfigFieldNumber = 2,
538     kDisableSystemInfoFieldNumber = 3,
539     kDisableServiceEventsFieldNumber = 4,
540     kPrimaryTraceClockFieldNumber = 5,
541     kSnapshotIntervalMsFieldNumber = 6,
542   };
set_disable_clock_snapshotting(bool value)543   void set_disable_clock_snapshotting(bool value) {
544     AppendTinyVarInt(1, value);
545   }
set_disable_trace_config(bool value)546   void set_disable_trace_config(bool value) {
547     AppendTinyVarInt(2, value);
548   }
set_disable_system_info(bool value)549   void set_disable_system_info(bool value) {
550     AppendTinyVarInt(3, value);
551   }
set_disable_service_events(bool value)552   void set_disable_service_events(bool value) {
553     AppendTinyVarInt(4, value);
554   }
set_primary_trace_clock(::perfetto::protos::pbzero::BuiltinClock value)555   void set_primary_trace_clock(::perfetto::protos::pbzero::BuiltinClock value) {
556     AppendTinyVarInt(5, value);
557   }
set_snapshot_interval_ms(uint32_t value)558   void set_snapshot_interval_ms(uint32_t value) {
559     AppendVarInt(6, value);
560   }
561 };
562 
563 class TraceConfig_DataSource_Decoder : public ::protozero::TypedProtoDecoder</*MAX_FIELD_ID=*/3, /*HAS_NONPACKED_REPEATED_FIELDS=*/true> {
564  public:
TraceConfig_DataSource_Decoder(const uint8_t * data,size_t len)565   TraceConfig_DataSource_Decoder(const uint8_t* data, size_t len) : TypedProtoDecoder(data, len) {}
TraceConfig_DataSource_Decoder(const std::string & raw)566   explicit TraceConfig_DataSource_Decoder(const std::string& raw) : TypedProtoDecoder(reinterpret_cast<const uint8_t*>(raw.data()), raw.size()) {}
TraceConfig_DataSource_Decoder(const::protozero::ConstBytes & raw)567   explicit TraceConfig_DataSource_Decoder(const ::protozero::ConstBytes& raw) : TypedProtoDecoder(raw.data, raw.size) {}
has_config()568   bool has_config() const { return at<1>().valid(); }
config()569   ::protozero::ConstBytes config() const { return at<1>().as_bytes(); }
has_producer_name_filter()570   bool has_producer_name_filter() const { return at<2>().valid(); }
producer_name_filter()571   ::protozero::RepeatedFieldIterator<::protozero::ConstChars> producer_name_filter() const { return GetRepeated<::protozero::ConstChars>(2); }
has_producer_name_regex_filter()572   bool has_producer_name_regex_filter() const { return at<3>().valid(); }
producer_name_regex_filter()573   ::protozero::RepeatedFieldIterator<::protozero::ConstChars> producer_name_regex_filter() const { return GetRepeated<::protozero::ConstChars>(3); }
574 };
575 
576 class TraceConfig_DataSource : public ::protozero::Message {
577  public:
578   using Decoder = TraceConfig_DataSource_Decoder;
579   enum : int32_t {
580     kConfigFieldNumber = 1,
581     kProducerNameFilterFieldNumber = 2,
582     kProducerNameRegexFilterFieldNumber = 3,
583   };
set_config()584   template <typename T = DataSourceConfig> T* set_config() {
585     return BeginNestedMessage<T>(1);
586   }
587 
add_producer_name_filter(const std::string & value)588   void add_producer_name_filter(const std::string& value) {
589     AppendBytes(2, value.data(), value.size());
590   }
add_producer_name_filter(const char * data,size_t size)591   void add_producer_name_filter(const char* data, size_t size) {
592     AppendBytes(2, data, size);
593   }
add_producer_name_regex_filter(const std::string & value)594   void add_producer_name_regex_filter(const std::string& value) {
595     AppendBytes(3, value.data(), value.size());
596   }
add_producer_name_regex_filter(const char * data,size_t size)597   void add_producer_name_regex_filter(const char* data, size_t size) {
598     AppendBytes(3, data, size);
599   }
600 };
601 
602 class TraceConfig_BufferConfig_Decoder : public ::protozero::TypedProtoDecoder</*MAX_FIELD_ID=*/4, /*HAS_NONPACKED_REPEATED_FIELDS=*/false> {
603  public:
TraceConfig_BufferConfig_Decoder(const uint8_t * data,size_t len)604   TraceConfig_BufferConfig_Decoder(const uint8_t* data, size_t len) : TypedProtoDecoder(data, len) {}
TraceConfig_BufferConfig_Decoder(const std::string & raw)605   explicit TraceConfig_BufferConfig_Decoder(const std::string& raw) : TypedProtoDecoder(reinterpret_cast<const uint8_t*>(raw.data()), raw.size()) {}
TraceConfig_BufferConfig_Decoder(const::protozero::ConstBytes & raw)606   explicit TraceConfig_BufferConfig_Decoder(const ::protozero::ConstBytes& raw) : TypedProtoDecoder(raw.data, raw.size) {}
has_size_kb()607   bool has_size_kb() const { return at<1>().valid(); }
size_kb()608   uint32_t size_kb() const { return at<1>().as_uint32(); }
has_fill_policy()609   bool has_fill_policy() const { return at<4>().valid(); }
fill_policy()610   int32_t fill_policy() const { return at<4>().as_int32(); }
611 };
612 
613 class TraceConfig_BufferConfig : public ::protozero::Message {
614  public:
615   using Decoder = TraceConfig_BufferConfig_Decoder;
616   enum : int32_t {
617     kSizeKbFieldNumber = 1,
618     kFillPolicyFieldNumber = 4,
619   };
620   using FillPolicy = ::perfetto::protos::pbzero::TraceConfig_BufferConfig_FillPolicy;
621   static const FillPolicy UNSPECIFIED = TraceConfig_BufferConfig_FillPolicy_UNSPECIFIED;
622   static const FillPolicy RING_BUFFER = TraceConfig_BufferConfig_FillPolicy_RING_BUFFER;
623   static const FillPolicy DISCARD = TraceConfig_BufferConfig_FillPolicy_DISCARD;
set_size_kb(uint32_t value)624   void set_size_kb(uint32_t value) {
625     AppendVarInt(1, value);
626   }
set_fill_policy(::perfetto::protos::pbzero::TraceConfig_BufferConfig_FillPolicy value)627   void set_fill_policy(::perfetto::protos::pbzero::TraceConfig_BufferConfig_FillPolicy value) {
628     AppendTinyVarInt(4, value);
629   }
630 };
631 
632 } // Namespace.
633 } // Namespace.
634 } // Namespace.
635 #endif  // Include guard.
636