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_PICTURE_LAYER_IMPL_H_ | 5 #ifndef CC_PICTURE_LAYER_IMPL_H_ |
6 #define CC_PICTURE_LAYER_IMPL_H_ | 6 #define CC_PICTURE_LAYER_IMPL_H_ |
7 | 7 |
8 #include "cc/layer_impl.h" | 8 #include "cc/layer_impl.h" |
9 #include "cc/picture_layer_tiling.h" | 9 #include "cc/picture_layer_tiling.h" |
10 #include "cc/picture_layer_tiling_set.h" | 10 #include "cc/picture_layer_tiling_set.h" |
11 #include "cc/picture_pile_impl.h" | 11 #include "cc/picture_pile_impl.h" |
12 #include "cc/scoped_ptr_vector.h" | 12 #include "cc/scoped_ptr_vector.h" |
| 13 #include "skia/ext/refptr.h" |
| 14 #include "third_party/skia/include/core/SkPicture.h" |
13 | 15 |
14 namespace cc { | 16 namespace cc { |
15 | 17 |
16 struct AppendQuadsData; | 18 struct AppendQuadsData; |
17 class QuadSink; | 19 class QuadSink; |
18 | 20 |
19 class CC_EXPORT PictureLayerImpl : public LayerImpl, | 21 class CC_EXPORT PictureLayerImpl : public LayerImpl, |
20 public PictureLayerTilingClient { | 22 public PictureLayerTilingClient { |
21 public: | 23 public: |
22 static scoped_ptr<PictureLayerImpl> create(LayerTreeImpl* treeImpl, int id) | 24 static scoped_ptr<PictureLayerImpl> create(LayerTreeImpl* treeImpl, int id) |
23 { | 25 { |
24 return make_scoped_ptr(new PictureLayerImpl(treeImpl, id)); | 26 return make_scoped_ptr(new PictureLayerImpl(treeImpl, id)); |
25 } | 27 } |
26 virtual ~PictureLayerImpl(); | 28 virtual ~PictureLayerImpl(); |
27 | 29 |
28 // LayerImpl overrides. | 30 // LayerImpl overrides. |
29 virtual const char* layerTypeAsString() const OVERRIDE; | 31 virtual const char* layerTypeAsString() const OVERRIDE; |
30 virtual void appendQuads(QuadSink&, AppendQuadsData&) OVERRIDE; | 32 virtual void appendQuads(QuadSink&, AppendQuadsData&) OVERRIDE; |
31 virtual void dumpLayerProperties(std::string*, int indent) const OVERRIDE; | 33 virtual void dumpLayerProperties(std::string*, int indent) const OVERRIDE; |
32 virtual void didUpdateTransforms() OVERRIDE; | 34 virtual void didUpdateTransforms() OVERRIDE; |
| 35 virtual skia::RefPtr<SkPicture> getPicture() OVERRIDE; |
33 | 36 |
34 void didUpdateBounds(); | 37 void didUpdateBounds(); |
35 | 38 |
36 // PictureLayerTilingClient overrides. | 39 // PictureLayerTilingClient overrides. |
37 virtual scoped_refptr<Tile> CreateTile(PictureLayerTiling*, | 40 virtual scoped_refptr<Tile> CreateTile(PictureLayerTiling*, |
38 gfx::Rect) OVERRIDE; | 41 gfx::Rect) OVERRIDE; |
39 | 42 |
40 // PushPropertiesTo active tree => pending tree | 43 // PushPropertiesTo active tree => pending tree |
41 void SyncFromActiveLayer(); | 44 void SyncFromActiveLayer(); |
42 void SyncTiling(const PictureLayerTiling* tiling); | 45 void SyncTiling(const PictureLayerTiling* tiling); |
(...skipping 20 matching lines...) Expand all Loading... |
63 float last_content_scale_y_; | 66 float last_content_scale_y_; |
64 bool is_mask_; | 67 bool is_mask_; |
65 | 68 |
66 friend class PictureLayer; | 69 friend class PictureLayer; |
67 DISALLOW_COPY_AND_ASSIGN(PictureLayerImpl); | 70 DISALLOW_COPY_AND_ASSIGN(PictureLayerImpl); |
68 }; | 71 }; |
69 | 72 |
70 } | 73 } |
71 | 74 |
72 #endif // CC_PICTURE_LAYER_IMPL_H_ | 75 #endif // CC_PICTURE_LAYER_IMPL_H_ |
OLD | NEW |