Define translation table protos
Starting with Chrome histogram and user event hashes.
Bug: 225826610
Change-Id: I664150c7440b0b59541d2fbdc9abd50a498b3653
diff --git a/Android.bp b/Android.bp
index 72fee73..391cbec 100644
--- a/Android.bp
+++ b/Android.bp
@@ -71,6 +71,7 @@
":perfetto_protos_perfetto_trace_system_info_zero_gen",
":perfetto_protos_perfetto_trace_track_event_cpp_gen",
":perfetto_protos_perfetto_trace_track_event_zero_gen",
+ ":perfetto_protos_perfetto_trace_translation_zero_gen",
":perfetto_src_base_base",
":perfetto_src_base_unix_socket",
":perfetto_src_ipc_client",
@@ -149,6 +150,7 @@
"perfetto_protos_perfetto_trace_system_info_zero_gen_headers",
"perfetto_protos_perfetto_trace_track_event_cpp_gen_headers",
"perfetto_protos_perfetto_trace_track_event_zero_gen_headers",
+ "perfetto_protos_perfetto_trace_translation_zero_gen_headers",
"perfetto_src_base_version_gen_h",
],
defaults: [
@@ -323,6 +325,7 @@
":perfetto_protos_perfetto_trace_system_info_zero_gen",
":perfetto_protos_perfetto_trace_track_event_cpp_gen",
":perfetto_protos_perfetto_trace_track_event_zero_gen",
+ ":perfetto_protos_perfetto_trace_translation_zero_gen",
":perfetto_src_base_base",
":perfetto_src_base_unix_socket",
":perfetto_src_ipc_client",
@@ -410,6 +413,7 @@
"perfetto_protos_perfetto_trace_system_info_zero_gen_headers",
"perfetto_protos_perfetto_trace_track_event_cpp_gen_headers",
"perfetto_protos_perfetto_trace_track_event_zero_gen_headers",
+ "perfetto_protos_perfetto_trace_translation_zero_gen_headers",
"perfetto_src_base_version_gen_h",
],
defaults: [
@@ -510,6 +514,7 @@
":perfetto_protos_perfetto_trace_system_info_zero_gen",
":perfetto_protos_perfetto_trace_track_event_cpp_gen",
":perfetto_protos_perfetto_trace_track_event_zero_gen",
+ ":perfetto_protos_perfetto_trace_translation_zero_gen",
":perfetto_src_android_internal_headers",
":perfetto_src_android_internal_lazy_library_loader",
":perfetto_src_android_stats_android_stats",
@@ -601,6 +606,7 @@
"perfetto_protos_perfetto_trace_system_info_zero_gen_headers",
"perfetto_protos_perfetto_trace_track_event_cpp_gen_headers",
"perfetto_protos_perfetto_trace_track_event_zero_gen_headers",
+ "perfetto_protos_perfetto_trace_translation_zero_gen_headers",
"perfetto_src_base_version_gen_h",
],
defaults: [
@@ -715,6 +721,7 @@
":perfetto_protos_perfetto_trace_system_info_zero_gen",
":perfetto_protos_perfetto_trace_track_event_cpp_gen",
":perfetto_protos_perfetto_trace_track_event_zero_gen",
+ ":perfetto_protos_perfetto_trace_translation_zero_gen",
":perfetto_src_android_internal_headers",
":perfetto_src_android_internal_lazy_library_loader",
":perfetto_src_android_stats_android_stats",
@@ -794,6 +801,7 @@
"perfetto_protos_perfetto_trace_system_info_zero_gen_headers",
"perfetto_protos_perfetto_trace_track_event_cpp_gen_headers",
"perfetto_protos_perfetto_trace_track_event_zero_gen_headers",
+ "perfetto_protos_perfetto_trace_translation_zero_gen_headers",
"perfetto_src_base_version_gen_h",
],
export_generated_headers: [
@@ -840,6 +848,7 @@
"perfetto_protos_perfetto_trace_system_info_zero_gen_headers",
"perfetto_protos_perfetto_trace_track_event_cpp_gen_headers",
"perfetto_protos_perfetto_trace_track_event_zero_gen_headers",
+ "perfetto_protos_perfetto_trace_translation_zero_gen_headers",
"perfetto_src_base_version_gen_h",
],
defaults: [
@@ -914,6 +923,7 @@
":perfetto_protos_perfetto_trace_system_info_zero_gen",
":perfetto_protos_perfetto_trace_track_event_cpp_gen",
":perfetto_protos_perfetto_trace_track_event_zero_gen",
+ ":perfetto_protos_perfetto_trace_translation_zero_gen",
":perfetto_src_android_internal_headers",
":perfetto_src_android_internal_lazy_library_loader",
":perfetto_src_android_stats_android_stats",
@@ -982,6 +992,7 @@
"perfetto_protos_perfetto_trace_system_info_zero_gen_headers",
"perfetto_protos_perfetto_trace_track_event_cpp_gen_headers",
"perfetto_protos_perfetto_trace_track_event_zero_gen_headers",
+ "perfetto_protos_perfetto_trace_translation_zero_gen_headers",
"perfetto_src_base_version_gen_h",
"perfetto_src_perfetto_cmd_gen_cc_config_descriptor",
"perfetto_src_perfetto_cmd_protos_cpp_gen_headers",
@@ -1068,6 +1079,8 @@
":perfetto_protos_perfetto_trace_system_info_zero_gen",
":perfetto_protos_perfetto_trace_track_event_cpp_gen",
":perfetto_protos_perfetto_trace_track_event_zero_gen",
+ ":perfetto_protos_perfetto_trace_translation_cpp_gen",
+ ":perfetto_protos_perfetto_trace_translation_zero_gen",
":perfetto_src_android_internal_headers",
":perfetto_src_android_internal_lazy_library_loader",
":perfetto_src_android_stats_android_stats",
@@ -1183,6 +1196,8 @@
"perfetto_protos_perfetto_trace_system_info_zero_gen_headers",
"perfetto_protos_perfetto_trace_track_event_cpp_gen_headers",
"perfetto_protos_perfetto_trace_track_event_zero_gen_headers",
+ "perfetto_protos_perfetto_trace_translation_cpp_gen_headers",
+ "perfetto_protos_perfetto_trace_translation_zero_gen_headers",
"perfetto_src_base_version_gen_h",
],
export_generated_headers: [
@@ -1243,6 +1258,8 @@
"perfetto_protos_perfetto_trace_system_info_zero_gen_headers",
"perfetto_protos_perfetto_trace_track_event_cpp_gen_headers",
"perfetto_protos_perfetto_trace_track_event_zero_gen_headers",
+ "perfetto_protos_perfetto_trace_translation_cpp_gen_headers",
+ "perfetto_protos_perfetto_trace_translation_zero_gen_headers",
"perfetto_src_base_version_gen_h",
],
defaults: [
@@ -1326,6 +1343,8 @@
":perfetto_protos_perfetto_trace_system_info_zero_gen",
":perfetto_protos_perfetto_trace_track_event_cpp_gen",
":perfetto_protos_perfetto_trace_track_event_zero_gen",
+ ":perfetto_protos_perfetto_trace_translation_cpp_gen",
+ ":perfetto_protos_perfetto_trace_translation_zero_gen",
":perfetto_src_android_internal_headers",
":perfetto_src_android_internal_lazy_library_loader",
":perfetto_src_android_stats_android_stats",
@@ -1426,6 +1445,8 @@
"perfetto_protos_perfetto_trace_system_info_zero_gen_headers",
"perfetto_protos_perfetto_trace_track_event_cpp_gen_headers",
"perfetto_protos_perfetto_trace_track_event_zero_gen_headers",
+ "perfetto_protos_perfetto_trace_translation_cpp_gen_headers",
+ "perfetto_protos_perfetto_trace_translation_zero_gen_headers",
"perfetto_src_base_version_gen_h",
],
export_generated_headers: [
@@ -1486,6 +1507,8 @@
"perfetto_protos_perfetto_trace_system_info_zero_gen_headers",
"perfetto_protos_perfetto_trace_track_event_cpp_gen_headers",
"perfetto_protos_perfetto_trace_track_event_zero_gen_headers",
+ "perfetto_protos_perfetto_trace_translation_cpp_gen_headers",
+ "perfetto_protos_perfetto_trace_translation_zero_gen_headers",
"perfetto_src_base_version_gen_h",
],
defaults: [
@@ -1728,6 +1751,8 @@
":perfetto_protos_perfetto_trace_system_info_zero_gen",
":perfetto_protos_perfetto_trace_track_event_cpp_gen",
":perfetto_protos_perfetto_trace_track_event_zero_gen",
+ ":perfetto_protos_perfetto_trace_translation_cpp_gen",
+ ":perfetto_protos_perfetto_trace_translation_zero_gen",
":perfetto_src_android_internal_headers",
":perfetto_src_android_internal_lazy_library_loader",
":perfetto_src_android_stats_android_stats",
@@ -1894,6 +1919,8 @@
"perfetto_protos_perfetto_trace_system_info_zero_gen_headers",
"perfetto_protos_perfetto_trace_track_event_cpp_gen_headers",
"perfetto_protos_perfetto_trace_track_event_zero_gen_headers",
+ "perfetto_protos_perfetto_trace_translation_cpp_gen_headers",
+ "perfetto_protos_perfetto_trace_translation_zero_gen_headers",
"perfetto_src_base_version_gen_h",
"perfetto_src_trace_processor_importers_gen_cc_chrome_track_event_descriptor",
"perfetto_src_trace_processor_importers_gen_cc_config_descriptor",
@@ -4237,6 +4264,7 @@
"protos/perfetto/trace/track_event/thread_descriptor.proto",
"protos/perfetto/trace/track_event/track_descriptor.proto",
"protos/perfetto/trace/track_event/track_event.proto",
+ "protos/perfetto/trace/translation/translation_table.proto",
"protos/perfetto/trace/trigger.proto",
"protos/perfetto/trace/ui_state.proto",
],
@@ -6877,6 +6905,112 @@
],
}
+// GN: //protos/perfetto/trace/translation:cpp
+genrule {
+ name: "perfetto_protos_perfetto_trace_translation_cpp_gen",
+ srcs: [
+ "protos/perfetto/trace/translation/translation_table.proto",
+ ],
+ tools: [
+ "aprotoc",
+ "perfetto_src_protozero_protoc_plugin_cppgen_plugin",
+ ],
+ cmd: "mkdir -p $(genDir)/external/perfetto/ && $(location aprotoc) --proto_path=external/perfetto --plugin=protoc-gen-plugin=$(location perfetto_src_protozero_protoc_plugin_cppgen_plugin) --plugin_out=wrapper_namespace=gen:$(genDir)/external/perfetto/ $(in)",
+ out: [
+ "external/perfetto/protos/perfetto/trace/translation/translation_table.gen.cc",
+ ],
+}
+
+// GN: //protos/perfetto/trace/translation:cpp
+genrule {
+ name: "perfetto_protos_perfetto_trace_translation_cpp_gen_headers",
+ srcs: [
+ "protos/perfetto/trace/translation/translation_table.proto",
+ ],
+ tools: [
+ "aprotoc",
+ "perfetto_src_protozero_protoc_plugin_cppgen_plugin",
+ ],
+ cmd: "mkdir -p $(genDir)/external/perfetto/ && $(location aprotoc) --proto_path=external/perfetto --plugin=protoc-gen-plugin=$(location perfetto_src_protozero_protoc_plugin_cppgen_plugin) --plugin_out=wrapper_namespace=gen:$(genDir)/external/perfetto/ $(in)",
+ out: [
+ "external/perfetto/protos/perfetto/trace/translation/translation_table.gen.h",
+ ],
+ export_include_dirs: [
+ ".",
+ "protos",
+ ],
+}
+
+// GN: //protos/perfetto/trace/translation:lite
+genrule {
+ name: "perfetto_protos_perfetto_trace_translation_lite_gen",
+ srcs: [
+ "protos/perfetto/trace/translation/translation_table.proto",
+ ],
+ tools: [
+ "aprotoc",
+ ],
+ cmd: "mkdir -p $(genDir)/external/perfetto/ && $(location aprotoc) --proto_path=external/perfetto --cpp_out=lite=true:$(genDir)/external/perfetto/ $(in)",
+ out: [
+ "external/perfetto/protos/perfetto/trace/translation/translation_table.pb.cc",
+ ],
+}
+
+// GN: //protos/perfetto/trace/translation:lite
+genrule {
+ name: "perfetto_protos_perfetto_trace_translation_lite_gen_headers",
+ srcs: [
+ "protos/perfetto/trace/translation/translation_table.proto",
+ ],
+ tools: [
+ "aprotoc",
+ ],
+ cmd: "mkdir -p $(genDir)/external/perfetto/ && $(location aprotoc) --proto_path=external/perfetto --cpp_out=lite=true:$(genDir)/external/perfetto/ $(in)",
+ out: [
+ "external/perfetto/protos/perfetto/trace/translation/translation_table.pb.h",
+ ],
+ export_include_dirs: [
+ ".",
+ "protos",
+ ],
+}
+
+// GN: //protos/perfetto/trace/translation:zero
+genrule {
+ name: "perfetto_protos_perfetto_trace_translation_zero_gen",
+ srcs: [
+ "protos/perfetto/trace/translation/translation_table.proto",
+ ],
+ tools: [
+ "aprotoc",
+ "protozero_plugin",
+ ],
+ cmd: "mkdir -p $(genDir)/external/perfetto/ && $(location aprotoc) --proto_path=external/perfetto --plugin=protoc-gen-plugin=$(location protozero_plugin) --plugin_out=wrapper_namespace=pbzero:$(genDir)/external/perfetto/ $(in)",
+ out: [
+ "external/perfetto/protos/perfetto/trace/translation/translation_table.pbzero.cc",
+ ],
+}
+
+// GN: //protos/perfetto/trace/translation:zero
+genrule {
+ name: "perfetto_protos_perfetto_trace_translation_zero_gen_headers",
+ srcs: [
+ "protos/perfetto/trace/translation/translation_table.proto",
+ ],
+ tools: [
+ "aprotoc",
+ "protozero_plugin",
+ ],
+ cmd: "mkdir -p $(genDir)/external/perfetto/ && $(location aprotoc) --proto_path=external/perfetto --plugin=protoc-gen-plugin=$(location protozero_plugin) --plugin_out=wrapper_namespace=pbzero:$(genDir)/external/perfetto/ $(in)",
+ out: [
+ "external/perfetto/protos/perfetto/trace/translation/translation_table.pbzero.h",
+ ],
+ export_include_dirs: [
+ ".",
+ "protos",
+ ],
+}
+
// GN: //protos/third_party/chromium:descriptor
genrule {
name: "perfetto_protos_third_party_chromium_descriptor",
@@ -9284,6 +9418,7 @@
":perfetto_protos_perfetto_trace_sys_stats_lite_gen",
":perfetto_protos_perfetto_trace_system_info_lite_gen",
":perfetto_protos_perfetto_trace_track_event_lite_gen",
+ ":perfetto_protos_perfetto_trace_translation_lite_gen",
],
shared_libs: [
"libprotobuf-cpp-lite",
@@ -9317,6 +9452,7 @@
"perfetto_protos_perfetto_trace_sys_stats_lite_gen_headers",
"perfetto_protos_perfetto_trace_system_info_lite_gen_headers",
"perfetto_protos_perfetto_trace_track_event_lite_gen_headers",
+ "perfetto_protos_perfetto_trace_translation_lite_gen_headers",
],
export_generated_headers: [
"perfetto_protos_perfetto_common_lite_gen_headers",
@@ -9346,6 +9482,7 @@
"perfetto_protos_perfetto_trace_sys_stats_lite_gen_headers",
"perfetto_protos_perfetto_trace_system_info_lite_gen_headers",
"perfetto_protos_perfetto_trace_track_event_lite_gen_headers",
+ "perfetto_protos_perfetto_trace_translation_lite_gen_headers",
],
defaults: [
"perfetto_defaults",
@@ -9471,6 +9608,9 @@
":perfetto_protos_perfetto_trace_track_event_cpp_gen",
":perfetto_protos_perfetto_trace_track_event_lite_gen",
":perfetto_protos_perfetto_trace_track_event_zero_gen",
+ ":perfetto_protos_perfetto_trace_translation_cpp_gen",
+ ":perfetto_protos_perfetto_trace_translation_lite_gen",
+ ":perfetto_protos_perfetto_trace_translation_zero_gen",
":perfetto_src_android_internal_headers",
":perfetto_src_android_internal_lazy_library_loader",
":perfetto_src_android_stats_android_stats",
@@ -9722,6 +9862,9 @@
"perfetto_protos_perfetto_trace_track_event_cpp_gen_headers",
"perfetto_protos_perfetto_trace_track_event_lite_gen_headers",
"perfetto_protos_perfetto_trace_track_event_zero_gen_headers",
+ "perfetto_protos_perfetto_trace_translation_cpp_gen_headers",
+ "perfetto_protos_perfetto_trace_translation_lite_gen_headers",
+ "perfetto_protos_perfetto_trace_translation_zero_gen_headers",
"perfetto_src_base_version_gen_h",
"perfetto_src_ipc_test_messages_cpp_gen_headers",
"perfetto_src_ipc_test_messages_ipc_gen_headers",
@@ -9829,6 +9972,7 @@
":perfetto_protos_perfetto_trace_sys_stats_zero_gen",
":perfetto_protos_perfetto_trace_system_info_zero_gen",
":perfetto_protos_perfetto_trace_track_event_zero_gen",
+ ":perfetto_protos_perfetto_trace_translation_zero_gen",
":perfetto_src_base_base",
":perfetto_src_base_http_http",
":perfetto_src_base_unix_socket",
@@ -9895,6 +10039,7 @@
"perfetto_protos_perfetto_trace_sys_stats_zero_gen_headers",
"perfetto_protos_perfetto_trace_system_info_zero_gen_headers",
"perfetto_protos_perfetto_trace_track_event_zero_gen_headers",
+ "perfetto_protos_perfetto_trace_translation_zero_gen_headers",
"perfetto_src_base_version_gen_h",
"perfetto_src_trace_processor_importers_gen_cc_chrome_track_event_descriptor",
"perfetto_src_trace_processor_importers_gen_cc_config_descriptor",
@@ -9984,6 +10129,7 @@
":perfetto_protos_perfetto_trace_sys_stats_zero_gen",
":perfetto_protos_perfetto_trace_system_info_zero_gen",
":perfetto_protos_perfetto_trace_track_event_zero_gen",
+ ":perfetto_protos_perfetto_trace_translation_zero_gen",
":perfetto_protos_third_party_pprof_zero_gen",
":perfetto_src_base_base",
":perfetto_src_profiling_deobfuscator",
@@ -10052,6 +10198,7 @@
"perfetto_protos_perfetto_trace_sys_stats_zero_gen_headers",
"perfetto_protos_perfetto_trace_system_info_zero_gen_headers",
"perfetto_protos_perfetto_trace_track_event_zero_gen_headers",
+ "perfetto_protos_perfetto_trace_translation_zero_gen_headers",
"perfetto_protos_third_party_pprof_zero_gen_headers",
"perfetto_src_base_version_gen_h",
"perfetto_src_trace_processor_importers_gen_cc_chrome_track_event_descriptor",
@@ -10148,6 +10295,7 @@
":perfetto_protos_perfetto_trace_system_info_zero_gen",
":perfetto_protos_perfetto_trace_track_event_cpp_gen",
":perfetto_protos_perfetto_trace_track_event_zero_gen",
+ ":perfetto_protos_perfetto_trace_translation_zero_gen",
":perfetto_src_android_internal_headers",
":perfetto_src_android_internal_lazy_library_loader",
":perfetto_src_android_stats_android_stats",
@@ -10237,6 +10385,7 @@
"perfetto_protos_perfetto_trace_system_info_zero_gen_headers",
"perfetto_protos_perfetto_trace_track_event_cpp_gen_headers",
"perfetto_protos_perfetto_trace_track_event_zero_gen_headers",
+ "perfetto_protos_perfetto_trace_translation_zero_gen_headers",
"perfetto_src_base_version_gen_h",
],
defaults: [
@@ -10330,6 +10479,7 @@
":perfetto_protos_perfetto_trace_system_info_zero_gen",
":perfetto_protos_perfetto_trace_track_event_cpp_gen",
":perfetto_protos_perfetto_trace_track_event_zero_gen",
+ ":perfetto_protos_perfetto_trace_translation_zero_gen",
":perfetto_src_android_internal_headers",
":perfetto_src_android_internal_lazy_library_loader",
":perfetto_src_android_stats_android_stats",
@@ -10396,6 +10546,7 @@
"perfetto_protos_perfetto_trace_system_info_zero_gen_headers",
"perfetto_protos_perfetto_trace_track_event_cpp_gen_headers",
"perfetto_protos_perfetto_trace_track_event_zero_gen_headers",
+ "perfetto_protos_perfetto_trace_translation_zero_gen_headers",
"perfetto_src_base_version_gen_h",
"perfetto_src_perfetto_cmd_protos_cpp_gen_headers",
],
diff --git a/BUILD b/BUILD
index 02e2ccf..dcdc2fc 100644
--- a/BUILD
+++ b/BUILD
@@ -169,6 +169,7 @@
":protos_perfetto_trace_system_info_zero",
":protos_perfetto_trace_track_event_cpp",
":protos_perfetto_trace_track_event_zero",
+ ":protos_perfetto_trace_translation_zero",
],
)
@@ -306,6 +307,7 @@
":protos_perfetto_trace_system_info_zero",
":protos_perfetto_trace_track_event_cpp",
":protos_perfetto_trace_track_event_zero",
+ ":protos_perfetto_trace_translation_zero",
":protozero",
":src_base_base",
],
@@ -2042,6 +2044,7 @@
":protos_perfetto_trace_sys_stats_protos",
":protos_perfetto_trace_system_info_protos",
":protos_perfetto_trace_track_event_protos",
+ ":protos_perfetto_trace_translation_protos",
],
)
@@ -3063,6 +3066,7 @@
":protos_perfetto_trace_sys_stats_protos",
":protos_perfetto_trace_system_info_protos",
":protos_perfetto_trace_track_event_protos",
+ ":protos_perfetto_trace_translation_protos",
],
exports = [
":protos_perfetto_trace_track_event_protos",
@@ -3100,6 +3104,7 @@
":protos_perfetto_trace_sys_stats_zero",
":protos_perfetto_trace_system_info_zero",
":protos_perfetto_trace_track_event_zero",
+ ":protos_perfetto_trace_translation_zero",
],
)
@@ -3340,6 +3345,25 @@
],
)
+# GN target: //protos/perfetto/trace/translation:source_set
+perfetto_proto_library(
+ name = "protos_perfetto_trace_translation_protos",
+ srcs = [
+ "protos/perfetto/trace/translation/translation_table.proto",
+ ],
+ visibility = [
+ PERFETTO_CONFIG.proto_library_visibility,
+ ],
+)
+
+# GN target: //protos/perfetto/trace/translation:zero
+perfetto_cc_protozero_library(
+ name = "protos_perfetto_trace_translation_zero",
+ deps = [
+ ":protos_perfetto_trace_translation_protos",
+ ],
+)
+
# GN target: //protos/third_party/chromium:descriptor
perfetto_proto_descriptor(
name = "protos_third_party_chromium_descriptor",
@@ -3491,6 +3515,7 @@
":protos_perfetto_trace_system_info_zero",
":protos_perfetto_trace_track_event_cpp",
":protos_perfetto_trace_track_event_zero",
+ ":protos_perfetto_trace_translation_zero",
":protozero",
":src_base_base",
],
@@ -3570,6 +3595,7 @@
":protos_perfetto_trace_system_info_zero",
":protos_perfetto_trace_track_event_cpp",
":protos_perfetto_trace_track_event_zero",
+ ":protos_perfetto_trace_translation_zero",
":protozero",
":src_base_base",
":src_perfetto_cmd_gen_cc_config_descriptor",
@@ -3646,6 +3672,7 @@
":protos_perfetto_trace_sys_stats_zero",
":protos_perfetto_trace_system_info_zero",
":protos_perfetto_trace_track_event_zero",
+ ":protos_perfetto_trace_translation_zero",
":protozero",
":src_base_base",
":src_trace_processor_containers_containers",
@@ -3740,6 +3767,7 @@
":protos_perfetto_trace_sys_stats_zero",
":protos_perfetto_trace_system_info_zero",
":protos_perfetto_trace_track_event_zero",
+ ":protos_perfetto_trace_translation_zero",
":protozero",
":src_base_base",
":src_base_http_http",
@@ -3839,6 +3867,7 @@
":protos_perfetto_trace_sys_stats_zero",
":protos_perfetto_trace_system_info_zero",
":protos_perfetto_trace_track_event_zero",
+ ":protos_perfetto_trace_translation_zero",
":protos_third_party_pprof_zero",
":protozero",
":src_trace_processor_containers_containers",
@@ -3923,6 +3952,7 @@
":protos_perfetto_trace_sys_stats_zero",
":protos_perfetto_trace_system_info_zero",
":protos_perfetto_trace_track_event_zero",
+ ":protos_perfetto_trace_translation_zero",
":protos_third_party_pprof_zero",
":protozero",
":src_base_base",
diff --git a/protos/perfetto/trace/BUILD.gn b/protos/perfetto/trace/BUILD.gn
index f0d0462..2a9032f 100644
--- a/protos/perfetto/trace/BUILD.gn
+++ b/protos/perfetto/trace/BUILD.gn
@@ -103,6 +103,7 @@
"sys_stats:@TYPE@",
"system_info:@TYPE@",
"track_event:@TYPE@",
+ "translation:@TYPE@",
]
sources = proto_sources_non_minimal
public_deps = [ "track_event:@TYPE@" ]
diff --git a/protos/perfetto/trace/perfetto_trace.proto b/protos/perfetto/trace/perfetto_trace.proto
index ea46bd2..c38e4dc 100644
--- a/protos/perfetto/trace/perfetto_trace.proto
+++ b/protos/perfetto/trace/perfetto_trace.proto
@@ -9801,6 +9801,29 @@
// End of protos/perfetto/trace/track_event/track_descriptor.proto
+// Begin of protos/perfetto/trace/translation/translation_table.proto
+
+// Translation rules for the trace processor.
+// See the comments for each rule type for specific meaning.
+message TranslationTable {
+ oneof table {
+ ChromeHistorgramTranslationTable chrome_histogram = 1;
+ ChromeUserEventTranslationTable chrome_user_event = 2;
+ }
+}
+
+// Chrome histogram sample hash -> name translation rules.
+message ChromeHistorgramTranslationTable {
+ map<uint64, string> hash_to_name = 1;
+}
+
+// Chrome user event action hash -> name translation rules.
+message ChromeUserEventTranslationTable {
+ map<uint64, string> action_hash_to_name = 1;
+}
+
+// End of protos/perfetto/trace/translation/translation_table.proto
+
// Begin of protos/perfetto/trace/trigger.proto
// When a TracingSession receives a trigger it records the boot time nanoseconds
@@ -9879,7 +9902,7 @@
// See the [Buffers and Dataflow](/docs/concepts/buffers.md) doc for details.
//
// Next reserved id: 14 (up to 15).
-// Next id: 82.
+// Next id: 83.
message TracePacket {
// The timestamp of the TracePacket.
// By default this timestamps refers to the trace clock (CLOCK_BOOTTIME on
@@ -9943,6 +9966,7 @@
UiState ui_state = 78;
AndroidCameraFrameEvent android_camera_frame_event = 80;
AndroidCameraSessionStats android_camera_session_stats = 81;
+ TranslationTable translation_table = 82;
// Only used in profile packets.
ProfiledFrameSymbols profiled_frame_symbols = 55;
diff --git a/protos/perfetto/trace/trace_packet.proto b/protos/perfetto/trace/trace_packet.proto
index c90256a..b08ec4e 100644
--- a/protos/perfetto/trace/trace_packet.proto
+++ b/protos/perfetto/trace/trace_packet.proto
@@ -60,6 +60,7 @@
import "protos/perfetto/trace/track_event/thread_descriptor.proto";
import "protos/perfetto/trace/track_event/track_descriptor.proto";
import "protos/perfetto/trace/track_event/track_event.proto";
+import "protos/perfetto/trace/translation/translation_table.proto";
import "protos/perfetto/trace/trigger.proto";
import "protos/perfetto/trace/test_event.proto";
import "protos/perfetto/trace/ui_state.proto";
@@ -86,7 +87,7 @@
// See the [Buffers and Dataflow](/docs/concepts/buffers.md) doc for details.
//
// Next reserved id: 14 (up to 15).
-// Next id: 82.
+// Next id: 83.
message TracePacket {
// The timestamp of the TracePacket.
// By default this timestamps refers to the trace clock (CLOCK_BOOTTIME on
@@ -150,6 +151,7 @@
UiState ui_state = 78;
AndroidCameraFrameEvent android_camera_frame_event = 80;
AndroidCameraSessionStats android_camera_session_stats = 81;
+ TranslationTable translation_table = 82;
// Only used in profile packets.
ProfiledFrameSymbols profiled_frame_symbols = 55;
diff --git a/protos/perfetto/trace/translation/BUILD.gn b/protos/perfetto/trace/translation/BUILD.gn
new file mode 100644
index 0000000..4e344ba
--- /dev/null
+++ b/protos/perfetto/trace/translation/BUILD.gn
@@ -0,0 +1,19 @@
+# Copyright (C) 2022 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import("../../../../gn/proto_library.gni")
+
+perfetto_proto_library("@TYPE@") {
+ sources = [ "translation_table.proto" ]
+}
diff --git a/protos/perfetto/trace/translation/translation_table.proto b/protos/perfetto/trace/translation/translation_table.proto
new file mode 100644
index 0000000..bd9baee
--- /dev/null
+++ b/protos/perfetto/trace/translation/translation_table.proto
@@ -0,0 +1,38 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+syntax = "proto2";
+
+package perfetto.protos;
+
+// Translation rules for the trace processor.
+// See the comments for each rule type for specific meaning.
+message TranslationTable {
+ oneof table {
+ ChromeHistorgramTranslationTable chrome_histogram = 1;
+ ChromeUserEventTranslationTable chrome_user_event = 2;
+ }
+}
+
+// Chrome histogram sample hash -> name translation rules.
+message ChromeHistorgramTranslationTable {
+ map<uint64, string> hash_to_name = 1;
+}
+
+// Chrome user event action hash -> name translation rules.
+message ChromeUserEventTranslationTable {
+ map<uint64, string> action_hash_to_name = 1;
+}