| 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_CONTENT_LAYER_CLIENT_H_ |   5 #ifndef CC_LAYERS_CONTENT_LAYER_CLIENT_H_ | 
|   6 #define CC_LAYERS_CONTENT_LAYER_CLIENT_H_ |   6 #define CC_LAYERS_CONTENT_LAYER_CLIENT_H_ | 
|   7  |   7  | 
|   8 #include "cc/base/cc_export.h" |   8 #include "cc/base/cc_export.h" | 
|   9 #include "cc/playback/display_item_list.h" |   9 #include "cc/playback/display_item_list.h" | 
|  10  |  10  | 
|  11 class SkCanvas; |  | 
|  12  |  | 
|  13 namespace gfx { |  11 namespace gfx { | 
|  14 class Rect; |  12 class Rect; | 
|  15 } |  13 } | 
|  16  |  14  | 
|  17 namespace cc { |  15 namespace cc { | 
|  18  |  16  | 
|  19 class CC_EXPORT ContentLayerClient { |  17 class CC_EXPORT ContentLayerClient { | 
|  20  public: |  18  public: | 
|  21   enum PaintingControlSetting { |  19   enum PaintingControlSetting { | 
|  22     PAINTING_BEHAVIOR_NORMAL, |  20     PAINTING_BEHAVIOR_NORMAL, | 
|  23     DISPLAY_LIST_CONSTRUCTION_DISABLED, |  21     DISPLAY_LIST_CONSTRUCTION_DISABLED, | 
|  24     DISPLAY_LIST_CACHING_DISABLED, |  22     DISPLAY_LIST_CACHING_DISABLED, | 
|  25     DISPLAY_LIST_PAINTING_DISABLED |  23     DISPLAY_LIST_PAINTING_DISABLED | 
|  26   }; |  24   }; | 
|  27  |  25  | 
|  28   virtual void PaintContents(SkCanvas* canvas, |  | 
|  29                              const gfx::Rect& clip, |  | 
|  30                              PaintingControlSetting painting_status) = 0; |  | 
|  31  |  | 
|  32   virtual scoped_refptr<DisplayItemList> PaintContentsToDisplayList( |  26   virtual scoped_refptr<DisplayItemList> PaintContentsToDisplayList( | 
|  33       const gfx::Rect& clip, |  27       const gfx::Rect& clip, | 
|  34       PaintingControlSetting painting_status) = 0; |  28       PaintingControlSetting painting_status) = 0; | 
|  35  |  29  | 
|  36   // If true the layer may skip clearing the background before rasterizing, |  30   // If true the layer may skip clearing the background before rasterizing, | 
|  37   // because it will cover any uncleared data with content. |  31   // because it will cover any uncleared data with content. | 
|  38   virtual bool FillsBoundsCompletely() const = 0; |  32   virtual bool FillsBoundsCompletely() const = 0; | 
|  39  |  33  | 
|  40   // Returns an estimate of the current memory usage within this object, |  34   // Returns an estimate of the current memory usage within this object, | 
|  41   // excluding memory shared with painting artifacts (i.e., |  35   // excluding memory shared with painting artifacts (i.e., | 
|  42   // DisplayItemList). Should be invoked after PaintContentsToDisplayList, |  36   // DisplayItemList). Should be invoked after PaintContentsToDisplayList, | 
|  43   // so that the result includes data cached internally during painting. |  37   // so that the result includes data cached internally during painting. | 
|  44   virtual size_t GetApproximateUnsharedMemoryUsage() const = 0; |  38   virtual size_t GetApproximateUnsharedMemoryUsage() const = 0; | 
|  45  |  39  | 
|  46  protected: |  40  protected: | 
|  47   virtual ~ContentLayerClient() {} |  41   virtual ~ContentLayerClient() {} | 
|  48 }; |  42 }; | 
|  49  |  43  | 
|  50 }  // namespace cc |  44 }  // namespace cc | 
|  51  |  45  | 
|  52 #endif  // CC_LAYERS_CONTENT_LAYER_CLIENT_H_ |  46 #endif  // CC_LAYERS_CONTENT_LAYER_CLIENT_H_ | 
| OLD | NEW |