| 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_RESOURCES_RESOURCE_H_ |   5 #ifndef CC_RESOURCES_RESOURCE_H_ | 
|   6 #define CC_RESOURCES_RESOURCE_H_ |   6 #define CC_RESOURCES_RESOURCE_H_ | 
|   7  |   7  | 
|   8 #include "cc/base/cc_export.h" |   8 #include "cc/base/cc_export.h" | 
|   9 #include "cc/resources/resource_provider.h" |   9 #include "cc/resources/resource_provider.h" | 
|  10 #include "third_party/khronos/GLES2/gl2.h" |  10 #include "third_party/khronos/GLES2/gl2.h" | 
|  11 #include "ui/gfx/size.h" |  11 #include "ui/gfx/size.h" | 
|  12  |  12  | 
|  13 namespace cc { |  13 namespace cc { | 
|  14  |  14  | 
|  15 class CC_EXPORT Resource { |  15 class CC_EXPORT Resource { | 
|  16  public: |  16  public: | 
|  17   Resource() : id_(0) {} |  17   Resource() : id_(0) {} | 
|  18   Resource(unsigned id, gfx::Size size, ResourceFormat format) |  18   Resource(unsigned id, const gfx::Size& size, ResourceFormat format) | 
|  19       : id_(id), |  19       : id_(id), | 
|  20         size_(size), |  20         size_(size), | 
|  21         format_(format) {} |  21         format_(format) {} | 
|  22  |  22  | 
|  23   ResourceProvider::ResourceId id() const { return id_; } |  23   ResourceProvider::ResourceId id() const { return id_; } | 
|  24   gfx::Size size() const { return size_; } |  24   gfx::Size size() const { return size_; } | 
|  25   ResourceFormat format() const { return format_; } |  25   ResourceFormat format() const { return format_; } | 
|  26   size_t bytes() const; |  26   size_t bytes() const; | 
|  27  |  27  | 
|  28   inline static size_t MemorySizeBytes(gfx::Size size, ResourceFormat format) { |  28   inline static size_t MemorySizeBytes(const gfx::Size& size, | 
 |  29                                        ResourceFormat format) { | 
|  29     DCHECK_EQ(0u, (BitsPerPixel(format) * size.width() * size.height()) % 8); |  30     DCHECK_EQ(0u, (BitsPerPixel(format) * size.width() * size.height()) % 8); | 
|  30     return (BitsPerPixel(format) * size.width() * size.height()) / 8; |  31     return (BitsPerPixel(format) * size.width() * size.height()) / 8; | 
|  31   } |  32   } | 
|  32  |  33  | 
|  33  protected: |  34  protected: | 
|  34   void set_id(ResourceProvider::ResourceId id) { id_ = id; } |  35   void set_id(ResourceProvider::ResourceId id) { id_ = id; } | 
|  35   void set_dimensions(gfx::Size size, ResourceFormat format) { |  36   void set_dimensions(const gfx::Size& size, ResourceFormat format) { | 
|  36     size_ = size; |  37     size_ = size; | 
|  37     format_ = format; |  38     format_ = format; | 
|  38   } |  39   } | 
|  39  |  40  | 
|  40  private: |  41  private: | 
|  41   ResourceProvider::ResourceId id_; |  42   ResourceProvider::ResourceId id_; | 
|  42   gfx::Size size_; |  43   gfx::Size size_; | 
|  43   ResourceFormat format_; |  44   ResourceFormat format_; | 
|  44  |  45  | 
|  45   DISALLOW_COPY_AND_ASSIGN(Resource); |  46   DISALLOW_COPY_AND_ASSIGN(Resource); | 
|  46 }; |  47 }; | 
|  47  |  48  | 
|  48 }  // namespace cc |  49 }  // namespace cc | 
|  49  |  50  | 
|  50 #endif  // CC_RESOURCES_RESOURCE_H_ |  51 #endif  // CC_RESOURCES_RESOURCE_H_ | 
| OLD | NEW |