Chromium Code Reviews| Index: content/browser/trace_controller.cc |
| diff --git a/content/browser/trace_controller.cc b/content/browser/trace_controller.cc |
| index 5bf2efabe8edcc7064454a10ac1496eebdd40ab0..ea565a1e5c91f626c9433ae347e02f4f89695122 100644 |
| --- a/content/browser/trace_controller.cc |
| +++ b/content/browser/trace_controller.cc |
| @@ -4,11 +4,12 @@ |
| #include "content/browser/trace_controller.h" |
| +#include "base/bind.h" |
| +#include "base/debug/trace_event.h" |
| #include "base/task.h" |
| #include "content/browser/browser_message_filter.h" |
| #include "content/browser/trace_message_filter.h" |
| #include "content/common/child_process_messages.h" |
| -#include "gpu/common/gpu_trace_event.h" |
| TraceController::TraceController() : |
| @@ -17,12 +18,14 @@ TraceController::TraceController() : |
| pending_bpf_ack_count_(0), |
| maximum_bpf_(0.0f), |
| is_tracing_(false) { |
| - gpu::TraceLog::GetInstance()->SetOutputCallback( |
| - NewCallback(this, &TraceController::OnTraceDataCollected)); |
| + base::debug::TraceLog::GetInstance()->SetOutputCallback( |
| + base::Bind(&TraceController::OnTraceDataCollected, |
| + base::Unretained(this))); |
| } |
| TraceController::~TraceController() { |
| - gpu::TraceLog::GetInstance()->SetOutputCallback(NULL); |
| + base::debug::TraceLog::GetInstance()->SetOutputCallback( |
| + base::debug::TraceLog::OutputCallback()); |
|
Sigurður Ásgeirsson
2011/05/04 18:58:09
nit: 4 spaces for continuation.
scheib
2011/05/05 00:06:37
Done.
|
| } |
| //static |
| @@ -41,7 +44,7 @@ bool TraceController::BeginTracing(TraceSubscriber* subscriber) { |
| // Enable tracing |
| is_tracing_ = true; |
| - gpu::TraceLog::GetInstance()->SetEnabled(true); |
| + base::debug::TraceLog::GetInstance()->SetEnabled(true); |
| // Notify all child processes. |
| for (FilterMap::iterator it = filters_.begin(); it != filters_.end(); ++it) { |
| @@ -92,7 +95,7 @@ bool TraceController::GetTraceBufferPercentFullAsync( |
| // Handle special case of zero child processes. |
| if (pending_bpf_ack_count_ == 1) { |
| // Ack asynchronously now, because we don't have any children to wait for. |
| - float bpf = gpu::TraceLog::GetInstance()->GetBufferPercentFull(); |
| + float bpf = base::debug::TraceLog::GetInstance()->GetBufferPercentFull(); |
| BrowserThread::PostTask(BrowserThread::UI, FROM_HERE, |
| NewRunnableMethod(this, |
| &TraceController::OnTraceBufferPercentFullReply, |
| @@ -161,7 +164,7 @@ void TraceController::OnEndTracingAck() { |
| // called with the last of the local trace data. Since we are on the UI |
| // thread, the call to OnTraceDataCollected will be synchronous, so we can |
| // immediately call OnEndTracingComplete below. |
| - gpu::TraceLog::GetInstance()->SetEnabled(false); |
| + base::debug::TraceLog::GetInstance()->SetEnabled(false); |
| // Trigger callback if one is set. |
| if (subscriber_) { |
| @@ -179,17 +182,21 @@ void TraceController::OnEndTracingAck() { |
| } |
| } |
| -void TraceController::OnTraceDataCollected(const std::string& data) { |
| +void TraceController::OnTraceDataCollected( |
| + const scoped_refptr<base::debug::TraceLog::RefCountedString>& |
|
Sigurður Ásgeirsson
2011/05/04 18:58:09
nit: is there a typedef you can borrow to make thi
scheib
2011/05/05 00:06:37
Style guidance from jam is to not typedef scoped_r
|
| + json_events_str_ptr) { |
| // OnTraceDataCollected may be called from any browser thread, either by the |
| // local event trace system or from child processes via TraceMessageFilter. |
| if (!BrowserThread::CurrentlyOn(BrowserThread::UI)) { |
| BrowserThread::PostTask(BrowserThread::UI, FROM_HERE, |
| - NewRunnableMethod(this, &TraceController::OnTraceDataCollected, data)); |
| + NewRunnableMethod(this, |
| + &TraceController::OnTraceDataCollected, |
| + json_events_str_ptr)); |
| return; |
| } |
| if (subscriber_) |
| - subscriber_->OnTraceDataCollected(data); |
| + subscriber_->OnTraceDataCollected(json_events_str_ptr->data); |
| } |
| void TraceController::OnTraceBufferFull() { |
| @@ -229,7 +236,7 @@ void TraceController::OnTraceBufferPercentFullReply(float percent_full) { |
| if (pending_bpf_ack_count_ == 1) { |
| // The last ack represents local trace, so we need to ack it now. Note that |
| // this code only executes if there were child processes. |
| - float bpf = gpu::TraceLog::GetInstance()->GetBufferPercentFull(); |
| + float bpf = base::debug::TraceLog::GetInstance()->GetBufferPercentFull(); |
| BrowserThread::PostTask(BrowserThread::UI, FROM_HERE, |
| NewRunnableMethod(this, |
| &TraceController::OnTraceBufferPercentFullReply, |