Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(472)

Unified Diff: skia/ext/SkTraceMemoryDump_chrome.h

Issue 1319473003: [tracing] Add SkResourceCache statistics to chrome://tracing (chrome side) (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@discardable_objdumps
Patch Set: Mac build fix. Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « skia/ext/SkDiscardableMemory_chrome.cc ('k') | skia/ext/SkTraceMemoryDump_chrome.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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..dcdfc8f97dae6058b9b409119dfb5e03ae4f74b8
--- /dev/null
+++ b/skia/ext/SkTraceMemoryDump_chrome.h
@@ -0,0 +1,68 @@
+// 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 <string>
+
+#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 timeframe. Optional
+ // |dump_name_prefix| argument specifies the prefix appended to the dump
+ // name skia provides. By defualt it is taken as empty string.
+ SkTraceMemoryDump_Chrome(
+ base::trace_event::ProcessMemoryDump* process_memory_dump);
+
+ SkTraceMemoryDump_Chrome(
+ const char* dump_name_prefix,
+ 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;
+
+ protected:
+ base::trace_event::ProcessMemoryDump* process_memory_dump() {
+ return process_memory_dump_;
+ }
+
+ private:
+ base::trace_event::ProcessMemoryDump* process_memory_dump_;
+
+ std::string dump_name_prefix_;
+
+ // 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_
« no previous file with comments | « skia/ext/SkDiscardableMemory_chrome.cc ('k') | skia/ext/SkTraceMemoryDump_chrome.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698