blob: 540146a3202a4cd93986c979faeec2ec42a8e837 [file] [log] [blame]
// 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 WebProcessMemoryDump_h
#define WebProcessMemoryDump_h
#include "WebNonCopyable.h"
#include "WebString.h"
namespace blink {
class WebMemoryAllocatorDump;
// A container which holds all the dumps for the various allocators for a given
// process. Embedders of WebMemoryDumpProvider are expected to populate a
// WebProcessMemoryDump instance with the stats of their allocators.
class BLINK_PLATFORM_EXPORT WebProcessMemoryDump : public WebNonCopyable {
public:
// Creates a new MemoryAllocatorDump with the given name and returns the
// empty object back to the caller. |absoluteName| uniquely identifies the
// dump within the scope of a ProcessMemoryDump. It is possible to express
// nesting by means of a slash-separated path naming (e.g.,
// "allocator_name/arena_1/subheap_X").
virtual WebMemoryAllocatorDump* createMemoryAllocatorDump(const WebString& absoluteName)
{
return nullptr;
}
};
} // namespace blink
#endif // WebProcessMemoryDump_h