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_FAKE_CONTENT_LAYER_H_
6 #define CC_TEST_FAKE_CONTENT_LAYER_H_
8 #include "base/memory/scoped_ptr.h"
9 #include "cc/layers/content_layer.h"
13 class FakeContentLayer
: public ContentLayer
{
15 static scoped_refptr
<FakeContentLayer
> Create(const LayerSettings
& settings
,
16 ContentLayerClient
* client
) {
17 return make_scoped_refptr(new FakeContentLayer(settings
, client
));
20 scoped_ptr
<LayerImpl
> CreateLayerImpl(LayerTreeImpl
* tree_impl
) override
;
22 size_t update_count() const { return update_count_
; }
23 void reset_update_count() { update_count_
= 0; }
25 size_t push_properties_count() const { return push_properties_count_
; }
26 void reset_push_properties_count() { push_properties_count_
= 0; }
28 bool Update(ResourceUpdateQueue
* queue
,
29 const OcclusionTracker
<Layer
>* occlusion
) override
;
31 gfx::Rect
LastPaintRect() const;
33 void set_always_update_resources(bool always_update_resources
) {
34 always_update_resources_
= always_update_resources
;
37 void PushPropertiesTo(LayerImpl
* layer
) override
;
39 void OnOutputSurfaceCreated() override
;
40 size_t output_surface_created_count() const {
41 return output_surface_created_count_
;
44 bool HaveBackingAt(int i
, int j
);
47 explicit FakeContentLayer(const LayerSettings
& settings
,
48 ContentLayerClient
* client
);
49 ~FakeContentLayer() override
;
52 size_t push_properties_count_
;
53 size_t output_surface_created_count_
;
54 bool always_update_resources_
;
59 #endif // CC_TEST_FAKE_CONTENT_LAYER_H_