OLD | NEW |
1 // Copyright 2012 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CC_TEST_FAKE_PICTURE_LAYER_TILING_CLIENT_H_ | 5 #ifndef CC_TEST_FAKE_PICTURE_LAYER_TILING_CLIENT_H_ |
6 #define CC_TEST_FAKE_PICTURE_LAYER_TILING_CLIENT_H_ | 6 #define CC_TEST_FAKE_PICTURE_LAYER_TILING_CLIENT_H_ |
7 | 7 |
8 #include "cc/resources/picture_layer_tiling.h" | 8 #include "cc/resources/picture_layer_tiling.h" |
9 #include "cc/resources/picture_pile_impl.h" | 9 #include "cc/resources/picture_pile_impl.h" |
10 #include "cc/resources/tile.h" | 10 #include "cc/resources/tile.h" |
11 #include "cc/resources/tile_manager.h" | 11 #include "cc/resources/tile_manager.h" |
12 #include "cc/test/fake_tile_manager_client.h" | 12 #include "cc/test/fake_tile_manager_client.h" |
13 #include "ui/gfx/rect.h" | 13 #include "ui/gfx/rect.h" |
14 | 14 |
15 namespace cc { | 15 namespace cc { |
16 | 16 |
17 class FakePictureLayerTilingClient : public PictureLayerTilingClient { | 17 class FakePictureLayerTilingClient : public PictureLayerTilingClient { |
18 public: | 18 public: |
19 FakePictureLayerTilingClient(); | 19 FakePictureLayerTilingClient(); |
20 explicit FakePictureLayerTilingClient(ResourceProvider* resource_provider); | 20 explicit FakePictureLayerTilingClient(ResourceProvider* resource_provider); |
21 virtual ~FakePictureLayerTilingClient(); | 21 virtual ~FakePictureLayerTilingClient(); |
22 | 22 |
23 // PictureLayerTilingClient implementation. | 23 // PictureLayerTilingClient implementation. |
24 virtual scoped_refptr<Tile> CreateTile( | 24 virtual scoped_refptr<Tile> CreateTile( |
25 PictureLayerTiling* tiling, const gfx::Rect& rect) OVERRIDE; | 25 PictureLayerTiling* tiling, const gfx::Rect& rect) OVERRIDE; |
26 virtual void UpdatePile(Tile* tile) OVERRIDE {} | 26 virtual void UpdatePile(Tile* tile) OVERRIDE {} |
27 virtual gfx::Size CalculateTileSize( | 27 virtual gfx::Size CalculateTileSize( |
28 const gfx::Size& content_bounds) const OVERRIDE; | 28 const gfx::Size& content_bounds) const OVERRIDE; |
| 29 virtual size_t GetMaxTilesForInterestArea() const OVERRIDE; |
| 30 virtual float GetSkewportTargetTimeInSeconds() const OVERRIDE; |
| 31 virtual int GetSkewportExtrapolationLimitInContentPixels() const OVERRIDE; |
29 | 32 |
30 void SetTileSize(const gfx::Size& tile_size); | 33 void SetTileSize(const gfx::Size& tile_size); |
31 gfx::Size TileSize() const { return tile_size_; } | 34 gfx::Size TileSize() const { return tile_size_; } |
32 scoped_refptr<PicturePileImpl> pile() { return pile_; } | 35 scoped_refptr<PicturePileImpl> pile() { return pile_; } |
33 const PicturePileImpl* pile() const { return pile_.get(); } | 36 const PicturePileImpl* pile() const { return pile_.get(); } |
34 | 37 |
35 virtual const Region* GetInvalidation() OVERRIDE; | 38 virtual const Region* GetInvalidation() OVERRIDE; |
36 virtual const PictureLayerTiling* GetTwinTiling( | 39 virtual const PictureLayerTiling* GetTwinTiling( |
37 const PictureLayerTiling* tiling) const OVERRIDE; | 40 const PictureLayerTiling* tiling) const OVERRIDE; |
38 | 41 |
39 void set_twin_tiling(PictureLayerTiling* tiling) { twin_tiling_ = tiling; } | 42 void set_twin_tiling(PictureLayerTiling* tiling) { twin_tiling_ = tiling; } |
40 void set_text_rect(const gfx::Rect& rect) { text_rect_ = rect; } | 43 void set_text_rect(const gfx::Rect& rect) { text_rect_ = rect; } |
41 void set_allow_create_tile(bool allow) { allow_create_tile_ = allow; } | 44 void set_allow_create_tile(bool allow) { allow_create_tile_ = allow; } |
42 void set_invalidation(const Region& region) { invalidation_ = region; } | 45 void set_invalidation(const Region& region) { invalidation_ = region; } |
| 46 void set_max_tiles_for_interest_area(size_t area) { |
| 47 max_tiles_for_interest_area_ = area; |
| 48 } |
| 49 void set_skewport_target_time_in_seconds(float time) { |
| 50 skewport_target_time_in_seconds_ = time; |
| 51 } |
| 52 void set_skewport_extrapolation_limit_in_content_pixels(int limit) { |
| 53 skewport_extrapolation_limit_in_content_pixels_ = limit; |
| 54 } |
43 | 55 |
44 TileManager* tile_manager() const { | 56 TileManager* tile_manager() const { |
45 return tile_manager_.get(); | 57 return tile_manager_.get(); |
46 } | 58 } |
47 | 59 |
48 protected: | 60 protected: |
49 FakeTileManagerClient tile_manager_client_; | 61 FakeTileManagerClient tile_manager_client_; |
50 scoped_ptr<TileManager> tile_manager_; | 62 scoped_ptr<TileManager> tile_manager_; |
51 scoped_refptr<PicturePileImpl> pile_; | 63 scoped_refptr<PicturePileImpl> pile_; |
52 gfx::Size tile_size_; | 64 gfx::Size tile_size_; |
53 PictureLayerTiling* twin_tiling_; | 65 PictureLayerTiling* twin_tiling_; |
54 gfx::Rect text_rect_; | 66 gfx::Rect text_rect_; |
55 bool allow_create_tile_; | 67 bool allow_create_tile_; |
56 Region invalidation_; | 68 Region invalidation_; |
| 69 size_t max_tiles_for_interest_area_; |
| 70 float skewport_target_time_in_seconds_; |
| 71 int skewport_extrapolation_limit_in_content_pixels_; |
57 }; | 72 }; |
58 | 73 |
59 } // namespace cc | 74 } // namespace cc |
60 | 75 |
61 #endif // CC_TEST_FAKE_PICTURE_LAYER_TILING_CLIENT_H_ | 76 #endif // CC_TEST_FAKE_PICTURE_LAYER_TILING_CLIENT_H_ |
OLD | NEW |