| OLD | NEW | 
|   1 // Copyright 2010 The Chromium Authors. All rights reserved. |   1 // Copyright 2010 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_IMAGE_LAYER_H_ |   5 #ifndef CC_LAYERS_PICTURE_IMAGE_LAYER_H_ | 
|   6 #define CC_LAYERS_PICTURE_IMAGE_LAYER_H_ |   6 #define CC_LAYERS_PICTURE_IMAGE_LAYER_H_ | 
|   7  |   7  | 
|   8 #include "cc/base/cc_export.h" |   8 #include "cc/base/cc_export.h" | 
|   9 #include "cc/layers/content_layer_client.h" |   9 #include "cc/layers/content_layer_client.h" | 
|  10 #include "cc/layers/picture_layer.h" |  10 #include "cc/layers/picture_layer.h" | 
|  11 #include "skia/ext/refptr.h" |  11 #include "skia/ext/refptr.h" | 
|  12 #include "ui/gfx/geometry/size.h" |  12 #include "ui/gfx/geometry/size.h" | 
|  13  |  13  | 
|  14 class SkImage; |  14 class SkImage; | 
|  15  |  15  | 
|  16 namespace cc { |  16 namespace cc { | 
|  17  |  17  | 
|  18 class CC_EXPORT PictureImageLayer : public PictureLayer, ContentLayerClient { |  18 class CC_EXPORT PictureImageLayer : public PictureLayer, ContentLayerClient { | 
|  19  public: |  19  public: | 
|  20   static scoped_refptr<PictureImageLayer> Create(const LayerSettings& settings); |  20   static scoped_refptr<PictureImageLayer> Create(const LayerSettings& settings); | 
|  21  |  21  | 
|  22   void SetImage(skia::RefPtr<const SkImage> image); |  22   void SetImage(skia::RefPtr<const SkImage> image); | 
|  23  |  23  | 
|  24   // Layer implementation. |  24   // Layer implementation. | 
|  25   scoped_ptr<LayerImpl> CreateLayerImpl(LayerTreeImpl* tree_impl) override; |  25   scoped_ptr<LayerImpl> CreateLayerImpl(LayerTreeImpl* tree_impl) override; | 
|  26  |  26  | 
|  27   // ContentLayerClient implementation. |  27   // ContentLayerClient implementation. | 
|  28   void PaintContents( |  | 
|  29       SkCanvas* canvas, |  | 
|  30       const gfx::Rect& clip, |  | 
|  31       ContentLayerClient::PaintingControlSetting painting_control) override; |  | 
|  32   scoped_refptr<DisplayItemList> PaintContentsToDisplayList( |  28   scoped_refptr<DisplayItemList> PaintContentsToDisplayList( | 
|  33       const gfx::Rect& clip, |  29       const gfx::Rect& clip, | 
|  34       ContentLayerClient::PaintingControlSetting painting_control) override; |  30       ContentLayerClient::PaintingControlSetting painting_control) override; | 
|  35   bool FillsBoundsCompletely() const override; |  31   bool FillsBoundsCompletely() const override; | 
|  36   size_t GetApproximateUnsharedMemoryUsage() const override; |  32   size_t GetApproximateUnsharedMemoryUsage() const override; | 
|  37  |  33  | 
|  38  protected: |  34  protected: | 
|  39   bool HasDrawableContent() const override; |  35   bool HasDrawableContent() const override; | 
|  40  |  36  | 
|  41  private: |  37  private: | 
|  42   explicit PictureImageLayer(const LayerSettings& settings); |  38   explicit PictureImageLayer(const LayerSettings& settings); | 
|  43   ~PictureImageLayer() override; |  39   ~PictureImageLayer() override; | 
|  44  |  40  | 
|  45   skia::RefPtr<const SkImage> image_; |  41   skia::RefPtr<const SkImage> image_; | 
|  46  |  42  | 
|  47   DISALLOW_COPY_AND_ASSIGN(PictureImageLayer); |  43   DISALLOW_COPY_AND_ASSIGN(PictureImageLayer); | 
|  48 }; |  44 }; | 
|  49  |  45  | 
|  50 }  // namespace cc |  46 }  // namespace cc | 
|  51  |  47  | 
|  52 #endif  // CC_LAYERS_PICTURE_IMAGE_LAYER_H_ |  48 #endif  // CC_LAYERS_PICTURE_IMAGE_LAYER_H_ | 
| OLD | NEW |