| 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 |