test_texture.h revision 5d1f7b1de12d16ceb2c938c56701a3e8bfa558f7
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#ifndef CC_TEST_TEST_TEXTURE_H_ 6#define CC_TEST_TEST_TEXTURE_H_ 7 8#include "base/containers/hash_tables.h" 9#include "base/memory/ref_counted.h" 10#include "base/memory/scoped_ptr.h" 11#include "cc/resources/resource_format.h" 12#include "third_party/khronos/GLES2/gl2.h" 13#include "ui/gfx/size.h" 14 15namespace cc { 16 17size_t TextureSizeBytes(const gfx::Size& size, ResourceFormat format); 18 19struct TestTexture : public base::RefCounted<TestTexture> { 20 TestTexture(); 21 22 void Reallocate(const gfx::Size& size, ResourceFormat format); 23 bool IsValidParameter(GLenum pname); 24 25 gfx::Size size; 26 ResourceFormat format; 27 scoped_ptr<uint8_t[]> data; 28 29 typedef base::hash_map<GLenum, GLint> 30 TextureParametersMap; 31 TextureParametersMap params; 32 33 private: 34 friend class base::RefCounted<TestTexture>; 35 ~TestTexture(); 36}; 37 38} // namespace cc 39 40#endif // CC_TEST_TEST_TEXTURE_H_ 41