Index: gpu/command_buffer/service/gpu_tracer.h |
diff --git a/gpu/command_buffer/service/gpu_tracer.h b/gpu/command_buffer/service/gpu_tracer.h |
index 64f13cc6f63eeeac1c29473b56750121fc4f96e0..fb490757bad0bba8707adcd57b339ea7055a9aed 100644 |
--- a/gpu/command_buffer/service/gpu_tracer.h |
+++ b/gpu/command_buffer/service/gpu_tracer.h |
@@ -213,6 +213,24 @@ class GPU_EXPORT GPUTrace |
DISALLOW_COPY_AND_ASSIGN(GPUTrace); |
}; |
+class ScopedGPUTrace { |
+ public: |
+ ScopedGPUTrace(GPUTracer* gpu_tracer, GpuTracerSource source, |
+ const std::string& category, const std::string& name) |
+ : gpu_tracer_(gpu_tracer), |
+ source_(source) { |
+ gpu_tracer_->Begin(category, name, source_); |
+ } |
+ |
+ ~ScopedGPUTrace() { |
+ gpu_tracer_->End(source_); |
+ } |
+ |
+ private: |
+ GPUTracer* gpu_tracer_; |
+ GpuTracerSource source_; |
+}; |
+ |
} // namespace gles2 |
} // namespace gpu |