OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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_RESOURCES_PICTURE_PILE_BASE_H_ | 5 #ifndef CC_RESOURCES_PICTURE_PILE_BASE_H_ |
6 #define CC_RESOURCES_PICTURE_PILE_BASE_H_ | 6 #define CC_RESOURCES_PICTURE_PILE_BASE_H_ |
7 | 7 |
8 #include <bitset> | 8 #include <bitset> |
9 #include <list> | 9 #include <list> |
10 #include <utility> | 10 #include <utility> |
11 | 11 |
12 #include "base/containers/hash_tables.h" | 12 #include "base/containers/hash_tables.h" |
13 #include "base/memory/ref_counted.h" | 13 #include "base/memory/ref_counted.h" |
14 #include "cc/base/cc_export.h" | 14 #include "cc/base/cc_export.h" |
15 #include "cc/base/region.h" | 15 #include "cc/base/region.h" |
16 #include "cc/base/tiling_data.h" | 16 #include "cc/base/tiling_data.h" |
17 #include "cc/resources/picture.h" | 17 #include "cc/resources/picture.h" |
18 #include "ui/gfx/size.h" | 18 #include "ui/gfx/size.h" |
19 | 19 |
20 namespace base { | 20 namespace base { |
21 namespace debug { | |
22 class TracedValue; | |
23 } | |
24 class Value; | 21 class Value; |
25 } | 22 } |
26 | 23 |
27 namespace cc { | 24 namespace cc { |
28 | 25 |
29 class CC_EXPORT PicturePileBase : public base::RefCounted<PicturePileBase> { | 26 class CC_EXPORT PicturePileBase : public base::RefCounted<PicturePileBase> { |
30 public: | 27 public: |
31 PicturePileBase(); | 28 PicturePileBase(); |
32 explicit PicturePileBase(const PicturePileBase* other); | 29 explicit PicturePileBase(const PicturePileBase* other); |
33 PicturePileBase(const PicturePileBase* other, unsigned thread_index); | 30 PicturePileBase(const PicturePileBase* other, unsigned thread_index); |
(...skipping 14 matching lines...) Expand all Loading... |
48 | 45 |
49 // If this pile contains any valid recordings. May have false positives. | 46 // If this pile contains any valid recordings. May have false positives. |
50 bool HasRecordings() const { return has_any_recordings_; } | 47 bool HasRecordings() const { return has_any_recordings_; } |
51 | 48 |
52 static void ComputeTileGridInfo(const gfx::Size& tile_grid_size, | 49 static void ComputeTileGridInfo(const gfx::Size& tile_grid_size, |
53 SkTileGridFactory::TileGridInfo* info); | 50 SkTileGridFactory::TileGridInfo* info); |
54 | 51 |
55 void SetTileGridSize(const gfx::Size& tile_grid_size); | 52 void SetTileGridSize(const gfx::Size& tile_grid_size); |
56 TilingData& tiling() { return tiling_; } | 53 TilingData& tiling() { return tiling_; } |
57 | 54 |
58 void AsValueInto(base::debug::TracedValue* array) const; | 55 scoped_ptr<base::Value> AsValue() const; |
59 | 56 |
60 protected: | 57 protected: |
61 class CC_EXPORT PictureInfo { | 58 class CC_EXPORT PictureInfo { |
62 public: | 59 public: |
63 enum { | 60 enum { |
64 INVALIDATION_FRAMES_TRACKED = 32 | 61 INVALIDATION_FRAMES_TRACKED = 32 |
65 }; | 62 }; |
66 | 63 |
67 PictureInfo(); | 64 PictureInfo(); |
68 ~PictureInfo(); | 65 ~PictureInfo(); |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
121 private: | 118 private: |
122 void SetBufferPixels(int buffer_pixels); | 119 void SetBufferPixels(int buffer_pixels); |
123 | 120 |
124 friend class base::RefCounted<PicturePileBase>; | 121 friend class base::RefCounted<PicturePileBase>; |
125 DISALLOW_COPY_AND_ASSIGN(PicturePileBase); | 122 DISALLOW_COPY_AND_ASSIGN(PicturePileBase); |
126 }; | 123 }; |
127 | 124 |
128 } // namespace cc | 125 } // namespace cc |
129 | 126 |
130 #endif // CC_RESOURCES_PICTURE_PILE_BASE_H_ | 127 #endif // CC_RESOURCES_PICTURE_PILE_BASE_H_ |
OLD | NEW |