diff options
author | apatrick@google.com <apatrick@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-11-11 18:33:08 +0000 |
---|---|---|
committer | apatrick@google.com <apatrick@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-11-11 18:33:08 +0000 |
commit | 6e8abf638e8bec81426f651b3e85a258f476f43a (patch) | |
tree | 6301f059616590e37d91eaf69bec685044b7fdf0 /o3d/command_buffer/service/texture_gl.h | |
parent | 1c8ba9c3a84724d3116a50cd96431c8bc6d9e848 (diff) | |
download | chromium_src-6e8abf638e8bec81426f651b3e85a258f476f43a.zip chromium_src-6e8abf638e8bec81426f651b3e85a258f476f43a.tar.gz chromium_src-6e8abf638e8bec81426f651b3e85a258f476f43a.tar.bz2 |
Reorganized command buffer and GPU plugin code into following structure:
gpu/gpu.gyp
gpu/command_buffer/...
gpu/gpu_plugin/...
gpu/np_utils/...
And fixed up paths and header sentry macros. Also merged command_buffer.gyp into gpu.gyp.
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31676 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'o3d/command_buffer/service/texture_gl.h')
-rw-r--r-- | o3d/command_buffer/service/texture_gl.h | 284 |
1 files changed, 0 insertions, 284 deletions
diff --git a/o3d/command_buffer/service/texture_gl.h b/o3d/command_buffer/service/texture_gl.h deleted file mode 100644 index 9037eb7..0000000 --- a/o3d/command_buffer/service/texture_gl.h +++ /dev/null @@ -1,284 +0,0 @@ -/* - * Copyright 2009, Google Inc. - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above - * copyright notice, this list of conditions and the following disclaimer - * in the documentation and/or other materials provided with the - * distribution. - * * Neither the name of Google Inc. nor the names of its - * contributors may be used to endorse or promote products derived from - * this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - - -// This file declares the TextureGL, Texture2DGL, Texture3DGL and TextureCubeGL -// classes. - -#ifndef GPU_COMMAND_BUFFER_SERVICE_CROSS_GL_TEXTURE_GL_H_ -#define GPU_COMMAND_BUFFER_SERVICE_CROSS_GL_TEXTURE_GL_H_ - -#include "command_buffer/common/gapi_interface.h" -#include "command_buffer/service/gl_utils.h" -#include "command_buffer/service/resource.h" -#include "command_buffer/service/texture_utils.h" - -namespace command_buffer { -namespace o3d { - -class RenderDepthStencilSurfaceGL; -class RenderSurfaceGL; - -// The base class for a GL texture resource, providing access to the base GL -// texture that can be assigned to an effect parameter or a sampler unit. -class TextureGL : public Texture { - public: - TextureGL(texture::Type type, - unsigned int levels, - texture::Format format, - bool enable_render_surfaces, - unsigned int flags, - GLuint gl_texture) - : Texture(type, levels, format, enable_render_surfaces, flags), - gl_texture_(gl_texture) {} - virtual ~TextureGL(); - - // Gets the GL texture object. - GLuint gl_texture() const { return gl_texture_; } - - // Sets data into a texture resource. - virtual bool SetData(const Volume& volume, - unsigned int level, - texture::Face face, - unsigned int row_pitch, - unsigned int slice_pitch, - unsigned int size, - const void *data) = 0; - - // Gets data from a texture resource. - virtual bool GetData(const Volume& volume, - unsigned int level, - texture::Face face, - unsigned int row_pitch, - unsigned int slice_pitch, - unsigned int size, - void *data) = 0; - - // Creates the render surface, returning false if unable to. - virtual bool CreateRenderSurface(int width, - int height, - int mip_level, - int side) = 0; - - virtual bool InstallFrameBufferObjects( - RenderSurfaceGL *gl_surface) = 0; - - protected: - const GLuint gl_texture_; - - private: - DISALLOW_COPY_AND_ASSIGN(TextureGL); -}; - -// A 2D texture resource for GL. -class Texture2DGL : public TextureGL { - public: - Texture2DGL(unsigned int levels, - texture::Format format, - bool enable_render_surfaces, - unsigned int flags, - unsigned int width, - unsigned int height, - GLuint gl_texture) - : TextureGL(texture::kTexture2d, - levels, - format, - enable_render_surfaces, - flags, - gl_texture), - width_(width), - height_(height) {} - - // Creates a 2D texture resource. - static Texture2DGL *Create(unsigned int width, - unsigned int height, - unsigned int levels, - texture::Format format, - unsigned int flags, - bool enable_render_surfaces); - - // Sets data into a 2D texture resource. - virtual bool SetData(const Volume& volume, - unsigned int level, - texture::Face face, - unsigned int row_pitch, - unsigned int slice_pitch, - unsigned int size, - const void *data); - - // Gets data from a 2D texture resource. - virtual bool GetData(const Volume& volume, - unsigned int level, - texture::Face face, - unsigned int row_pitch, - unsigned int slice_pitch, - unsigned int size, - void *data); - - // Create a render surface which matches this texture type. - virtual bool CreateRenderSurface(int width, - int height, - int mip_level, - int side); - - virtual bool InstallFrameBufferObjects( - RenderSurfaceGL *gl_surface); - - private: - unsigned int width_; - unsigned int height_; - DISALLOW_COPY_AND_ASSIGN(Texture2DGL); -}; - -// A 3D texture resource for GL. -class Texture3DGL : public TextureGL { - public: - Texture3DGL(unsigned int levels, - texture::Format format, - bool enable_render_surfaces, - unsigned int flags, - unsigned int width, - unsigned int height, - unsigned int depth, - GLuint gl_texture) - : TextureGL(texture::kTexture3d, - levels, - format, - enable_render_surfaces, - flags, - gl_texture), - width_(width), - height_(height), - depth_(depth) {} - - // Creates a 3D texture resource. - static Texture3DGL *Create(unsigned int width, - unsigned int height, - unsigned int depth, - unsigned int levels, - texture::Format format, - unsigned int flags, - bool enable_render_surfaces); - - // Sets data into a 3D texture resource. - virtual bool SetData(const Volume& volume, - unsigned int level, - texture::Face face, - unsigned int row_pitch, - unsigned int slice_pitch, - unsigned int size, - const void *data); - - // Gets data from a 3D texture resource. - virtual bool GetData(const Volume& volume, - unsigned int level, - texture::Face face, - unsigned int row_pitch, - unsigned int slice_pitch, - unsigned int size, - void *data); - - // Create a render surface which matches this texture type. - virtual bool CreateRenderSurface(int width, - int height, - int mip_level, - int side); - - virtual bool InstallFrameBufferObjects( - RenderSurfaceGL *gl_surface); - - private: - unsigned int width_; - unsigned int height_; - unsigned int depth_; - DISALLOW_COPY_AND_ASSIGN(Texture3DGL); -}; - -// A cube map texture resource for GL. -class TextureCubeGL : public TextureGL { - public: - TextureCubeGL(unsigned int levels, - texture::Format format, - bool render_surface_enabled, - unsigned int flags, - unsigned int side, - GLuint gl_texture) - : TextureGL(texture::kTextureCube, - levels, - format, - render_surface_enabled, - flags, - gl_texture), - side_(side) {} - - // Creates a cube map texture resource. - static TextureCubeGL *Create(unsigned int side, - unsigned int levels, - texture::Format format, - unsigned int flags, - bool enable_render_surfaces); - - // Sets data into a cube map texture resource. - virtual bool SetData(const Volume& volume, - unsigned int level, - texture::Face face, - unsigned int row_pitch, - unsigned int slice_pitch, - unsigned int size, - const void *data); - - // Gets data from a cube map texture resource. - virtual bool GetData(const Volume& volume, - unsigned int level, - texture::Face face, - unsigned int row_pitch, - unsigned int slice_pitch, - unsigned int size, - void *data); - - // Create a render surface which matches this texture type. - virtual bool CreateRenderSurface(int width, - int height, - int mip_level, - int side); - - virtual bool InstallFrameBufferObjects( - RenderSurfaceGL *gl_surface); - - private: - unsigned int side_; - DISALLOW_COPY_AND_ASSIGN(TextureCubeGL); -}; - -} // namespace o3d -} // namespace command_buffer - -#endif // GPU_COMMAND_BUFFER_SERVICE_CROSS_GL_TEXTURE_GL_H_ |