Separate analysis for each source file location
Use a map of maps of PerformanceAnalysis. The
first key is the thread, the second key the
source file location.
Test: dumpsys media.log
Change-Id: Ib60758e10ce1ddbf65337419db2ff3aa070763fb
diff --git a/media/libnbaio/PerformanceAnalysis.cpp b/media/libnbaio/PerformanceAnalysis.cpp
index 37d6d9f..698d592 100644
--- a/media/libnbaio/PerformanceAnalysis.cpp
+++ b/media/libnbaio/PerformanceAnalysis.cpp
@@ -348,11 +348,12 @@
//------------------------------------------------------------------------------
// writes summary of performance into specified file descriptor
-void dump(int fd, int indent, const std::map<int, PerformanceAnalysis>
- &threadPerformanceAnalysis) {
+void dump(int fd, int indent, const PerformanceAnalysisMap &threadPerformanceAnalysis) {
String8 body;
for (auto & thread : threadPerformanceAnalysis) {
- thread.second.reportPerformance(&body);
+ for (auto & hash: thread.second) {
+ hash.second.reportPerformance(&body);
+ }
}
if (!body.isEmpty()) {
dumpLine(fd, indent, body);