Shared library track event: API/ABI to emit data
This commit implements:
* New ABIs to emit events to the data source:
* A low level ABI that allows users to do their own message
serialization.
* A high level ABI that accepts a representation of the data to be
traced and performs serialization in the library.
* The PERFETTO_TE macro (similar to the TRACE_EVENT macro) that can be
used to emit trace events using the high level ABI.
Bug: 237053982
Change-Id: I0ca1a9b03dfa67f7618e27e176f3113eddca871a
diff --git a/Android.bp b/Android.bp
index eb8d90a..1f072d6 100644
--- a/Android.bp
+++ b/Android.bp
@@ -2046,6 +2046,7 @@
":perfetto_src_protozero_filtering_string_filter",
":perfetto_src_protozero_proto_ring_buffer",
":perfetto_src_protozero_protozero",
+ ":perfetto_src_shared_lib_intern_map",
":perfetto_src_shared_lib_shared_lib",
":perfetto_src_shared_lib_test_integrationtests",
":perfetto_src_shared_lib_test_utils",
@@ -9465,6 +9466,14 @@
],
}
+// GN: //src/shared_lib:intern_map
+filegroup {
+ name: "perfetto_src_shared_lib_intern_map",
+ srcs: [
+ "src/shared_lib/intern_map.cc",
+ ],
+}
+
// GN: //src/shared_lib:shared_lib
filegroup {
name: "perfetto_src_shared_lib_shared_lib",
@@ -9474,6 +9483,7 @@
"src/shared_lib/pb_decoder.cc",
"src/shared_lib/producer.cc",
"src/shared_lib/stream_writer.cc",
+ "src/shared_lib/thread_utils.cc",
"src/shared_lib/tracing_session.cc",
"src/shared_lib/track_event.cc",
],
@@ -9495,6 +9505,14 @@
],
}
+// GN: //src/shared_lib:unittests
+filegroup {
+ name: "perfetto_src_shared_lib_unittests",
+ srcs: [
+ "src/shared_lib/intern_map_unittest.cc",
+ ],
+}
+
// GN: //src/trace_processor/containers:containers
filegroup {
name: "perfetto_src_trace_processor_containers_containers",
@@ -12096,8 +12114,11 @@
":perfetto_include_perfetto_profiling_pprof_builder",
":perfetto_include_perfetto_protozero_protozero",
":perfetto_include_perfetto_public_abi_base",
+ ":perfetto_include_perfetto_public_abi_public",
":perfetto_include_perfetto_public_base",
+ ":perfetto_include_perfetto_public_protos_protos",
":perfetto_include_perfetto_public_protozero",
+ ":perfetto_include_perfetto_public_public",
":perfetto_include_perfetto_test_test_support",
":perfetto_include_perfetto_trace_processor_basic_types",
":perfetto_include_perfetto_trace_processor_storage",
@@ -12277,6 +12298,8 @@
":perfetto_src_protozero_testing_messages_lite_gen",
":perfetto_src_protozero_testing_messages_zero_gen",
":perfetto_src_protozero_unittests",
+ ":perfetto_src_shared_lib_intern_map",
+ ":perfetto_src_shared_lib_unittests",
":perfetto_src_trace_processor_containers_containers",
":perfetto_src_trace_processor_containers_unittests",
":perfetto_src_trace_processor_db_db",