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_RESOURCE_FORMAT_H_ | 5 #ifndef CC_RESOURCES_RESOURCE_FORMAT_H_ |
6 #define CC_RESOURCES_RESOURCE_FORMAT_H_ | 6 #define CC_RESOURCES_RESOURCE_FORMAT_H_ |
7 | 7 |
8 #include "base/logging.h" | 8 #include "base/logging.h" |
9 #include "cc/base/cc_export.h" | 9 #include "cc/base/cc_export.h" |
10 #include "ui/gfx/buffer_types.h" | 10 #include "ui/gfx/buffer_types.h" |
11 | 11 |
12 // TODO(prashant.n): Including third_party/khronos/GLES2/gl2.h causes | 12 // TODO(prashant.n): Including third_party/khronos/GLES2/gl2.h causes |
13 // redefinition errors as macros/functions defined in it conflict with | 13 // redefinition errors as macros/functions defined in it conflict with |
14 // macros/functions defined in ui/gl/gl_bindings.h. (http://crbug.com/512833). | 14 // macros/functions defined in ui/gl/gl_bindings.h. (http://crbug.com/512833). |
15 typedef unsigned int GLenum; | 15 typedef unsigned int GLenum; |
16 | 16 |
17 namespace cc { | 17 namespace cc { |
18 | 18 |
19 // Keep in sync with arrays below. | 19 // Keep in sync with arrays below. |
20 enum ResourceFormat { | 20 enum ResourceFormat { |
21 RGBA_8888, | 21 RGBA_8888, |
22 RGBA_4444, | 22 RGBA_4444, |
23 BGRA_8888, | 23 BGRA_8888, |
24 ALPHA_8, | 24 ALPHA_8, |
25 LUMINANCE_8, | 25 LUMINANCE_8, |
26 RGB_565, | 26 RGB_565, |
27 ETC1, | 27 ETC1, |
28 RED_8, | 28 RED_8, |
| 29 RG_88, |
29 LUMINANCE_F16, | 30 LUMINANCE_F16, |
30 RESOURCE_FORMAT_MAX = LUMINANCE_F16, | 31 RESOURCE_FORMAT_MAX = LUMINANCE_F16, |
31 }; | 32 }; |
32 | 33 |
33 CC_EXPORT int BitsPerPixel(ResourceFormat format); | 34 CC_EXPORT int BitsPerPixel(ResourceFormat format); |
34 CC_EXPORT GLenum GLDataType(ResourceFormat format); | 35 CC_EXPORT GLenum GLDataType(ResourceFormat format); |
35 CC_EXPORT GLenum GLDataFormat(ResourceFormat format); | 36 CC_EXPORT GLenum GLDataFormat(ResourceFormat format); |
36 CC_EXPORT GLenum GLInternalFormat(ResourceFormat format); | 37 CC_EXPORT GLenum GLInternalFormat(ResourceFormat format); |
37 CC_EXPORT GLenum GLCopyTextureInternalFormat(ResourceFormat format); | 38 CC_EXPORT GLenum GLCopyTextureInternalFormat(ResourceFormat format); |
38 CC_EXPORT gfx::BufferFormat BufferFormat(ResourceFormat format); | 39 CC_EXPORT gfx::BufferFormat BufferFormat(ResourceFormat format); |
39 | 40 |
40 bool IsResourceFormatCompressed(ResourceFormat format); | 41 bool IsResourceFormatCompressed(ResourceFormat format); |
41 bool DoesResourceFormatSupportAlpha(ResourceFormat format); | 42 bool DoesResourceFormatSupportAlpha(ResourceFormat format); |
42 | 43 |
43 } // namespace cc | 44 } // namespace cc |
44 | 45 |
45 #endif // CC_RESOURCES_RESOURCE_FORMAT_H_ | 46 #endif // CC_RESOURCES_RESOURCE_FORMAT_H_ |
OLD | NEW |