OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef BASE_TRACE_EVENT_MEMORY_DUMP_MANAGER_H_ | 5 #ifndef BASE_TRACE_EVENT_MEMORY_DUMP_MANAGER_H_ |
6 #define BASE_TRACE_EVENT_MEMORY_DUMP_MANAGER_H_ | 6 #define BASE_TRACE_EVENT_MEMORY_DUMP_MANAGER_H_ |
7 | 7 |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <map> | 10 #include <map> |
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
125 const GlobalMemoryDumpCallback& callback); | 125 const GlobalMemoryDumpCallback& callback); |
126 | 126 |
127 // Same as above (still asynchronous), but without callback. | 127 // Same as above (still asynchronous), but without callback. |
128 void RequestGlobalDump(MemoryDumpType dump_type, | 128 void RequestGlobalDump(MemoryDumpType dump_type, |
129 MemoryDumpLevelOfDetail level_of_detail); | 129 MemoryDumpLevelOfDetail level_of_detail); |
130 | 130 |
131 // Prepare MemoryDumpManager for RequestGlobalMemoryDump calls for tracing | 131 // Prepare MemoryDumpManager for RequestGlobalMemoryDump calls for tracing |
132 // related modes (non-SUMMARY_ONLY). | 132 // related modes (non-SUMMARY_ONLY). |
133 // Initializes the peak detector, scheduler and heap profiler with the given | 133 // Initializes the peak detector, scheduler and heap profiler with the given |
134 // config. | 134 // config. |
135 void Enable(const TraceConfig::MemoryDumpConfig&); | 135 void SetupForTracing(const TraceConfig::MemoryDumpConfig&); |
136 | 136 |
137 // Tear-down tracing related state. | 137 // Tear-down tracing related state. |
138 void Disable(); | 138 // Non-tracing modes (e.g. SUMMARY_ONLY) will continue to work. |
| 139 void TeardownForTracing(); |
139 | 140 |
140 // NOTE: Use RequestGlobalDump() to create memory dumps. Creates a memory dump | 141 // NOTE: Use RequestGlobalDump() to create memory dumps. Creates a memory dump |
141 // for the current process and appends it to the trace. |callback| will be | 142 // for the current process and appends it to the trace. |callback| will be |
142 // invoked asynchronously upon completion on the same thread on which | 143 // invoked asynchronously upon completion on the same thread on which |
143 // CreateProcessDump() was called. This method should only be used by the | 144 // CreateProcessDump() was called. This method should only be used by the |
144 // embedder while creating a global memory dump. | 145 // embedder while creating a global memory dump. |
145 void CreateProcessDump(const MemoryDumpRequestArgs& args, | 146 void CreateProcessDump(const MemoryDumpRequestArgs& args, |
146 const ProcessMemoryDumpCallback& callback); | 147 const ProcessMemoryDumpCallback& callback); |
147 | 148 |
148 // Enable heap profiling if kEnableHeapProfiling is specified. | 149 // Enable heap profiling if kEnableHeapProfiling is specified. |
(...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
321 // Whether new memory dump providers should be told to enable heap profiling. | 322 // Whether new memory dump providers should be told to enable heap profiling. |
322 bool heap_profiling_enabled_; | 323 bool heap_profiling_enabled_; |
323 | 324 |
324 DISALLOW_COPY_AND_ASSIGN(MemoryDumpManager); | 325 DISALLOW_COPY_AND_ASSIGN(MemoryDumpManager); |
325 }; | 326 }; |
326 | 327 |
327 } // namespace trace_event | 328 } // namespace trace_event |
328 } // namespace base | 329 } // namespace base |
329 | 330 |
330 #endif // BASE_TRACE_EVENT_MEMORY_DUMP_MANAGER_H_ | 331 #endif // BASE_TRACE_EVENT_MEMORY_DUMP_MANAGER_H_ |
OLD | NEW |