trace_processor: move all containers to new subfolder
Moving them to their own folder makes more sense as there is a clear grouping
to them which does not necessarily have to involve db code.
Context: go/perfetto-tp-refactor
Bug: 135177627
Change-Id: Id71adb66a3ae1c4268aa9d9a2d9ba408b9bd6844
diff --git a/Android.bp b/Android.bp
index cddb354..8d2e370 100644
--- a/Android.bp
+++ b/Android.bp
@@ -5628,14 +5628,31 @@
],
}
+// GN: //src/trace_processor/containers:containers
+filegroup {
+ name: "perfetto_src_trace_processor_containers_containers",
+ srcs: [
+ "src/trace_processor/containers/bit_vector.cc",
+ "src/trace_processor/containers/bit_vector_iterators.cc",
+ "src/trace_processor/containers/row_map.cc",
+ ],
+}
+
+// GN: //src/trace_processor/containers:unittests
+filegroup {
+ name: "perfetto_src_trace_processor_containers_unittests",
+ srcs: [
+ "src/trace_processor/containers/bit_vector_unittest.cc",
+ "src/trace_processor/containers/row_map_unittest.cc",
+ "src/trace_processor/containers/sparse_vector_unittest.cc",
+ ],
+}
+
// GN: //src/trace_processor/db:lib
filegroup {
name: "perfetto_src_trace_processor_db_lib",
srcs: [
- "src/trace_processor/db/bit_vector.cc",
- "src/trace_processor/db/bit_vector_iterators.cc",
"src/trace_processor/db/column.cc",
- "src/trace_processor/db/row_map.cc",
"src/trace_processor/db/table.cc",
],
}
@@ -5644,10 +5661,7 @@
filegroup {
name: "perfetto_src_trace_processor_db_unittests",
srcs: [
- "src/trace_processor/db/bit_vector_unittest.cc",
"src/trace_processor/db/compare_unittest.cc",
- "src/trace_processor/db/row_map_unittest.cc",
- "src/trace_processor/db/sparse_vector_unittest.cc",
],
}
@@ -6590,6 +6604,8 @@
":perfetto_src_protozero_testing_messages_zero_gen",
":perfetto_src_protozero_unittests",
":perfetto_src_trace_processor_common",
+ ":perfetto_src_trace_processor_containers_containers",
+ ":perfetto_src_trace_processor_containers_unittests",
":perfetto_src_trace_processor_db_lib",
":perfetto_src_trace_processor_db_unittests",
":perfetto_src_trace_processor_descriptors",
@@ -6804,6 +6820,7 @@
":perfetto_src_base_base",
":perfetto_src_protozero_protozero",
":perfetto_src_trace_processor_common",
+ ":perfetto_src_trace_processor_containers_containers",
":perfetto_src_trace_processor_db_lib",
":perfetto_src_trace_processor_descriptors",
":perfetto_src_trace_processor_lib",
@@ -6911,6 +6928,7 @@
":perfetto_src_profiling_deobfuscator",
":perfetto_src_protozero_protozero",
":perfetto_src_trace_processor_common",
+ ":perfetto_src_trace_processor_containers_containers",
":perfetto_src_trace_processor_db_lib",
":perfetto_src_trace_processor_descriptors",
":perfetto_src_trace_processor_lib",
diff --git a/BUILD b/BUILD
index 4ecf967..fa5f558 100644
--- a/BUILD
+++ b/BUILD
@@ -572,20 +572,27 @@
],
)
+# GN target: //src/trace_processor/containers:containers
+filegroup(
+ name = "src_trace_processor_containers_containers",
+ srcs = [
+ "src/trace_processor/containers/bit_vector.cc",
+ "src/trace_processor/containers/bit_vector.h",
+ "src/trace_processor/containers/bit_vector_iterators.cc",
+ "src/trace_processor/containers/bit_vector_iterators.h",
+ "src/trace_processor/containers/row_map.cc",
+ "src/trace_processor/containers/row_map.h",
+ "src/trace_processor/containers/sparse_vector.h",
+ ],
+)
+
# GN target: //src/trace_processor/db:lib
filegroup(
name = "src_trace_processor_db_lib",
srcs = [
- "src/trace_processor/db/bit_vector.cc",
- "src/trace_processor/db/bit_vector.h",
- "src/trace_processor/db/bit_vector_iterators.cc",
- "src/trace_processor/db/bit_vector_iterators.h",
"src/trace_processor/db/column.cc",
"src/trace_processor/db/column.h",
"src/trace_processor/db/compare.h",
- "src/trace_processor/db/row_map.cc",
- "src/trace_processor/db/row_map.h",
- "src/trace_processor/db/sparse_vector.h",
"src/trace_processor/db/table.cc",
"src/trace_processor/db/table.h",
"src/trace_processor/db/typed_column.h",
@@ -2521,6 +2528,7 @@
":src_base_base",
":src_protozero_protozero",
":src_trace_processor_common",
+ ":src_trace_processor_containers_containers",
":src_trace_processor_db_lib",
":src_trace_processor_descriptors",
":src_trace_processor_export_json",
@@ -2599,6 +2607,7 @@
":src_base_unix_socket",
":src_protozero_protozero",
":src_trace_processor_common",
+ ":src_trace_processor_containers_containers",
":src_trace_processor_db_lib",
":src_trace_processor_descriptors",
":src_trace_processor_export_json",
@@ -2752,6 +2761,7 @@
":src_profiling_deobfuscator",
":src_protozero_protozero",
":src_trace_processor_common",
+ ":src_trace_processor_containers_containers",
":src_trace_processor_db_lib",
":src_trace_processor_descriptors",
":src_trace_processor_export_json",
diff --git a/gn/perfetto_benchmarks.gni b/gn/perfetto_benchmarks.gni
index 4b0f331..122c6ff 100644
--- a/gn/perfetto_benchmarks.gni
+++ b/gn/perfetto_benchmarks.gni
@@ -18,7 +18,7 @@
"gn:default_deps",
"src/base:benchmarks",
"src/traced/probes/ftrace:benchmarks",
- "src/trace_processor/db:benchmarks",
+ "src/trace_processor/containers:benchmarks",
"src/trace_processor/tables:benchmarks",
"src/tracing:benchmarks",
"test:benchmark_main",
diff --git a/src/trace_processor/BUILD.gn b/src/trace_processor/BUILD.gn
index 1d0f9b3..b6f562c 100644
--- a/src/trace_processor/BUILD.gn
+++ b/src/trace_processor/BUILD.gn
@@ -468,6 +468,7 @@
"../base",
"../protozero",
"../protozero:testing_messages_zero",
+ "containers:unittests",
"db:unittests",
"tables:unittests",
]
diff --git a/src/trace_processor/containers/BUILD.gn b/src/trace_processor/containers/BUILD.gn
new file mode 100644
index 0000000..c6c5d73
--- /dev/null
+++ b/src/trace_processor/containers/BUILD.gn
@@ -0,0 +1,63 @@
+# Copyright (C) 2019 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/test.gni")
+
+source_set("containers") {
+ sources = [
+ "bit_vector.cc",
+ "bit_vector.h",
+ "bit_vector_iterators.cc",
+ "bit_vector_iterators.h",
+ "row_map.cc",
+ "row_map.h",
+ "sparse_vector.h",
+ ]
+ deps = [
+ "../:common",
+ "../../../gn:default_deps",
+ "../../../include/perfetto/base",
+ "../../../include/perfetto/ext/base",
+ ]
+}
+
+perfetto_unittest_source_set("unittests") {
+ testonly = true
+ sources = [
+ "bit_vector_unittest.cc",
+ "row_map_unittest.cc",
+ "sparse_vector_unittest.cc",
+ ]
+ deps = [
+ ":containers",
+ "../../../gn:default_deps",
+ "../../../gn:gtest_and_gmock",
+ ]
+}
+
+if (enable_perfetto_benchmarks) {
+ source_set("benchmarks") {
+ testonly = true
+ deps = [
+ ":containers",
+ "../../../gn:benchmark",
+ "../../../gn:default_deps",
+ ]
+ sources = [
+ "bit_vector_benchmark.cc",
+ "row_map_benchmark.cc",
+ "sparse_vector_benchmark.cc",
+ ]
+ }
+}
diff --git a/src/trace_processor/db/bit_vector.cc b/src/trace_processor/containers/bit_vector.cc
similarity index 94%
rename from src/trace_processor/db/bit_vector.cc
rename to src/trace_processor/containers/bit_vector.cc
index 0d2f3d8..0ec5bcc 100644
--- a/src/trace_processor/db/bit_vector.cc
+++ b/src/trace_processor/containers/bit_vector.cc
@@ -14,9 +14,9 @@
* limitations under the License.
*/
-#include "src/trace_processor/db/bit_vector.h"
+#include "src/trace_processor/containers/bit_vector.h"
-#include "src/trace_processor/db/bit_vector_iterators.h"
+#include "src/trace_processor/containers/bit_vector_iterators.h"
namespace perfetto {
namespace trace_processor {
diff --git a/src/trace_processor/db/bit_vector.h b/src/trace_processor/containers/bit_vector.h
similarity index 98%
rename from src/trace_processor/db/bit_vector.h
rename to src/trace_processor/containers/bit_vector.h
index bed71a6..58b9e23 100644
--- a/src/trace_processor/db/bit_vector.h
+++ b/src/trace_processor/containers/bit_vector.h
@@ -14,8 +14,8 @@
* limitations under the License.
*/
-#ifndef SRC_TRACE_PROCESSOR_DB_BIT_VECTOR_H_
-#define SRC_TRACE_PROCESSOR_DB_BIT_VECTOR_H_
+#ifndef SRC_TRACE_PROCESSOR_CONTAINERS_BIT_VECTOR_H_
+#define SRC_TRACE_PROCESSOR_CONTAINERS_BIT_VECTOR_H_
#include <stddef.h>
#include <stdint.h>
@@ -655,4 +655,4 @@
} // namespace trace_processor
} // namespace perfetto
-#endif // SRC_TRACE_PROCESSOR_DB_BIT_VECTOR_H_
+#endif // SRC_TRACE_PROCESSOR_CONTAINERS_BIT_VECTOR_H_
diff --git a/src/trace_processor/db/bit_vector_benchmark.cc b/src/trace_processor/containers/bit_vector_benchmark.cc
similarity index 98%
rename from src/trace_processor/db/bit_vector_benchmark.cc
rename to src/trace_processor/containers/bit_vector_benchmark.cc
index 54c00f9..b4a0c27 100644
--- a/src/trace_processor/db/bit_vector_benchmark.cc
+++ b/src/trace_processor/containers/bit_vector_benchmark.cc
@@ -16,7 +16,7 @@
#include <benchmark/benchmark.h>
-#include "src/trace_processor/db/bit_vector.h"
+#include "src/trace_processor/containers/bit_vector.h"
namespace {
@@ -36,7 +36,7 @@
b->Arg(1234567);
}
}
-}
+} // namespace
static void BM_BitVectorAppendTrue(benchmark::State& state) {
BitVector bv;
diff --git a/src/trace_processor/db/bit_vector_iterators.cc b/src/trace_processor/containers/bit_vector_iterators.cc
similarity index 98%
rename from src/trace_processor/db/bit_vector_iterators.cc
rename to src/trace_processor/containers/bit_vector_iterators.cc
index 281384c..5424365 100644
--- a/src/trace_processor/db/bit_vector_iterators.cc
+++ b/src/trace_processor/containers/bit_vector_iterators.cc
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-#include "src/trace_processor/db/bit_vector_iterators.h"
+#include "src/trace_processor/containers/bit_vector_iterators.h"
namespace perfetto {
namespace trace_processor {
diff --git a/src/trace_processor/db/bit_vector_iterators.h b/src/trace_processor/containers/bit_vector_iterators.h
similarity index 95%
rename from src/trace_processor/db/bit_vector_iterators.h
rename to src/trace_processor/containers/bit_vector_iterators.h
index 365e8ef..0047812 100644
--- a/src/trace_processor/db/bit_vector_iterators.h
+++ b/src/trace_processor/containers/bit_vector_iterators.h
@@ -14,10 +14,10 @@
* limitations under the License.
*/
-#ifndef SRC_TRACE_PROCESSOR_DB_BIT_VECTOR_ITERATORS_H_
-#define SRC_TRACE_PROCESSOR_DB_BIT_VECTOR_ITERATORS_H_
+#ifndef SRC_TRACE_PROCESSOR_CONTAINERS_BIT_VECTOR_ITERATORS_H_
+#define SRC_TRACE_PROCESSOR_CONTAINERS_BIT_VECTOR_ITERATORS_H_
-#include "src/trace_processor/db/bit_vector.h"
+#include "src/trace_processor/containers/bit_vector.h"
namespace perfetto {
namespace trace_processor {
@@ -187,4 +187,4 @@
} // namespace trace_processor
} // namespace perfetto
-#endif // SRC_TRACE_PROCESSOR_DB_BIT_VECTOR_ITERATORS_H_
+#endif // SRC_TRACE_PROCESSOR_CONTAINERS_BIT_VECTOR_ITERATORS_H_
diff --git a/src/trace_processor/db/bit_vector_unittest.cc b/src/trace_processor/containers/bit_vector_unittest.cc
similarity index 98%
rename from src/trace_processor/db/bit_vector_unittest.cc
rename to src/trace_processor/containers/bit_vector_unittest.cc
index 7b5aad7..e185afd 100644
--- a/src/trace_processor/db/bit_vector_unittest.cc
+++ b/src/trace_processor/containers/bit_vector_unittest.cc
@@ -14,11 +14,11 @@
* limitations under the License.
*/
-#include "src/trace_processor/db/bit_vector.h"
+#include "src/trace_processor/containers/bit_vector.h"
#include <random>
-#include "src/trace_processor/db/bit_vector_iterators.h"
+#include "src/trace_processor/containers/bit_vector_iterators.h"
#include "test/gtest_and_gmock.h"
namespace perfetto {
diff --git a/src/trace_processor/db/row_map.cc b/src/trace_processor/containers/row_map.cc
similarity index 98%
rename from src/trace_processor/db/row_map.cc
rename to src/trace_processor/containers/row_map.cc
index cb16e4d..b10d0cb 100644
--- a/src/trace_processor/db/row_map.cc
+++ b/src/trace_processor/containers/row_map.cc
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-#include "src/trace_processor/db/row_map.h"
+#include "src/trace_processor/containers/row_map.h"
namespace perfetto {
namespace trace_processor {
diff --git a/src/trace_processor/db/row_map.h b/src/trace_processor/containers/row_map.h
similarity index 98%
rename from src/trace_processor/db/row_map.h
rename to src/trace_processor/containers/row_map.h
index fe1c08c..00ad7d2 100644
--- a/src/trace_processor/db/row_map.h
+++ b/src/trace_processor/containers/row_map.h
@@ -14,8 +14,8 @@
* limitations under the License.
*/
-#ifndef SRC_TRACE_PROCESSOR_DB_ROW_MAP_H_
-#define SRC_TRACE_PROCESSOR_DB_ROW_MAP_H_
+#ifndef SRC_TRACE_PROCESSOR_CONTAINERS_ROW_MAP_H_
+#define SRC_TRACE_PROCESSOR_CONTAINERS_ROW_MAP_H_
#include <stdint.h>
@@ -24,8 +24,8 @@
#include "perfetto/base/logging.h"
#include "perfetto/ext/base/optional.h"
-#include "src/trace_processor/db/bit_vector.h"
-#include "src/trace_processor/db/bit_vector_iterators.h"
+#include "src/trace_processor/containers/bit_vector.h"
+#include "src/trace_processor/containers/bit_vector_iterators.h"
namespace perfetto {
namespace trace_processor {
@@ -616,4 +616,4 @@
} // namespace trace_processor
} // namespace perfetto
-#endif // SRC_TRACE_PROCESSOR_DB_ROW_MAP_H_
+#endif // SRC_TRACE_PROCESSOR_CONTAINERS_ROW_MAP_H_
diff --git a/src/trace_processor/db/row_map_benchmark.cc b/src/trace_processor/containers/row_map_benchmark.cc
similarity index 99%
rename from src/trace_processor/db/row_map_benchmark.cc
rename to src/trace_processor/containers/row_map_benchmark.cc
index 1d6892e..47d66cd 100644
--- a/src/trace_processor/db/row_map_benchmark.cc
+++ b/src/trace_processor/containers/row_map_benchmark.cc
@@ -16,7 +16,7 @@
#include <benchmark/benchmark.h>
-#include "src/trace_processor/db/row_map.h"
+#include "src/trace_processor/containers/row_map.h"
using perfetto::trace_processor::BitVector;
using perfetto::trace_processor::RowMap;
diff --git a/src/trace_processor/db/row_map_unittest.cc b/src/trace_processor/containers/row_map_unittest.cc
similarity index 99%
rename from src/trace_processor/db/row_map_unittest.cc
rename to src/trace_processor/containers/row_map_unittest.cc
index 042154d..c85b5fe 100644
--- a/src/trace_processor/db/row_map_unittest.cc
+++ b/src/trace_processor/containers/row_map_unittest.cc
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-#include "src/trace_processor/db/row_map.h"
+#include "src/trace_processor/containers/row_map.h"
#include <memory>
diff --git a/src/trace_processor/db/sparse_vector.h b/src/trace_processor/containers/sparse_vector.h
similarity index 93%
rename from src/trace_processor/db/sparse_vector.h
rename to src/trace_processor/containers/sparse_vector.h
index 7fb0d87..5c803d3 100644
--- a/src/trace_processor/db/sparse_vector.h
+++ b/src/trace_processor/containers/sparse_vector.h
@@ -14,8 +14,8 @@
* limitations under the License.
*/
-#ifndef SRC_TRACE_PROCESSOR_DB_SPARSE_VECTOR_H_
-#define SRC_TRACE_PROCESSOR_DB_SPARSE_VECTOR_H_
+#ifndef SRC_TRACE_PROCESSOR_CONTAINERS_SPARSE_VECTOR_H_
+#define SRC_TRACE_PROCESSOR_CONTAINERS_SPARSE_VECTOR_H_
#include <stdint.h>
@@ -23,7 +23,7 @@
#include "perfetto/base/logging.h"
#include "perfetto/ext/base/optional.h"
-#include "src/trace_processor/db/row_map.h"
+#include "src/trace_processor/containers/row_map.h"
namespace perfetto {
namespace trace_processor {
@@ -115,4 +115,4 @@
} // namespace trace_processor
} // namespace perfetto
-#endif // SRC_TRACE_PROCESSOR_DB_SPARSE_VECTOR_H_
+#endif // SRC_TRACE_PROCESSOR_CONTAINERS_SPARSE_VECTOR_H_
diff --git a/src/trace_processor/db/sparse_vector_benchmark.cc b/src/trace_processor/containers/sparse_vector_benchmark.cc
similarity index 96%
rename from src/trace_processor/db/sparse_vector_benchmark.cc
rename to src/trace_processor/containers/sparse_vector_benchmark.cc
index ed1bed2..626b738 100644
--- a/src/trace_processor/db/sparse_vector_benchmark.cc
+++ b/src/trace_processor/containers/sparse_vector_benchmark.cc
@@ -16,7 +16,7 @@
#include <benchmark/benchmark.h>
-#include "src/trace_processor/db/sparse_vector.h"
+#include "src/trace_processor/containers/sparse_vector.h"
namespace {
diff --git a/src/trace_processor/db/sparse_vector_unittest.cc b/src/trace_processor/containers/sparse_vector_unittest.cc
similarity index 96%
rename from src/trace_processor/db/sparse_vector_unittest.cc
rename to src/trace_processor/containers/sparse_vector_unittest.cc
index cd8e43a..6e81b0b 100644
--- a/src/trace_processor/db/sparse_vector_unittest.cc
+++ b/src/trace_processor/containers/sparse_vector_unittest.cc
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-#include "src/trace_processor/db/sparse_vector.h"
+#include "src/trace_processor/containers/sparse_vector.h"
#include "test/gtest_and_gmock.h"
diff --git a/src/trace_processor/db/BUILD.gn b/src/trace_processor/db/BUILD.gn
index 30e2518..73373e8 100644
--- a/src/trace_processor/db/BUILD.gn
+++ b/src/trace_processor/db/BUILD.gn
@@ -16,16 +16,9 @@
source_set("lib") {
sources = [
- "bit_vector.cc",
- "bit_vector.h",
- "bit_vector_iterators.cc",
- "bit_vector_iterators.h",
"column.cc",
"column.h",
"compare.h",
- "row_map.cc",
- "row_map.h",
- "sparse_vector.h",
"table.cc",
"table.h",
"typed_column.h",
@@ -36,16 +29,14 @@
"../../../include/perfetto/base",
"../../../include/perfetto/ext/base",
"../../../include/perfetto/trace_processor",
+ "../containers",
]
}
perfetto_unittest_source_set("unittests") {
testonly = true
sources = [
- "bit_vector_unittest.cc",
"compare_unittest.cc",
- "row_map_unittest.cc",
- "sparse_vector_unittest.cc",
]
deps = [
":lib",
@@ -53,19 +44,3 @@
"../../../gn:gtest_and_gmock",
]
}
-
-if (enable_perfetto_benchmarks) {
- source_set("benchmarks") {
- testonly = true
- deps = [
- ":lib",
- "../../../gn:benchmark",
- "../../../gn:default_deps",
- ]
- sources = [
- "bit_vector_benchmark.cc",
- "row_map_benchmark.cc",
- "sparse_vector_benchmark.cc",
- ]
- }
-}
diff --git a/src/trace_processor/db/column.h b/src/trace_processor/db/column.h
index 0e3d927..d4e600a 100644
--- a/src/trace_processor/db/column.h
+++ b/src/trace_processor/db/column.h
@@ -22,9 +22,9 @@
#include "perfetto/base/logging.h"
#include "perfetto/ext/base/optional.h"
#include "perfetto/trace_processor/basic_types.h"
+#include "src/trace_processor/containers/row_map.h"
+#include "src/trace_processor/containers/sparse_vector.h"
#include "src/trace_processor/db/compare.h"
-#include "src/trace_processor/db/row_map.h"
-#include "src/trace_processor/db/sparse_vector.h"
#include "src/trace_processor/string_pool.h"
namespace perfetto {