OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 UI_GFX_BUFFER_TYPES_H_ | 5 #ifndef UI_GFX_BUFFER_TYPES_H_ |
6 #define UI_GFX_BUFFER_TYPES_H_ | 6 #define UI_GFX_BUFFER_TYPES_H_ |
7 | 7 |
8 namespace gfx { | 8 namespace gfx { |
9 | 9 |
10 // The format needs to be taken into account when mapping a buffer into the | 10 // The format needs to be taken into account when mapping a buffer into the |
11 // client's address space. | 11 // client's address space. |
12 enum class BufferFormat { | 12 enum class BufferFormat { |
13 ATC, | 13 ATC, |
14 ATCIA, | 14 ATCIA, |
15 DXT1, | 15 DXT1, |
16 DXT5, | 16 DXT5, |
17 ETC1, | 17 ETC1, |
18 R_8, | 18 R_8, |
19 RG_88, | 19 RG_88, |
20 BGR_565, | 20 BGR_565, |
21 RGBA_4444, | 21 RGBA_4444, |
22 RGBX_8888, | 22 RGBX_8888, |
23 RGBA_8888, | 23 RGBA_8888, |
24 BGRX_8888, | 24 BGRX_8888, |
25 BGRA_8888, | 25 BGRA_8888, |
26 RGBA_F16, | 26 RGBA_F16, |
27 YVU_420, | 27 YVU_420, |
28 YUV_420_BIPLANAR, | 28 YUV_420_BIPLANAR, |
29 UYVY_422, | 29 UYVY_422, |
| 30 YUYV_422, |
30 | 31 |
31 LAST = UYVY_422 | 32 LAST = YUYV_422 |
32 }; | 33 }; |
33 | 34 |
34 // The usage mode affects how a buffer can be used. Only buffers created with | 35 // The usage mode affects how a buffer can be used. Only buffers created with |
35 // *_CPU_READ_WRITE_* can be mapped into the client's address space and accessed | 36 // *_CPU_READ_WRITE_* can be mapped into the client's address space and accessed |
36 // by the CPU. *_CPU_READ_WRITE_PERSISTENT adds the additional condition that | 37 // by the CPU. *_CPU_READ_WRITE_PERSISTENT adds the additional condition that |
37 // successive Map() calls (with Unmap() calls between) will return a pointer to | 38 // successive Map() calls (with Unmap() calls between) will return a pointer to |
38 // the same memory contents. SCANOUT implies GPU_READ_WRITE. | 39 // the same memory contents. SCANOUT implies GPU_READ_WRITE. |
39 // TODO(reveman): Add GPU_READ_WRITE for use-cases where SCANOUT is not | 40 // TODO(reveman): Add GPU_READ_WRITE for use-cases where SCANOUT is not |
40 // required. | 41 // required. |
41 enum class BufferUsage { | 42 enum class BufferUsage { |
42 GPU_READ, | 43 GPU_READ, |
43 SCANOUT, | 44 SCANOUT, |
44 SCANOUT_CPU_READ_WRITE, | 45 SCANOUT_CPU_READ_WRITE, |
45 GPU_READ_CPU_READ_WRITE, | 46 GPU_READ_CPU_READ_WRITE, |
46 // TODO(reveman): Merge this with GPU_READ_CPU_READ_WRITE when SurfaceTexture | 47 // TODO(reveman): Merge this with GPU_READ_CPU_READ_WRITE when SurfaceTexture |
47 // backed buffers are single buffered and support it. | 48 // backed buffers are single buffered and support it. |
48 GPU_READ_CPU_READ_WRITE_PERSISTENT, | 49 GPU_READ_CPU_READ_WRITE_PERSISTENT, |
49 | 50 |
50 LAST = GPU_READ_CPU_READ_WRITE_PERSISTENT | 51 LAST = GPU_READ_CPU_READ_WRITE_PERSISTENT |
51 }; | 52 }; |
52 | 53 |
53 } // namespace gfx | 54 } // namespace gfx |
54 | 55 |
55 #endif // UI_GFX_BUFFER_TYPES_H_ | 56 #endif // UI_GFX_BUFFER_TYPES_H_ |
OLD | NEW |