Coverage Report

Created: 2026-02-14 06:29

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/work/build/gen/protos/perfetto/trace/trace.gen.cc
Line
Count
Source
1
#include "perfetto/protozero/gen_field_helpers.h"
2
#include "perfetto/protozero/message.h"
3
#include "perfetto/protozero/packed_repeated_fields.h"
4
#include "perfetto/protozero/proto_decoder.h"
5
#include "perfetto/protozero/scattered_heap_buffer.h"
6
// DO NOT EDIT. Autogenerated by Perfetto cppgen_plugin
7
#if defined(__GNUC__) || defined(__clang__)
8
#pragma GCC diagnostic push
9
#pragma GCC diagnostic ignored "-Wfloat-equal"
10
#endif
11
#include "protos/perfetto/trace/trace.gen.h"
12
#include "protos/perfetto/trace/trace_packet.gen.h"
13
#include "protos/perfetto/trace/ui_state.gen.h"
14
#include "protos/perfetto/trace/test_event.gen.h"
15
#include "protos/perfetto/trace/track_event/debug_annotation.gen.h"
16
#include "protos/perfetto/trace/trigger.gen.h"
17
#include "protos/perfetto/trace/trace_uuid.gen.h"
18
#include "protos/perfetto/trace/translation/translation_table.gen.h"
19
#include "protos/perfetto/trace/track_event/track_event.gen.h"
20
#include "protos/perfetto/trace/track_event/source_location.gen.h"
21
#include "protos/perfetto/trace/track_event/screenshot.gen.h"
22
#include "protos/perfetto/trace/track_event/chrome_window_handle_event_info.gen.h"
23
#include "protos/perfetto/trace/track_event/chrome_user_event.gen.h"
24
#include "protos/perfetto/trace/track_event/chrome_renderer_scheduler_state.gen.h"
25
#include "protos/perfetto/trace/track_event/chrome_mojo_event_info.gen.h"
26
#include "protos/perfetto/trace/track_event/chrome_message_pump.gen.h"
27
#include "protos/perfetto/trace/track_event/chrome_legacy_ipc.gen.h"
28
#include "protos/perfetto/trace/track_event/chrome_latency_info.gen.h"
29
#include "protos/perfetto/trace/track_event/chrome_keyed_service.gen.h"
30
#include "protos/perfetto/trace/track_event/chrome_histogram_sample.gen.h"
31
#include "protos/perfetto/trace/track_event/chrome_frame_reporter.gen.h"
32
#include "protos/perfetto/trace/track_event/chrome_content_settings_event_info.gen.h"
33
#include "protos/perfetto/trace/track_event/chrome_compositor_scheduler_state.gen.h"
34
#include "protos/perfetto/trace/track_event/chrome_application_state_info.gen.h"
35
#include "protos/perfetto/trace/track_event/chrome_active_processes.gen.h"
36
#include "protos/perfetto/trace/track_event/task_execution.gen.h"
37
#include "protos/perfetto/trace/track_event/log_message.gen.h"
38
#include "protos/perfetto/trace/track_event/track_descriptor.gen.h"
39
#include "protos/perfetto/trace/track_event/counter_descriptor.gen.h"
40
#include "protos/perfetto/trace/track_event/thread_descriptor.gen.h"
41
#include "protos/perfetto/trace/track_event/process_descriptor.gen.h"
42
#include "protos/perfetto/trace/track_event/chrome_thread_descriptor.gen.h"
43
#include "protos/perfetto/trace/track_event/chrome_process_descriptor.gen.h"
44
#include "protos/perfetto/trace/track_event/thread_descriptor.gen.h"
45
#include "protos/perfetto/trace/track_event/range_of_interest.gen.h"
46
#include "protos/perfetto/trace/track_event/process_descriptor.gen.h"
47
#include "protos/perfetto/trace/trace_packet_defaults.gen.h"
48
#include "protos/perfetto/trace/profiling/profile_packet.gen.h"
49
#include "protos/perfetto/trace/profiling/profile_common.gen.h"
50
#include "protos/perfetto/common/perf_events.gen.h"
51
#include "protos/perfetto/trace/chrome/v8.gen.h"
52
#include "protos/perfetto/trace/system_info/cpu_info.gen.h"
53
#include "protos/perfetto/trace/system_info.gen.h"
54
#include "protos/perfetto/trace/sys_stats/sys_stats.gen.h"
55
#include "protos/perfetto/common/sys_stats_counters.gen.h"
56
#include "protos/perfetto/trace/remote_clock_sync.gen.h"
57
#include "protos/perfetto/trace/clock_snapshot.gen.h"
58
#include "protos/perfetto/common/builtin_clock.gen.h"
59
#include "protos/perfetto/trace/ps/process_tree.gen.h"
60
#include "protos/perfetto/trace/ps/process_stats.gen.h"
61
#include "protos/perfetto/trace/profiling/smaps.gen.h"
62
#include "protos/perfetto/trace/profiling/profile_packet.gen.h"
63
#include "protos/perfetto/trace/profiling/profile_common.gen.h"
64
#include "protos/perfetto/trace/profiling/heap_graph.gen.h"
65
#include "protos/perfetto/trace/profiling/deobfuscation.gen.h"
66
#include "protos/perfetto/trace/profiling/deobfuscation.gen.h"
67
#include "protos/perfetto/trace/statsd/statsd_atom.gen.h"
68
#include "protos/perfetto/trace/power/power_rails.gen.h"
69
#include "protos/perfetto/trace/power/battery_counters.gen.h"
70
#include "protos/perfetto/trace/power/android_entity_state_residency.gen.h"
71
#include "protos/perfetto/trace/power/android_energy_estimation_breakdown.gen.h"
72
#include "protos/perfetto/common/android_energy_consumer_descriptor.gen.h"
73
#include "protos/perfetto/trace/perfetto/tracing_service_event.gen.h"
74
#include "protos/perfetto/trace/perfetto/perfetto_metatrace.gen.h"
75
#include "protos/perfetto/trace/memory_graph.gen.h"
76
#include "protos/perfetto/trace/interned_data/interned_data.gen.h"
77
#include "protos/perfetto/trace/gpu/gpu_render_stage_event.gen.h"
78
#include "protos/perfetto/trace/android/network_trace.gen.h"
79
#include "protos/perfetto/trace/android/app_wakelock_data.gen.h"
80
#include "protos/perfetto/trace/gpu/vulkan_api_event.gen.h"
81
#include "protos/perfetto/trace/gpu/vulkan_memory_event.gen.h"
82
#include "protos/perfetto/trace/gpu/gpu_render_stage_event.gen.h"
83
#include "protos/perfetto/trace/gpu/gpu_log.gen.h"
84
#include "protos/perfetto/trace/gpu/gpu_counter_event.gen.h"
85
#include "protos/perfetto/common/gpu_counter_descriptor.gen.h"
86
#include "protos/perfetto/trace/ftrace/ftrace_stats.gen.h"
87
#include "protos/perfetto/trace/ftrace/ftrace_event_bundle.gen.h"
88
#include "protos/perfetto/trace/ftrace/ftrace_event.gen.h"
89
#include "protos/perfetto/trace/ftrace/generic.gen.h"
90
#include "protos/perfetto/trace/ftrace/workqueue.gen.h"
91
#include "protos/perfetto/trace/ftrace/vmscan.gen.h"
92
#include "protos/perfetto/trace/ftrace/virtio_video.gen.h"
93
#include "protos/perfetto/trace/ftrace/virtio_gpu.gen.h"
94
#include "protos/perfetto/trace/ftrace/v4l2.gen.h"
95
#include "protos/perfetto/trace/ftrace/ufs.gen.h"
96
#include "protos/perfetto/trace/ftrace/trusty.gen.h"
97
#include "protos/perfetto/trace/ftrace/thermal_exynos.gen.h"
98
#include "protos/perfetto/trace/ftrace/thermal.gen.h"
99
#include "protos/perfetto/trace/ftrace/tcp.gen.h"
100
#include "protos/perfetto/trace/ftrace/task.gen.h"
101
#include "protos/perfetto/trace/ftrace/systrace.gen.h"
102
#include "protos/perfetto/trace/ftrace/synthetic.gen.h"
103
#include "protos/perfetto/trace/ftrace/sync.gen.h"
104
#include "protos/perfetto/trace/ftrace/sock.gen.h"
105
#include "protos/perfetto/trace/ftrace/skb.gen.h"
106
#include "protos/perfetto/trace/ftrace/signal.gen.h"
107
#include "protos/perfetto/trace/ftrace/sde.gen.h"
108
#include "protos/perfetto/trace/ftrace/scm.gen.h"
109
#include "protos/perfetto/trace/ftrace/sched.gen.h"
110
#include "protos/perfetto/trace/ftrace/samsung.gen.h"
111
#include "protos/perfetto/trace/ftrace/rpm.gen.h"
112
#include "protos/perfetto/trace/ftrace/regulator.gen.h"
113
#include "protos/perfetto/trace/ftrace/raw_syscalls.gen.h"
114
#include "protos/perfetto/trace/ftrace/printk.gen.h"
115
#include "protos/perfetto/trace/ftrace/power.gen.h"
116
#include "protos/perfetto/trace/ftrace/pixel_mm.gen.h"
117
#include "protos/perfetto/trace/ftrace/perf_trace_counters.gen.h"
118
#include "protos/perfetto/trace/ftrace/panel.gen.h"
119
#include "protos/perfetto/trace/ftrace/oom.gen.h"
120
#include "protos/perfetto/trace/ftrace/net.gen.h"
121
#include "protos/perfetto/trace/ftrace/mm_event.gen.h"
122
#include "protos/perfetto/trace/ftrace/mdss.gen.h"
123
#include "protos/perfetto/trace/ftrace/mali.gen.h"
124
#include "protos/perfetto/trace/ftrace/lwis.gen.h"
125
#include "protos/perfetto/trace/ftrace/lowmemorykiller.gen.h"
126
#include "protos/perfetto/trace/ftrace/kvm.gen.h"
127
#include "protos/perfetto/trace/ftrace/kmem.gen.h"
128
#include "protos/perfetto/trace/ftrace/kgsl.gen.h"
129
#include "protos/perfetto/trace/ftrace/irq.gen.h"
130
#include "protos/perfetto/trace/ftrace/ipi.gen.h"
131
#include "protos/perfetto/trace/ftrace/ion.gen.h"
132
#include "protos/perfetto/trace/ftrace/i2c.gen.h"
133
#include "protos/perfetto/trace/ftrace/hyp.gen.h"
134
#include "protos/perfetto/trace/ftrace/gpu_scheduler.gen.h"
135
#include "protos/perfetto/trace/ftrace/gpu_mem.gen.h"
136
#include "protos/perfetto/trace/ftrace/google_irm_trace.gen.h"
137
#include "protos/perfetto/trace/ftrace/google_icc_trace.gen.h"
138
#include "protos/perfetto/trace/ftrace/g2d.gen.h"
139
#include "protos/perfetto/trace/ftrace/ftrace.gen.h"
140
#include "protos/perfetto/trace/ftrace/fs.gen.h"
141
#include "protos/perfetto/trace/ftrace/filemap.gen.h"
142
#include "protos/perfetto/trace/ftrace/fence.gen.h"
143
#include "protos/perfetto/trace/ftrace/fastrpc.gen.h"
144
#include "protos/perfetto/trace/ftrace/f2fs.gen.h"
145
#include "protos/perfetto/trace/ftrace/ext4.gen.h"
146
#include "protos/perfetto/trace/ftrace/drm.gen.h"
147
#include "protos/perfetto/trace/ftrace/dpu.gen.h"
148
#include "protos/perfetto/trace/ftrace/dmabuf_heap.gen.h"
149
#include "protos/perfetto/trace/ftrace/dma_fence.gen.h"
150
#include "protos/perfetto/trace/ftrace/devfreq.gen.h"
151
#include "protos/perfetto/trace/ftrace/dcvsh.gen.h"
152
#include "protos/perfetto/trace/ftrace/cros_ec.gen.h"
153
#include "protos/perfetto/trace/ftrace/cpuhp.gen.h"
154
#include "protos/perfetto/trace/ftrace/cpm_trace.gen.h"
155
#include "protos/perfetto/trace/ftrace/compaction.gen.h"
156
#include "protos/perfetto/trace/ftrace/cma.gen.h"
157
#include "protos/perfetto/trace/ftrace/clk.gen.h"
158
#include "protos/perfetto/trace/ftrace/cgroup.gen.h"
159
#include "protos/perfetto/trace/ftrace/block.gen.h"
160
#include "protos/perfetto/trace/ftrace/binder.gen.h"
161
#include "protos/perfetto/trace/ftrace/bcl_exynos.gen.h"
162
#include "protos/perfetto/trace/ftrace/android_fs.gen.h"
163
#include "protos/perfetto/trace/filesystem/inode_file_map.gen.h"
164
#include "protos/perfetto/trace/etw/etw_event_bundle.gen.h"
165
#include "protos/perfetto/trace/etw/etw_event.gen.h"
166
#include "protos/perfetto/trace/etw/etw.gen.h"
167
#include "protos/perfetto/trace/clock_snapshot.gen.h"
168
#include "protos/perfetto/trace/chrome/v8.gen.h"
169
#include "protos/perfetto/trace/chrome/chrome_trigger.gen.h"
170
#include "protos/perfetto/trace/chrome/chrome_trace_event.gen.h"
171
#include "protos/perfetto/trace/chrome/chrome_metadata.gen.h"
172
#include "protos/perfetto/trace/chrome/chrome_benchmark_metadata.gen.h"
173
#include "protos/perfetto/trace/android/winscope_extensions.gen.h"
174
#include "protos/perfetto/trace/android/surfaceflinger_transactions.gen.h"
175
#include "protos/perfetto/trace/android/graphics/rect.gen.h"
176
#include "protos/perfetto/trace/android/surfaceflinger_common.gen.h"
177
#include "protos/perfetto/trace/android/surfaceflinger_layers.gen.h"
178
#include "protos/perfetto/trace/android/shell_transition.gen.h"
179
#include "protos/perfetto/trace/android/protolog.gen.h"
180
#include "protos/perfetto/common/protolog_common.gen.h"
181
#include "protos/perfetto/trace/android/pixel_modem_events.gen.h"
182
#include "protos/perfetto/trace/android/packages_list.gen.h"
183
#include "protos/perfetto/trace/android/network_trace.gen.h"
184
#include "protos/perfetto/trace/android/kernel_wakelock_data.gen.h"
185
#include "protos/perfetto/trace/android/initial_display_state.gen.h"
186
#include "protos/perfetto/trace/android/graphics_frame_event.gen.h"
187
#include "protos/perfetto/trace/android/gpu_mem_event.gen.h"
188
#include "protos/perfetto/trace/android/frame_timeline_event.gen.h"
189
#include "protos/perfetto/trace/android/camera_event.gen.h"
190
#include "protos/perfetto/trace/android/bluetooth_trace.gen.h"
191
#include "protos/perfetto/trace/android/app_wakelock_data.gen.h"
192
#include "protos/perfetto/trace/android/android_system_property.gen.h"
193
#include "protos/perfetto/trace/android/android_log.gen.h"
194
#include "protos/perfetto/common/android_log_constants.gen.h"
195
#include "protos/perfetto/trace/android/android_game_intervention_list.gen.h"
196
#include "protos/perfetto/trace/extension_descriptor.gen.h"
197
#include "protos/perfetto/common/descriptor.gen.h"
198
#include "protos/perfetto/config/trace_config.gen.h"
199
#include "protos/perfetto/config/data_source_config.gen.h"
200
#include "protos/perfetto/config/chrome/histogram_samples.gen.h"
201
#include "protos/perfetto/config/system_info/system_info.gen.h"
202
#include "protos/perfetto/config/track_event/track_event_config.gen.h"
203
#include "protos/perfetto/config/test_config.gen.h"
204
#include "protos/perfetto/config/sys_stats/sys_stats_config.gen.h"
205
#include "protos/perfetto/config/profiling/perf_event_config.gen.h"
206
#include "protos/perfetto/config/profiling/java_hprof_config.gen.h"
207
#include "protos/perfetto/config/profiling/heapprofd_config.gen.h"
208
#include "protos/perfetto/config/process_stats/process_stats_config.gen.h"
209
#include "protos/perfetto/config/statsd/statsd_tracing_config.gen.h"
210
#include "protos/perfetto/config/statsd/atom_ids.gen.h"
211
#include "protos/perfetto/config/power/android_power_config.gen.h"
212
#include "protos/perfetto/config/interceptor_config.gen.h"
213
#include "protos/perfetto/config/interceptors/console_config.gen.h"
214
#include "protos/perfetto/config/inode_file/inode_file_config.gen.h"
215
#include "protos/perfetto/config/gpu/gpu_renderstages_config.gen.h"
216
#include "protos/perfetto/config/gpu/vulkan_memory_config.gen.h"
217
#include "protos/perfetto/config/gpu/gpu_counter_config.gen.h"
218
#include "protos/perfetto/config/ftrace/ftrace_config.gen.h"
219
#include "protos/perfetto/config/chrome/system_metrics.gen.h"
220
#include "protos/perfetto/config/etw/etw_config.gen.h"
221
#include "protos/perfetto/config/chrome/v8_config.gen.h"
222
#include "protos/perfetto/config/chrome/chrome_config.gen.h"
223
#include "protos/perfetto/config/android/windowmanager_config.gen.h"
224
#include "protos/perfetto/config/android/surfaceflinger_transactions_config.gen.h"
225
#include "protos/perfetto/config/android/surfaceflinger_layers_config.gen.h"
226
#include "protos/perfetto/config/android/protolog_config.gen.h"
227
#include "protos/perfetto/config/android/pixel_modem_config.gen.h"
228
#include "protos/perfetto/config/android/packages_list_config.gen.h"
229
#include "protos/perfetto/config/android/network_trace_config.gen.h"
230
#include "protos/perfetto/config/android/kernel_wakelocks_config.gen.h"
231
#include "protos/perfetto/config/android/app_wakelock_config.gen.h"
232
#include "protos/perfetto/config/android/android_sdk_sysprop_guard_config.gen.h"
233
#include "protos/perfetto/config/android/android_system_property_config.gen.h"
234
#include "protos/perfetto/config/android/android_polled_state_config.gen.h"
235
#include "protos/perfetto/config/android/android_log_config.gen.h"
236
#include "protos/perfetto/config/android/android_input_event_config.gen.h"
237
#include "protos/perfetto/config/android/android_game_intervention_list_config.gen.h"
238
#include "protos/perfetto/common/trace_stats.gen.h"
239
240
namespace perfetto {
241
namespace protos {
242
namespace gen {
243
244
0
Trace::Trace() = default;
245
0
Trace::~Trace() = default;
246
0
Trace::Trace(const Trace&) = default;
247
0
Trace& Trace::operator=(const Trace&) = default;
248
0
Trace::Trace(Trace&&) noexcept = default;
249
0
Trace& Trace::operator=(Trace&&) = default;
250
251
0
bool Trace::operator==(const Trace& other) const {
252
0
  return ::protozero::internal::gen_helpers::EqualsField(unknown_fields_, other.unknown_fields_)
253
0
   && ::protozero::internal::gen_helpers::EqualsField(packet_, other.packet_);
254
0
}
255
256
0
int Trace::packet_size() const { return static_cast<int>(packet_.size()); }
257
0
void Trace::clear_packet() { packet_.clear(); }
258
0
TracePacket* Trace::add_packet() { packet_.emplace_back(); return &packet_.back(); }
259
0
bool Trace::ParseFromArray(const void* raw, size_t size) {
260
0
  packet_.clear();
261
0
  unknown_fields_.clear();
262
0
  bool packed_error = false;
263
264
0
  ::protozero::ProtoDecoder dec(raw, size);
265
0
  for (auto field = dec.ReadField(); field.valid(); field = dec.ReadField()) {
266
0
    if (field.id() < _has_field_.size()) {
267
0
      _has_field_.set(field.id());
268
0
    }
269
0
    switch (field.id()) {
270
0
      case 1 /* packet */:
271
0
        packet_.emplace_back();
272
0
        packet_.back().ParseFromArray(field.data(), field.size());
273
0
        break;
274
0
      default:
275
0
        field.SerializeAndAppendTo(&unknown_fields_);
276
0
        break;
277
0
    }
278
0
  }
279
0
  return !packed_error && !dec.bytes_left();
280
0
}
281
282
0
std::string Trace::SerializeAsString() const {
283
0
  ::protozero::internal::gen_helpers::MessageSerializer msg;
284
0
  Serialize(msg.get());
285
0
  return msg.SerializeAsString();
286
0
}
287
288
0
std::vector<uint8_t> Trace::SerializeAsArray() const {
289
0
  ::protozero::internal::gen_helpers::MessageSerializer msg;
290
0
  Serialize(msg.get());
291
0
  return msg.SerializeAsArray();
292
0
}
293
294
0
void Trace::Serialize(::protozero::Message* msg) const {
295
  // Field 1: packet
296
0
  for (auto& it : packet_) {
297
0
    it.Serialize(msg->BeginNestedMessage<::protozero::Message>(1));
298
0
  }
299
300
0
  protozero::internal::gen_helpers::SerializeUnknownFields(unknown_fields_, msg);
301
0
}
302
303
}  // namespace perfetto
304
}  // namespace protos
305
}  // namespace gen
306
#if defined(__GNUC__) || defined(__clang__)
307
#pragma GCC diagnostic pop
308
#endif