[M120 Migration][VD] Fix url crash in RequestCertificateConfirm
[platform/framework/web/chromium-efl.git] / sql / sql_memory_dump_provider.h
1 // Copyright 2015 The Chromium Authors
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef SQL_SQL_MEMORY_DUMP_PROVIDER_H_
6 #define SQL_SQL_MEMORY_DUMP_PROVIDER_H_
7
8 #include "base/component_export.h"
9 #include "base/memory/singleton.h"
10 #include "base/trace_event/memory_dump_provider.h"
11
12 namespace sql {
13
14 // Adds process-wide memory usage statistics about sqlite to chrome://tracing.
15 // sql::Database::OnMemoryDump adds per-connection memory statistics.
16 class COMPONENT_EXPORT(SQL) SqlMemoryDumpProvider
17     : public base::trace_event::MemoryDumpProvider {
18  public:
19   static SqlMemoryDumpProvider* GetInstance();
20
21   SqlMemoryDumpProvider(const SqlMemoryDumpProvider&) = delete;
22   SqlMemoryDumpProvider& operator=(const SqlMemoryDumpProvider&) = delete;
23
24   // MemoryDumpProvider implementation.
25   bool OnMemoryDump(const base::trace_event::MemoryDumpArgs& args,
26                     base::trace_event::ProcessMemoryDump* pmd) override;
27
28  private:
29   friend struct base::DefaultSingletonTraits<SqlMemoryDumpProvider>;
30
31   SqlMemoryDumpProvider();
32   ~SqlMemoryDumpProvider() override;
33 };
34
35 }  // namespace sql
36
37 #endif  // SQL_SQL_MEMORY_DUMP_PROVIDER_H_