diff options
author | scheib@chromium.org <scheib@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-05-05 20:14:33 +0000 |
---|---|---|
committer | scheib@chromium.org <scheib@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-05-05 20:14:33 +0000 |
commit | 39a52b444388584f604a5b14ed5983d2f23a418a (patch) | |
tree | 2531335e6735df54d7f525e896e61f8f249a2d47 /content/browser/trace_controller.cc | |
parent | 4d4c0780f53e428a1d4c24ebf4e509490d56a7fc (diff) | |
download | chromium_src-39a52b444388584f604a5b14ed5983d2f23a418a.zip chromium_src-39a52b444388584f604a5b14ed5983d2f23a418a.tar.gz chromium_src-39a52b444388584f604a5b14ed5983d2f23a418a.tar.bz2 |
Revert 84284 - Merge gpu_trace_event back into base/debug/trace_event.Initial land attempt at http://codereview.chromium.org/6551019/gpu_trace_event fork at http://codereview.chromium.org/6691013- gpu_trace_event renamed to base/debug/trace_event and modified as appropriate for base::debug- Unit Tests implemented for trace_event- gpu_common library removed (was added only for gpu_trace_event)- Existing calls to trace_event suffixed with _ETW to make ETW calls (see decisions and incremental plans at end of 6551019)- GPU trace calls renamed to new calls.- Tracing switch removed from test_shell, as linux log file support removed.BUG=79509TEST=trace_event_win_unittest and about:gpuReview URL: http://codereview.chromium.org/6862002
TBR=scheib@chromium.org
Review URL: http://codereview.chromium.org/6933035
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@84293 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/browser/trace_controller.cc')
-rw-r--r-- | content/browser/trace_controller.cc | 29 |
1 files changed, 11 insertions, 18 deletions
diff --git a/content/browser/trace_controller.cc b/content/browser/trace_controller.cc index 24e8086..5bf2efa 100644 --- a/content/browser/trace_controller.cc +++ b/content/browser/trace_controller.cc @@ -4,12 +4,11 @@ #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() : @@ -18,14 +17,12 @@ TraceController::TraceController() : pending_bpf_ack_count_(0), maximum_bpf_(0.0f), is_tracing_(false) { - base::debug::TraceLog::GetInstance()->SetOutputCallback( - base::Bind(&TraceController::OnTraceDataCollected, - base::Unretained(this))); + gpu::TraceLog::GetInstance()->SetOutputCallback( + NewCallback(this, &TraceController::OnTraceDataCollected)); } TraceController::~TraceController() { - base::debug::TraceLog::GetInstance()->SetOutputCallback( - base::debug::TraceLog::OutputCallback()); + gpu::TraceLog::GetInstance()->SetOutputCallback(NULL); } //static @@ -44,7 +41,7 @@ bool TraceController::BeginTracing(TraceSubscriber* subscriber) { // Enable tracing is_tracing_ = true; - base::debug::TraceLog::GetInstance()->SetEnabled(true); + gpu::TraceLog::GetInstance()->SetEnabled(true); // Notify all child processes. for (FilterMap::iterator it = filters_.begin(); it != filters_.end(); ++it) { @@ -95,7 +92,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 = base::debug::TraceLog::GetInstance()->GetBufferPercentFull(); + float bpf = gpu::TraceLog::GetInstance()->GetBufferPercentFull(); BrowserThread::PostTask(BrowserThread::UI, FROM_HERE, NewRunnableMethod(this, &TraceController::OnTraceBufferPercentFullReply, @@ -164,7 +161,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. - base::debug::TraceLog::GetInstance()->SetEnabled(false); + gpu::TraceLog::GetInstance()->SetEnabled(false); // Trigger callback if one is set. if (subscriber_) { @@ -182,21 +179,17 @@ void TraceController::OnEndTracingAck() { } } -void TraceController::OnTraceDataCollected( - const scoped_refptr<base::debug::TraceLog::RefCountedString>& - json_events_str_ptr) { +void TraceController::OnTraceDataCollected(const std::string& data) { // 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, - json_events_str_ptr)); + NewRunnableMethod(this, &TraceController::OnTraceDataCollected, data)); return; } if (subscriber_) - subscriber_->OnTraceDataCollected(json_events_str_ptr->data); + subscriber_->OnTraceDataCollected(data); } void TraceController::OnTraceBufferFull() { @@ -236,7 +229,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 = base::debug::TraceLog::GetInstance()->GetBufferPercentFull(); + float bpf = gpu::TraceLog::GetInstance()->GetBufferPercentFull(); BrowserThread::PostTask(BrowserThread::UI, FROM_HERE, NewRunnableMethod(this, &TraceController::OnTraceBufferPercentFullReply, |