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

Side by Side Diff: services/gfx/compositor/render/render_frame.cc

Issue 1995873002: Mozart: Improve tracing and backpressure. (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: address review comments Created 4 years, 7 months 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
OLDNEW
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 #include "services/gfx/compositor/render/render_frame.h" 5 #include "services/gfx/compositor/render/render_frame.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 #include "base/trace_event/trace_event.h"
8 #include "skia/ext/refptr.h" 9 #include "skia/ext/refptr.h"
9 #include "third_party/skia/include/core/SkCanvas.h" 10 #include "third_party/skia/include/core/SkCanvas.h"
10 #include "third_party/skia/include/core/SkPicture.h" 11 #include "third_party/skia/include/core/SkPicture.h"
11 12
12 namespace compositor { 13 namespace compositor {
13 14
14 RenderFrame::RenderFrame(const SkIRect& viewport, 15 RenderFrame::RenderFrame(const Metadata& metadata, const SkIRect& viewport)
15 const mojo::gfx::composition::FrameInfo& frame_info) 16 : metadata_(metadata), viewport_(viewport) {
16 : viewport_(viewport), frame_info_(frame_info) {
17 DCHECK(!viewport_.isEmpty()); 17 DCHECK(!viewport_.isEmpty());
18 } 18 }
19 19
20 RenderFrame::RenderFrame(const SkIRect& viewport, 20 RenderFrame::RenderFrame(const Metadata& metadata,
21 const mojo::gfx::composition::FrameInfo& frame_info, 21 const SkIRect& viewport,
22 const skia::RefPtr<SkPicture>& picture) 22 const skia::RefPtr<SkPicture>& picture)
23 : viewport_(viewport), frame_info_(frame_info), picture_(picture) { 23 : metadata_(metadata), viewport_(viewport), picture_(picture) {
24 DCHECK(!viewport_.isEmpty()); 24 DCHECK(!viewport_.isEmpty());
25 } 25 }
26 26
27 RenderFrame::~RenderFrame() {} 27 RenderFrame::~RenderFrame() {}
28 28
29 void RenderFrame::Paint(SkCanvas* canvas) const { 29 void RenderFrame::Draw(SkCanvas* canvas) const {
30 DCHECK(canvas); 30 DCHECK(canvas);
31 TRACE_EVENT0("gfx", "RenderFrame::Draw");
31 32
32 // TODO: Consider using GrDrawContext instead of SkCanvas. 33 // TODO: Consider using GrDrawContext instead of SkCanvas.
33 canvas->clear(SK_ColorBLACK); 34 canvas->clear(SK_ColorBLACK);
34 if (picture_) 35 if (picture_)
35 canvas->drawPicture(picture_.get()); 36 canvas->drawPicture(picture_.get());
36 } 37 }
37 38
39 RenderFrame::Metadata::Metadata(
40 const mojo::gfx::composition::FrameInfo& frame_info,
41 int64_t composition_time)
42 : frame_info_(frame_info), composition_time_(composition_time) {}
43
44 RenderFrame::Metadata::~Metadata() {}
45
38 } // namespace compositor 46 } // namespace compositor
OLDNEW
« services/gfx/compositor/backend/gpu_output.h ('K') | « services/gfx/compositor/render/render_frame.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698