Home | History | Annotate | Download | only in test
      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.
      4 
      5 #include "cc/test/test_texture.h"
      6 
      7 #include "gpu/GLES2/gl2extchromium.h"
      8 #include "third_party/khronos/GLES2/gl2.h"
      9 #include "third_party/khronos/GLES2/gl2ext.h"
     10 
     11 namespace cc {
     12 
     13 size_t TextureSizeBytes(gfx::Size size, ResourceFormat format) {
     14   unsigned int components_per_pixel = 4;
     15   unsigned int bytes_per_component = 1;
     16   return size.width() * size.height() * components_per_pixel *
     17          bytes_per_component;
     18 }
     19 
     20 TestTexture::TestTexture() : format(RGBA_8888) {
     21   // Initialize default parameter values.
     22   params[GL_TEXTURE_MAG_FILTER] = GL_LINEAR;
     23   params[GL_TEXTURE_MIN_FILTER] = GL_NEAREST_MIPMAP_LINEAR;
     24   params[GL_TEXTURE_WRAP_S] = GL_REPEAT;
     25   params[GL_TEXTURE_WRAP_T] = GL_REPEAT;
     26   params[GL_TEXTURE_POOL_CHROMIUM] = GL_TEXTURE_POOL_UNMANAGED_CHROMIUM;
     27   params[GL_TEXTURE_USAGE_ANGLE] = GL_NONE;
     28 }
     29 
     30 TestTexture::~TestTexture() {}
     31 
     32 void TestTexture::Reallocate(gfx::Size size, ResourceFormat format) {
     33   this->size = size;
     34   this->format = format;
     35   this->data.reset(new uint8_t[TextureSizeBytes(size, format)]);
     36 }
     37 
     38 bool TestTexture::IsValidParameter(blink::WGC3Denum pname) {
     39   return params.find(pname) != params.end();
     40 }
     41 
     42 }  // namespace cc
     43