summaryrefslogtreecommitdiffstats
path: root/o3d/command_buffer/service/texture_gl.h
diff options
context:
space:
mode:
authorapatrick@google.com <apatrick@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-11-11 18:33:08 +0000
committerapatrick@google.com <apatrick@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-11-11 18:33:08 +0000
commit6e8abf638e8bec81426f651b3e85a258f476f43a (patch)
tree6301f059616590e37d91eaf69bec685044b7fdf0 /o3d/command_buffer/service/texture_gl.h
parent1c8ba9c3a84724d3116a50cd96431c8bc6d9e848 (diff)
downloadchromium_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.h284
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_