Setup a experiment to enable background tracing.
[chromium-blink-merge.git] / cc / test / fake_content_layer_impl.h
blobd199fad9bac20c60875109492b31e48907b06aaf
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_IMPL_H_
6 #define CC_TEST_FAKE_CONTENT_LAYER_IMPL_H_
8 #include "base/memory/scoped_ptr.h"
9 #include "cc/layers/tiled_layer_impl.h"
11 namespace cc {
13 class FakeContentLayerImpl : public TiledLayerImpl {
14 public:
15 static scoped_ptr<FakeContentLayerImpl> Create(
16 LayerTreeImpl* tree_impl, int id) {
17 return make_scoped_ptr(new FakeContentLayerImpl(
18 tree_impl, id, new LayerImpl::SyncedScrollOffset));
20 static scoped_ptr<FakeContentLayerImpl> Create(
21 LayerTreeImpl* tree_impl,
22 int id,
23 scoped_refptr<LayerImpl::SyncedScrollOffset> synced_scroll_offset) {
24 return make_scoped_ptr(
25 new FakeContentLayerImpl(tree_impl, id, synced_scroll_offset));
27 ~FakeContentLayerImpl() override;
29 scoped_ptr<LayerImpl> CreateLayerImpl(LayerTreeImpl* tree_impl) override;
31 bool HaveResourceForTileAt(int i, int j);
33 size_t lost_output_surface_count() const {
34 return lost_output_surface_count_;
36 void reset_lost_output_surface_count() { lost_output_surface_count_ = 0; }
38 void ReleaseResources() override;
40 private:
41 explicit FakeContentLayerImpl(
42 LayerTreeImpl* tree_impl,
43 int id,
44 scoped_refptr<LayerImpl::SyncedScrollOffset> synced_scroll_offset);
46 size_t lost_output_surface_count_;
49 } // namespace cc
51 #endif // CC_TEST_FAKE_CONTENT_LAYER_IMPL_H_