| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 #include "gpu/command_buffer/service/image_factory.h" | 5 #include "gpu/command_buffer/service/image_factory.h" |
| 6 | 6 |
| 7 #include "gpu/command_buffer/common/capabilities.h" | 7 #include "gpu/command_buffer/common/capabilities.h" |
| 8 #include "ui/gl/gl_bindings.h" | 8 #include "ui/gl/gl_bindings.h" |
| 9 | 9 |
| 10 namespace gpu { | 10 namespace gpu { |
| (...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 56 default: | 56 default: |
| 57 NOTREACHED(); | 57 NOTREACHED(); |
| 58 return gfx::BufferUsage::MAP; | 58 return gfx::BufferUsage::MAP; |
| 59 } | 59 } |
| 60 } | 60 } |
| 61 | 61 |
| 62 // static | 62 // static |
| 63 bool ImageFactory::IsImageFormatCompatibleWithGpuMemoryBufferFormat( | 63 bool ImageFactory::IsImageFormatCompatibleWithGpuMemoryBufferFormat( |
| 64 unsigned internalformat, | 64 unsigned internalformat, |
| 65 gfx::BufferFormat format) { | 65 gfx::BufferFormat format) { |
| 66 return ImageFormatToGpuMemoryBufferFormat(internalformat) == format; | 66 switch (format) { |
| 67 case gfx::BufferFormat::ATC: |
| 68 case gfx::BufferFormat::ATCIA: |
| 69 case gfx::BufferFormat::BGRA_8888: |
| 70 case gfx::BufferFormat::DXT1: |
| 71 case gfx::BufferFormat::DXT5: |
| 72 case gfx::BufferFormat::ETC1: |
| 73 case gfx::BufferFormat::R_8: |
| 74 case gfx::BufferFormat::RGBA_8888: |
| 75 case gfx::BufferFormat::RGBX_8888: |
| 76 case gfx::BufferFormat::YUV_420: |
| 77 return ImageFormatToGpuMemoryBufferFormat(internalformat) == format; |
| 78 case gfx::BufferFormat::RGBA_4444: |
| 79 return internalformat == GL_RGBA; |
| 80 case gfx::BufferFormat::YUV_420_BIPLANAR: |
| 81 return false; |
| 82 } |
| 83 |
| 84 NOTREACHED(); |
| 85 return false; |
| 67 } | 86 } |
| 68 | 87 |
| 69 // static | 88 // static |
| 70 bool ImageFactory::IsGpuMemoryBufferFormatSupported( | 89 bool ImageFactory::IsGpuMemoryBufferFormatSupported( |
| 71 gfx::BufferFormat format, | 90 gfx::BufferFormat format, |
| 72 const gpu::Capabilities& capabilities) { | 91 const gpu::Capabilities& capabilities) { |
| 73 switch (format) { | 92 switch (format) { |
| 74 case gfx::BufferFormat::ATC: | 93 case gfx::BufferFormat::ATC: |
| 75 case gfx::BufferFormat::ATCIA: | 94 case gfx::BufferFormat::ATCIA: |
| 76 return capabilities.texture_format_atc; | 95 return capabilities.texture_format_atc; |
| (...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 119 case gfx::BufferFormat::YUV_420_BIPLANAR: | 138 case gfx::BufferFormat::YUV_420_BIPLANAR: |
| 120 // U and V planes are subsampled by a factor of 2. | 139 // U and V planes are subsampled by a factor of 2. |
| 121 return size.width() % 2 == 0 && size.height() % 2 == 0; | 140 return size.width() % 2 == 0 && size.height() % 2 == 0; |
| 122 } | 141 } |
| 123 | 142 |
| 124 NOTREACHED(); | 143 NOTREACHED(); |
| 125 return false; | 144 return false; |
| 126 } | 145 } |
| 127 | 146 |
| 128 } // namespace gpu | 147 } // namespace gpu |
| OLD | NEW |