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

Unified Diff: cc/layers/quad_sink.h

Issue 309493002: Remove QuadCuller class and make QuadSink concrete (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@test2ownMock
Patch Set: gn build fix Created 6 years, 6 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « cc/cc.gyp ('k') | cc/layers/quad_sink.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/layers/quad_sink.h
diff --git a/cc/layers/quad_sink.h b/cc/layers/quad_sink.h
index 0b503e4952979be1d7da299ae476f1eb5b07ca06..c033bfb489e89b8978e4aac5d3b9f4ea07beb219 100644
--- a/cc/layers/quad_sink.h
+++ b/cc/layers/quad_sink.h
@@ -17,26 +17,41 @@ namespace cc {
class DrawQuad;
class LayerImpl;
+class RenderPass;
+class RenderSurfaceImpl;
class SharedQuadState;
+template <typename LayerType>
+class OcclusionTracker;
class CC_EXPORT QuadSink {
public:
- virtual ~QuadSink() {}
+ QuadSink(RenderPass* render_pass,
+ const OcclusionTracker<LayerImpl>* occlusion_tracker);
+ ~QuadSink() {}
// Call this to add a SharedQuadState before appending quads that refer to it.
// Returns a pointer to the given SharedQuadState, that can be set on the
// quads to append.
- virtual SharedQuadState* CreateSharedQuadState() = 0;
+ virtual SharedQuadState* CreateSharedQuadState();
- virtual gfx::Rect UnoccludedContentRect(
- const gfx::Rect& content_rect,
- const gfx::Transform& draw_transform) = 0;
+ virtual gfx::Rect UnoccludedContentRect(const gfx::Rect& content_rect,
+ const gfx::Transform& draw_transform);
virtual gfx::Rect UnoccludedContributingSurfaceContentRect(
const gfx::Rect& content_rect,
- const gfx::Transform& draw_transform) = 0;
+ const gfx::Transform& draw_transform);
- virtual void Append(scoped_ptr<DrawQuad> draw_quad) = 0;
+ virtual void Append(scoped_ptr<DrawQuad> draw_quad);
+
+ protected:
+ RenderPass* render_pass_;
+
+ SharedQuadState* current_shared_quad_state_;
+
+ private:
+ const OcclusionTracker<LayerImpl>* occlusion_tracker_;
+
+ DISALLOW_COPY_AND_ASSIGN(QuadSink);
};
} // namespace cc
« no previous file with comments | « cc/cc.gyp ('k') | cc/layers/quad_sink.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698