summaryrefslogtreecommitdiffstats
path: root/gfx/angle/src/libANGLE/Program.h
diff options
context:
space:
mode:
authorwolfbeast <mcwerewolf@gmail.com>2018-07-11 23:29:50 +0200
committerwolfbeast <mcwerewolf@gmail.com>2018-07-11 23:31:02 +0200
commit70dd5e7c66b1fe3f82e5b4db2406050baba15f05 (patch)
tree3f012200ef3c934f33db1a4ef2b790fae3141860 /gfx/angle/src/libANGLE/Program.h
parent3b7ffb477eec078c7036c92c6a51bb5de6de4f28 (diff)
parent8481fa25d246f1968d0a254ee3c6cdd82c60781a (diff)
downloadUXP-70dd5e7c66b1fe3f82e5b4db2406050baba15f05.tar
UXP-70dd5e7c66b1fe3f82e5b4db2406050baba15f05.tar.gz
UXP-70dd5e7c66b1fe3f82e5b4db2406050baba15f05.tar.lz
UXP-70dd5e7c66b1fe3f82e5b4db2406050baba15f05.tar.xz
UXP-70dd5e7c66b1fe3f82e5b4db2406050baba15f05.zip
Merge branch 'ANGLE-rollback'
This resolves #624 Note: Cherry-picked some fixes on top of the ANGLE version that we want to keep.
Diffstat (limited to 'gfx/angle/src/libANGLE/Program.h')
-rwxr-xr-xgfx/angle/src/libANGLE/Program.h20
1 files changed, 7 insertions, 13 deletions
diff --git a/gfx/angle/src/libANGLE/Program.h b/gfx/angle/src/libANGLE/Program.h
index 18bec495f..03212a5cd 100755
--- a/gfx/angle/src/libANGLE/Program.h
+++ b/gfx/angle/src/libANGLE/Program.h
@@ -241,16 +241,13 @@ class Program final : angle::NonCopyable, public LabeledObject
void setLabel(const std::string &label) override;
const std::string &getLabel() const override;
- rx::ProgramImpl *getImplementation() const { return mProgram; }
+ rx::ProgramImpl *getImplementation() { return mProgram; }
+ const rx::ProgramImpl *getImplementation() const { return mProgram; }
- void attachShader(Shader *shader);
+ bool attachShader(Shader *shader);
bool detachShader(Shader *shader);
int getAttachedShadersCount() const;
- const Shader *getAttachedVertexShader() const { return mState.mAttachedVertexShader; }
- const Shader *getAttachedFragmentShader() const { return mState.mAttachedFragmentShader; }
- const Shader *getAttachedComputeShader() const { return mState.mAttachedComputeShader; }
-
void bindAttributeLocation(GLuint index, const char *name);
void bindUniformLocation(GLuint index, const char *name);
@@ -327,6 +324,7 @@ class Program final : angle::NonCopyable, public LabeledObject
void getUniformuiv(GLint location, GLuint *params) const;
void getActiveUniformBlockName(GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName) const;
+ void getActiveUniformBlockiv(GLuint uniformBlockIndex, GLenum pname, GLint *params) const;
GLuint getActiveUniformBlockCount() const;
GLint getActiveUniformBlockMaxLength() const;
@@ -460,15 +458,11 @@ class Program final : angle::NonCopyable, public LabeledObject
void defineUniformBlock(const sh::InterfaceBlock &interfaceBlock, GLenum shaderType);
- // Both these function update the cached uniform values and return a modified "count"
- // so that the uniform update doesn't overflow the uniform.
template <typename T>
- GLsizei setUniformInternal(GLint location, GLsizei count, int vectorSize, const T *v);
+ void setUniformInternal(GLint location, GLsizei count, const T *v);
+
template <size_t cols, size_t rows, typename T>
- GLsizei setMatrixUniformInternal(GLint location,
- GLsizei count,
- GLboolean transpose,
- const T *v);
+ void setMatrixUniformInternal(GLint location, GLsizei count, GLboolean transpose, const T *v);
template <typename DestT>
void getUniformInternal(GLint location, DestT *dataOut) const;