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_LAYERS_PICTURE_LAYER_H_ | 5 #ifndef CC_LAYERS_PICTURE_LAYER_H_ |
6 #define CC_LAYERS_PICTURE_LAYER_H_ | 6 #define CC_LAYERS_PICTURE_LAYER_H_ |
7 | 7 |
| 8 #include <vector> |
| 9 |
8 #include "cc/base/invalidation_region.h" | 10 #include "cc/base/invalidation_region.h" |
9 #include "cc/debug/devtools_instrumentation.h" | 11 #include "cc/debug/devtools_instrumentation.h" |
10 #include "cc/debug/micro_benchmark_controller.h" | 12 #include "cc/debug/micro_benchmark_controller.h" |
11 #include "cc/layers/layer.h" | 13 #include "cc/layers/layer.h" |
12 #include "cc/resources/picture_pile.h" | 14 #include "cc/resources/picture_pile.h" |
13 #include "cc/trees/occlusion_tracker.h" | 15 #include "cc/trees/occlusion_tracker.h" |
14 | 16 |
15 namespace cc { | 17 namespace cc { |
16 | 18 |
17 class ContentLayerClient; | 19 class ContentLayerClient; |
| 20 class DebugRectHistory; |
18 class ResourceUpdateQueue; | 21 class ResourceUpdateQueue; |
| 22 struct DebugRect; |
19 | 23 |
20 class CC_EXPORT PictureLayer : public Layer { | 24 class CC_EXPORT PictureLayer : public Layer { |
21 public: | 25 public: |
22 static scoped_refptr<PictureLayer> Create(ContentLayerClient* client); | 26 static scoped_refptr<PictureLayer> Create(ContentLayerClient* client); |
23 | 27 |
24 void ClearClient(); | 28 void ClearClient(); |
25 | 29 |
26 // Layer interface. | 30 // Layer interface. |
27 virtual scoped_ptr<LayerImpl> CreateLayerImpl( | 31 virtual scoped_ptr<LayerImpl> CreateLayerImpl( |
28 LayerTreeImpl* tree_impl) OVERRIDE; | 32 LayerTreeImpl* tree_impl) OVERRIDE; |
(...skipping 22 matching lines...) Expand all Loading... |
51 virtual bool HasDrawableContent() const OVERRIDE; | 55 virtual bool HasDrawableContent() const OVERRIDE; |
52 void UpdateCanUseLCDText(); | 56 void UpdateCanUseLCDText(); |
53 | 57 |
54 private: | 58 private: |
55 ContentLayerClient* client_; | 59 ContentLayerClient* client_; |
56 scoped_refptr<PicturePile> pile_; | 60 scoped_refptr<PicturePile> pile_; |
57 devtools_instrumentation:: | 61 devtools_instrumentation:: |
58 ScopedLayerObjectTracker instrumentation_object_tracker_; | 62 ScopedLayerObjectTracker instrumentation_object_tracker_; |
59 // Invalidation to use the next time update is called. | 63 // Invalidation to use the next time update is called. |
60 InvalidationRegion pending_invalidation_; | 64 InvalidationRegion pending_invalidation_; |
| 65 std::vector<DebugRect> debug_invalidation_; |
61 // Invalidation from the last time update was called. | 66 // Invalidation from the last time update was called. |
62 Region pile_invalidation_; | 67 Region pile_invalidation_; |
| 68 bool includes_first_paint_invalidation_; |
63 gfx::Rect last_updated_visible_content_rect_; | 69 gfx::Rect last_updated_visible_content_rect_; |
64 bool is_mask_; | 70 bool is_mask_; |
65 | 71 |
66 int update_source_frame_number_; | 72 int update_source_frame_number_; |
67 bool can_use_lcd_text_last_frame_; | 73 bool can_use_lcd_text_last_frame_; |
68 | 74 |
69 DISALLOW_COPY_AND_ASSIGN(PictureLayer); | 75 DISALLOW_COPY_AND_ASSIGN(PictureLayer); |
70 }; | 76 }; |
71 | 77 |
72 } // namespace cc | 78 } // namespace cc |
73 | 79 |
74 #endif // CC_LAYERS_PICTURE_LAYER_H_ | 80 #endif // CC_LAYERS_PICTURE_LAYER_H_ |
OLD | NEW |