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_SCOPED_UI_RESOURCE_H_ | 5 #ifndef CC_RESOURCES_SCOPED_UI_RESOURCE_H_ |
6 #define CC_RESOURCES_SCOPED_UI_RESOURCE_H_ | 6 #define CC_RESOURCES_SCOPED_UI_RESOURCE_H_ |
7 | 7 |
8 #include "base/macros.h" | 8 #include "base/macros.h" |
9 #include "base/memory/ref_counted.h" | 9 #include "base/memory/ref_counted.h" |
10 #include "cc/base/cc_export.h" | 10 #include "cc/base/cc_export.h" |
(...skipping 14 matching lines...) Expand all Loading... |
25 public: | 25 public: |
26 static std::unique_ptr<ScopedUIResource> Create( | 26 static std::unique_ptr<ScopedUIResource> Create( |
27 UIResourceManager* ui_resource_manager, | 27 UIResourceManager* ui_resource_manager, |
28 const UIResourceBitmap& bitmap); | 28 const UIResourceBitmap& bitmap); |
29 ~ScopedUIResource() override; | 29 ~ScopedUIResource() override; |
30 | 30 |
31 // UIResourceClient implementation. | 31 // UIResourceClient implementation. |
32 UIResourceBitmap GetBitmap(UIResourceId uid, bool resource_lost) override; | 32 UIResourceBitmap GetBitmap(UIResourceId uid, bool resource_lost) override; |
33 UIResourceId id() { return id_; } | 33 UIResourceId id() { return id_; } |
34 | 34 |
| 35 // Returns the memory usage of the bitmap. |
| 36 size_t GetAllocatedSizeInBytes() const { |
| 37 return bitmap_.GetAllocatedSizeInBytes(); |
| 38 } |
| 39 |
35 protected: | 40 protected: |
36 ScopedUIResource(UIResourceManager* ui_resource_manager, | 41 ScopedUIResource(UIResourceManager* ui_resource_manager, |
37 const UIResourceBitmap& bitmap); | 42 const UIResourceBitmap& bitmap); |
38 | 43 |
39 UIResourceBitmap bitmap_; | 44 UIResourceBitmap bitmap_; |
40 UIResourceManager* ui_resource_manager_; | 45 UIResourceManager* ui_resource_manager_; |
41 UIResourceId id_; | 46 UIResourceId id_; |
42 | 47 |
43 private: | 48 private: |
44 DISALLOW_COPY_AND_ASSIGN(ScopedUIResource); | 49 DISALLOW_COPY_AND_ASSIGN(ScopedUIResource); |
45 }; | 50 }; |
46 | 51 |
47 } // namespace cc | 52 } // namespace cc |
48 | 53 |
49 #endif // CC_RESOURCES_SCOPED_UI_RESOURCE_H_ | 54 #endif // CC_RESOURCES_SCOPED_UI_RESOURCE_H_ |
OLD | NEW |