Index: skia/ext/SkTraceMemoryDump_chrome.h |
diff --git a/skia/ext/SkTraceMemoryDump_chrome.h b/skia/ext/SkTraceMemoryDump_chrome.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..4c62bba263d8d5fbea4d64ac6fd5d8b5ec624826 |
--- /dev/null |
+++ b/skia/ext/SkTraceMemoryDump_chrome.h |
@@ -0,0 +1,52 @@ |
+// Copyright 2015 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#ifndef SKIA_EXT_SK_TRACE_MEMORY_DUMP_CHROME_H_ |
+#define SKIA_EXT_SK_TRACE_MEMORY_DUMP_CHROME_H_ |
+ |
+#include "base/macros.h" |
+#include "third_party/skia/include/core/SkTraceMemoryDump.h" |
+ |
+namespace base { |
+namespace trace_event { |
+class MemoryAllocatorDump; |
+class ProcessMemoryDump; |
+} |
+} |
+ |
+namespace skia { |
+ |
+class SkTraceMemoryDump_Chrome : public SkTraceMemoryDump { |
+ public: |
+ // This should never outlive the OnMemoryDump call since the |
+ // ProcessMemoryDump is valid only in that timefrace. |
+ SkTraceMemoryDump_Chrome( |
+ base::trace_event::ProcessMemoryDump* process_memory_dump); |
+ ~SkTraceMemoryDump_Chrome() override; |
+ |
+ // SkTraceMemoryDump implementation: |
+ void dumpNumericValue(const char* dumpName, |
+ const char* valueName, |
+ const char* units, |
+ uint64_t value) override; |
+ void setMemoryBacking(const char* dumpName, |
+ const char* backingType, |
+ const char* backingObjectId) override; |
+ void setDiscardableMemoryBacking( |
+ const char* dumpName, |
+ const SkDiscardableMemory& discardableMemoryObject) override; |
+ |
+ private: |
+ base::trace_event::ProcessMemoryDump* process_memory_dump_; |
ericrk
2015/08/26 18:12:06
As I think subclassing will lead to the most sane
|
+ |
+ // Helper to create allocator dumps. |
+ base::trace_event::MemoryAllocatorDump* GetOrCreateAllocatorDump( |
+ const char* dumpName); |
+ |
+ DISALLOW_COPY_AND_ASSIGN(SkTraceMemoryDump_Chrome); |
+}; |
+ |
+} // namespace skia |
+ |
+#endif // SKIA_EXT_SK_TRACE_MEMORY_DUMP_CHROME_H_ |