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. 4 5 #ifndef CC_TEST_FAKE_CONTENT_LAYER_IMPL_H_ 6 #define CC_TEST_FAKE_CONTENT_LAYER_IMPL_H_ 7 8 #include "base/memory/scoped_ptr.h" 9 #include "cc/layers/tiled_layer_impl.h" 10 11 namespace cc { 12 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(tree_impl, id)); 18 } 19 virtual ~FakeContentLayerImpl(); 20 21 virtual scoped_ptr<LayerImpl> CreateLayerImpl(LayerTreeImpl* tree_impl) 22 OVERRIDE; 23 24 bool HaveResourceForTileAt(int i, int j); 25 26 size_t lost_output_surface_count() const { 27 return lost_output_surface_count_; 28 } 29 void reset_lost_output_surface_count() { lost_output_surface_count_ = 0; } 30 31 virtual void DidLoseOutputSurface() OVERRIDE; 32 33 private: 34 explicit FakeContentLayerImpl(LayerTreeImpl* tree_impl, int id); 35 36 size_t lost_output_surface_count_; 37 }; 38 39 } // namespace cc 40 41 #endif // CC_TEST_FAKE_CONTENT_LAYER_IMPL_H_ 42