Revert 264226 "Reduce dependency of TiclInvalidationService on P..."
[chromium-blink-merge.git] / cc / test / mock_quad_culler.h
blob541f66b388321c03c80dc0ff29f1ce20a8baa049
1 // Copyright 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CC_TEST_MOCK_QUAD_CULLER_H_
6 #define CC_TEST_MOCK_QUAD_CULLER_H_
8 #include "base/memory/scoped_ptr.h"
9 #include "cc/layers/quad_sink.h"
10 #include "cc/quads/draw_quad.h"
11 #include "cc/quads/render_pass.h"
13 namespace cc {
15 class MockQuadCuller : public QuadSink {
16 public:
17 MockQuadCuller();
18 virtual ~MockQuadCuller();
20 MockQuadCuller(QuadList* external_quad_list,
21 SharedQuadStateList* external_shared_quad_state_list);
23 // QuadSink interface.
24 virtual SharedQuadState* UseSharedQuadState(
25 scoped_ptr<SharedQuadState> shared_quad_state) OVERRIDE;
26 virtual gfx::Rect UnoccludedContentRect(const gfx::Rect& content_rect,
27 const gfx::Transform& draw_transform)
28 OVERRIDE;
29 virtual gfx::Rect UnoccludedContributingSurfaceContentRect(
30 const gfx::Rect& content_rect,
31 const gfx::Transform& draw_transform) OVERRIDE;
32 virtual bool MaybeAppend(scoped_ptr<DrawQuad> draw_quad) OVERRIDE;
33 virtual void Append(scoped_ptr<DrawQuad> draw_quad) OVERRIDE;
35 const QuadList& quad_list() const { return *active_quad_list_; }
36 const SharedQuadStateList& shared_quad_state_list() const {
37 return *active_shared_quad_state_list_;
40 void set_occluded_target_rect(const gfx::Rect& occluded) {
41 occluded_target_rect_ = occluded;
44 void set_occluded_target_rect_for_contributing_surface(
45 const gfx::Rect& occluded) {
46 occluded_target_rect_for_contributing_surface_ = occluded;
49 void clear_lists() {
50 active_quad_list_->clear();
51 active_shared_quad_state_list_->clear();
54 private:
55 QuadList* active_quad_list_;
56 QuadList quad_list_storage_;
57 SharedQuadStateList* active_shared_quad_state_list_;
58 SharedQuadStateList shared_quad_state_storage_;
59 gfx::Rect occluded_target_rect_;
60 gfx::Rect occluded_target_rect_for_contributing_surface_;
63 } // namespace cc
65 #endif // CC_TEST_MOCK_QUAD_CULLER_H_