[SyncFS] Build indexes from FileTracker entries on disk.
[chromium-blink-merge.git] / content / common / gpu / client / gpu_memory_buffer_impl.cc
blobb3cd98332b41d82eecec0e17434bfb01d865a78d
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
3 // found in the LICENSE file.
5 #include "content/common/gpu/client/gpu_memory_buffer_impl.h"
7 #include "ui/gl/gl_bindings.h"
9 namespace content {
11 GpuMemoryBufferImpl::GpuMemoryBufferImpl(const gfx::Size& size,
12 unsigned internalformat)
13 : size_(size), internalformat_(internalformat), mapped_(false) {
14 DCHECK(IsFormatValid(internalformat));
17 GpuMemoryBufferImpl::~GpuMemoryBufferImpl() {}
19 // static
20 bool GpuMemoryBufferImpl::IsFormatValid(unsigned internalformat) {
21 switch (internalformat) {
22 case GL_BGRA8_EXT:
23 case GL_RGBA8_OES:
24 return true;
25 default:
26 return false;
30 // static
31 bool GpuMemoryBufferImpl::IsUsageValid(unsigned usage) {
32 switch (usage) {
33 case GL_IMAGE_MAP_CHROMIUM:
34 case GL_IMAGE_SCANOUT_CHROMIUM:
35 return true;
36 default:
37 return false;
41 // static
42 size_t GpuMemoryBufferImpl::BytesPerPixel(unsigned internalformat) {
43 switch (internalformat) {
44 case GL_BGRA8_EXT:
45 case GL_RGBA8_OES:
46 return 4;
47 default:
48 NOTREACHED();
49 return 0;
53 bool GpuMemoryBufferImpl::IsMapped() const { return mapped_; }
55 } // namespace content