Edit

kc3-lang/angle/src/libANGLE/renderer/null/TextureNULL.cpp

Branch :

  • Show log

    Commit

  • Author : Brandon Schade
    Date : 2020-10-07 19:26:01
    Hash : 1e494cae
    Message : Vulkan: Add support for EXT_copy_image Add support for GL_EXT_copy_image which allows image data transfer between image objects. This is implemented by using the vkCmdCopyImage API call. Bug: angleproject:3593 Test: dEQP-GLES31.functional.copy_image.* Change-Id: I30a34a8711b5d2e5834064d7453e03d6ec0df478 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2393955 Commit-Queue: Brandon Schade <b.schade@samsung.com> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>

  • src/libANGLE/renderer/null/TextureNULL.cpp
  • //
    // Copyright 2016 The ANGLE Project Authors. All rights reserved.
    // Use of this source code is governed by a BSD-style license that can be
    // found in the LICENSE file.
    //
    // TextureNULL.cpp:
    //    Implements the class methods for TextureNULL.
    //
    
    #include "libANGLE/renderer/null/TextureNULL.h"
    
    #include "common/debug.h"
    
    namespace rx
    {
    
    TextureNULL::TextureNULL(const gl::TextureState &state) : TextureImpl(state) {}
    
    TextureNULL::~TextureNULL() {}
    
    angle::Result TextureNULL::setImage(const gl::Context *context,
                                        const gl::ImageIndex &index,
                                        GLenum internalFormat,
                                        const gl::Extents &size,
                                        GLenum format,
                                        GLenum type,
                                        const gl::PixelUnpackState &unpack,
                                        gl::Buffer *unpackBuffer,
                                        const uint8_t *pixels)
    {
        // TODO(geofflang): Read all incoming pixel data (maybe hash it?) to make sure we don't read out
        // of bounds due to validation bugs.
        return angle::Result::Continue;
    }
    
    angle::Result TextureNULL::setSubImage(const gl::Context *context,
                                           const gl::ImageIndex &index,
                                           const gl::Box &area,
                                           GLenum format,
                                           GLenum type,
                                           const gl::PixelUnpackState &unpack,
                                           gl::Buffer *unpackBuffer,
                                           const uint8_t *pixels)
    {
        return angle::Result::Continue;
    }
    
    angle::Result TextureNULL::setCompressedImage(const gl::Context *context,
                                                  const gl::ImageIndex &index,
                                                  GLenum internalFormat,
                                                  const gl::Extents &size,
                                                  const gl::PixelUnpackState &unpack,
                                                  size_t imageSize,
                                                  const uint8_t *pixels)
    {
        return angle::Result::Continue;
    }
    
    angle::Result TextureNULL::setCompressedSubImage(const gl::Context *context,
                                                     const gl::ImageIndex &index,
                                                     const gl::Box &area,
                                                     GLenum format,
                                                     const gl::PixelUnpackState &unpack,
                                                     size_t imageSize,
                                                     const uint8_t *pixels)
    {
        return angle::Result::Continue;
    }
    
    angle::Result TextureNULL::copyImage(const gl::Context *context,
                                         const gl::ImageIndex &index,
                                         const gl::Rectangle &sourceArea,
                                         GLenum internalFormat,
                                         gl::Framebuffer *source)
    {
        return angle::Result::Continue;
    }
    
    angle::Result TextureNULL::copySubImage(const gl::Context *context,
                                            const gl::ImageIndex &index,
                                            const gl::Offset &destOffset,
                                            const gl::Rectangle &sourceArea,
                                            gl::Framebuffer *source)
    {
        return angle::Result::Continue;
    }
    
    angle::Result TextureNULL::copyTexture(const gl::Context *context,
                                           const gl::ImageIndex &index,
                                           GLenum internalFormat,
                                           GLenum type,
                                           GLint sourceLevel,
                                           bool unpackFlipY,
                                           bool unpackPremultiplyAlpha,
                                           bool unpackUnmultiplyAlpha,
                                           const gl::Texture *source)
    {
        return angle::Result::Continue;
    }
    
    angle::Result TextureNULL::copySubTexture(const gl::Context *context,
                                              const gl::ImageIndex &index,
                                              const gl::Offset &destOffset,
                                              GLint sourceLevel,
                                              const gl::Box &sourceBox,
                                              bool unpackFlipY,
                                              bool unpackPremultiplyAlpha,
                                              bool unpackUnmultiplyAlpha,
                                              const gl::Texture *source)
    {
        return angle::Result::Continue;
    }
    
    angle::Result TextureNULL::copyRenderbufferSubData(const gl::Context *context,
                                                       const gl::Renderbuffer *srcBuffer,
                                                       GLint srcLevel,
                                                       GLint srcX,
                                                       GLint srcY,
                                                       GLint srcZ,
                                                       GLint dstLevel,
                                                       GLint dstX,
                                                       GLint dstY,
                                                       GLint dstZ,
                                                       GLsizei srcWidth,
                                                       GLsizei srcHeight,
                                                       GLsizei srcDepth)
    {
        return angle::Result::Continue;
    }
    
    angle::Result TextureNULL::copyTextureSubData(const gl::Context *context,
                                                  const gl::Texture *srcTexture,
                                                  GLint srcLevel,
                                                  GLint srcX,
                                                  GLint srcY,
                                                  GLint srcZ,
                                                  GLint dstLevel,
                                                  GLint dstX,
                                                  GLint dstY,
                                                  GLint dstZ,
                                                  GLsizei srcWidth,
                                                  GLsizei srcHeight,
                                                  GLsizei srcDepth)
    {
        return angle::Result::Continue;
    }
    
    angle::Result TextureNULL::copyCompressedTexture(const gl::Context *context,
                                                     const gl::Texture *source)
    {
        return angle::Result::Continue;
    }
    
    angle::Result TextureNULL::setStorage(const gl::Context *context,
                                          gl::TextureType type,
                                          size_t levels,
                                          GLenum internalFormat,
                                          const gl::Extents &size)
    {
        return angle::Result::Continue;
    }
    
    angle::Result TextureNULL::setStorageExternalMemory(const gl::Context *context,
                                                        gl::TextureType type,
                                                        size_t levels,
                                                        GLenum internalFormat,
                                                        const gl::Extents &size,
                                                        gl::MemoryObject *memoryObject,
                                                        GLuint64 offset,
                                                        GLbitfield createFlags,
                                                        GLbitfield usageFlags)
    {
        return angle::Result::Continue;
    }
    
    angle::Result TextureNULL::setEGLImageTarget(const gl::Context *context,
                                                 gl::TextureType type,
                                                 egl::Image *image)
    {
        return angle::Result::Continue;
    }
    
    angle::Result TextureNULL::setImageExternal(const gl::Context *context,
                                                gl::TextureType type,
                                                egl::Stream *stream,
                                                const egl::Stream::GLTextureDescription &desc)
    {
        return angle::Result::Continue;
    }
    
    angle::Result TextureNULL::generateMipmap(const gl::Context *context)
    {
        return angle::Result::Continue;
    }
    
    angle::Result TextureNULL::setBaseLevel(const gl::Context *context, GLuint baseLevel)
    {
        return angle::Result::Continue;
    }
    
    angle::Result TextureNULL::bindTexImage(const gl::Context *context, egl::Surface *surface)
    {
        return angle::Result::Continue;
    }
    
    angle::Result TextureNULL::releaseTexImage(const gl::Context *context)
    {
        return angle::Result::Continue;
    }
    
    angle::Result TextureNULL::syncState(const gl::Context *context,
                                         const gl::Texture::DirtyBits &dirtyBits,
                                         gl::Command source)
    {
        return angle::Result::Continue;
    }
    
    angle::Result TextureNULL::setStorageMultisample(const gl::Context *context,
                                                     gl::TextureType type,
                                                     GLsizei samples,
                                                     GLint internalformat,
                                                     const gl::Extents &size,
                                                     bool fixedSampleLocations)
    {
        return angle::Result::Continue;
    }
    
    angle::Result TextureNULL::initializeContents(const gl::Context *context,
                                                  const gl::ImageIndex &imageIndex)
    {
        return angle::Result::Continue;
    }
    
    }  // namespace rx