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

Side by Side Diff: content/public/browser/tracing_controller.h

Issue 24355002: Overhaul tracing_ui to use XHR and new tracing_controller (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix wrong usages of RefCountedString::TakeString Created 7 years, 1 month 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « content/browser/tracing/tracing_ui.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 CONTENT_PUBLIC_BROWSER_TRACING_CONTROLLER_H_ 5 #ifndef CONTENT_PUBLIC_BROWSER_TRACING_CONTROLLER_H_
6 #define CONTENT_PUBLIC_BROWSER_TRACING_CONTROLLER_H_ 6 #define CONTENT_PUBLIC_BROWSER_TRACING_CONTROLLER_H_
7 7
8 #include <set>
9
8 #include "base/debug/trace_event.h" 10 #include "base/debug/trace_event.h"
9 #include "content/common/content_export.h" 11 #include "content/common/content_export.h"
10 12
11 namespace base { 13 namespace base {
12 class FilePath; 14 class FilePath;
13 }; 15 };
14 16
15 namespace content { 17 namespace content {
16 18
17 class TracingController; 19 class TracingController;
18 20
19 // TracingController is used on the browser processes to enable/disable 21 // TracingController is used on the browser processes to enable/disable
20 // trace status and collect trace data. Only the browser UI thread is allowed 22 // trace status and collect trace data. Only the browser UI thread is allowed
21 // to interact with the TracingController object. All callbacks are called on 23 // to interact with the TracingController object. All callbacks are called on
22 // the UI thread. 24 // the UI thread.
23 class TracingController { 25 class TracingController {
24 public: 26 public:
25 enum Options { 27 enum Options {
26 ENABLE_SYSTRACE = 1 << 0, 28 ENABLE_SYSTRACE = 1 << 0,
27 ENABLE_SAMPLING = 1 << 1, 29 ENABLE_SAMPLING = 1 << 1,
30 RECORD_CONTINUOUSLY = 1 << 2, // For EnableRecording() only.
28 }; 31 };
29 32
30 CONTENT_EXPORT static TracingController* GetInstance(); 33 CONTENT_EXPORT static TracingController* GetInstance();
31 34
32 // Get a set of category groups. The category groups can change as 35 // Get a set of category groups. The category groups can change as
33 // new code paths are reached. 36 // new code paths are reached.
34 // 37 //
35 // Once all child processes have acked to the GetCategories request, 38 // Once all child processes have acked to the GetCategories request,
36 // GetCategoriesDoneCallback is called back with a set of category 39 // GetCategoriesDoneCallback is called back with a set of category
37 // groups. 40 // groups.
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after
128 // 131 //
129 // Trace data will be written into |result_file_path| if it is not empty, or 132 // Trace data will be written into |result_file_path| if it is not empty, or
130 // into a temporary file. The actual file path will be passed to |callback|. 133 // into a temporary file. The actual file path will be passed to |callback|.
131 // 134 //
132 // If |result_file_path| is empty and |callback| is null, trace data won't be 135 // If |result_file_path| is empty and |callback| is null, trace data won't be
133 // written to any file. 136 // written to any file.
134 virtual void CaptureMonitoringSnapshot( 137 virtual void CaptureMonitoringSnapshot(
135 const base::FilePath& result_file_path, 138 const base::FilePath& result_file_path,
136 const TracingFileResultCallback& callback) = 0; 139 const TracingFileResultCallback& callback) = 0;
137 140
141 // Get the maximum across processes of trace buffer percent full state.
142 // When the TraceBufferPercentFull value is determined, the callback is
143 // called.
144 typedef base::Callback<void(float)> GetTraceBufferPercentFullCallback;
145 virtual bool GetTraceBufferPercentFull(
146 const GetTraceBufferPercentFullCallback& callback) = 0;
147
138 protected: 148 protected:
139 virtual ~TracingController() {} 149 virtual ~TracingController() {}
140 }; 150 };
141 151
142 } // namespace content 152 } // namespace content
143 153
144 #endif // CONTENT_PUBLIC_BROWSER_TRACING_CONTROLLER_H_ 154 #endif // CONTENT_PUBLIC_BROWSER_TRACING_CONTROLLER_H_
OLDNEW
« no previous file with comments | « content/browser/tracing/tracing_ui.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698