Edit

kc3-lang/angle/src/libGLESv2/validationES3.h

Branch :

  • Show log

    Commit

  • Author : Jamie Madill
    Date : 2014-07-03 10:38:57
    Hash : 55ec3b11
    Message : Refactor common attachment validation to base method. Split the validation of FBO attachment binding to common methods and separate logic for layers and for 2D attachments. BUG=angle:571 Change-Id: I9a59055cca60dd853311751be355440ad1e5ead0 Reviewed-on: https://chromium-review.googlesource.com/205605 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>

  • src/libGLESv2/validationES3.h
  • //
    // Copyright (c) 2013 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.
    //
    
    // validationES3.h: Validation functions for OpenGL ES 3.0 entry point parameters
    
    #ifndef LIBGLESV2_VALIDATION_ES3_H
    #define LIBGLESV2_VALIDATION_ES3_H
    
    namespace gl
    {
    
    class Context;
    
    bool ValidateES3TexImageParameters(gl::Context *context, GLenum target, GLint level, GLenum internalformat, bool isCompressed, bool isSubImage,
                                       GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth,
                                       GLint border, GLenum format, GLenum type, const GLvoid *pixels);
    
    bool ValidateES3CopyTexImageParameters(gl::Context *context, GLenum target, GLint level, GLenum internalformat,
                                           bool isSubImage, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y,
                                           GLsizei width, GLsizei height, GLint border);
    
    bool ValidateES3TexStorageParameters(gl::Context *context, GLenum target, GLsizei levels, GLenum internalformat,
                                         GLsizei width, GLsizei height, GLsizei depth);
    
    bool ValidateFramebufferTextureLayer(const gl::Context *context, GLenum target, GLenum attachment,
                                         GLuint texture, GLint level, GLint layer);
    
    bool ValidES3ReadFormatType(gl::Context *context, GLenum internalFormat, GLenum format, GLenum type);
    
    bool ValidateInvalidateFramebufferParameters(gl::Context *context, GLenum target, GLsizei numAttachments,
                                                 const GLenum* attachments);
    
    bool ValidateClearBuffer(const gl::Context *context);
    
    }
    
    #endif // LIBGLESV2_VALIDATION_ES3_H