diff options
Diffstat (limited to 'chromium/third_party/angle/src/libGLESv2/Program.h')
-rw-r--r-- | chromium/third_party/angle/src/libGLESv2/Program.h | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/chromium/third_party/angle/src/libGLESv2/Program.h b/chromium/third_party/angle/src/libGLESv2/Program.h index a9db83403d9..7576be43c0f 100644 --- a/chromium/third_party/angle/src/libGLESv2/Program.h +++ b/chromium/third_party/angle/src/libGLESv2/Program.h @@ -1,5 +1,5 @@ // -// Copyright (c) 2002-2012 The ANGLE Project Authors. All rights reserved. +// Copyright (c) 2002-2014 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. // @@ -78,7 +78,7 @@ class Program bool link(); bool isLinked(); bool setProgramBinary(const void *binary, GLsizei length); - ProgramBinary *getProgramBinary(); + ProgramBinary *getProgramBinary() const; int getInfoLogLength() const; void getInfoLog(GLsizei bufSize, GLsizei *length, char *infoLog); @@ -92,6 +92,18 @@ class Program GLint getActiveUniformCount(); GLint getActiveUniformMaxLength(); + GLint getActiveUniformBlockCount(); + GLint getActiveUniformBlockMaxLength(); + + void bindUniformBlock(GLuint uniformBlockIndex, GLuint uniformBlockBinding); + GLuint getUniformBlockBinding(GLuint uniformBlockIndex) const; + + void setTransformFeedbackVaryings(GLsizei count, const GLchar *const *varyings, GLenum bufferMode); + void getTransformFeedbackVarying(GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name) const; + GLsizei getTransformFeedbackVaryingCount() const; + GLsizei getTransformFeedbackVaryingMaxLength() const; + GLenum getTransformFeedbackBufferMode() const; + void addRef(); void release(); unsigned int getRefCount() const; @@ -107,12 +119,18 @@ class Program DISALLOW_COPY_AND_ASSIGN(Program); void unlink(bool destroy = false); + void resetUniformBlockBindings(); FragmentShader *mFragmentShader; VertexShader *mVertexShader; AttributeBindings mAttributeBindings; + GLuint mUniformBlockBindings[IMPLEMENTATION_MAX_COMBINED_SHADER_UNIFORM_BUFFERS]; + + std::vector<std::string> mTransformFeedbackVaryings; + GLuint mTransformFeedbackBufferMode; + BindingPointer<ProgramBinary> mProgramBinary; bool mLinked; bool mDeleteStatus; // Flag to indicate that the program can be deleted when no longer in use |