Compiler - implement shader and program queries
TRAC #11599
Signed-off-by: Shannon Woods
Signed-off-by: Daniel Koch
Author:    Nicolas Capens

git-svn-id: https://angleproject.googlecode.com/svn/trunk@76 736b8ea6-26fd-11df-bfd4-992fa37f6226
diff --git a/src/libGLESv2/Program.h b/src/libGLESv2/Program.h
index 157e36e..0ce0add 100644
--- a/src/libGLESv2/Program.h
+++ b/src/libGLESv2/Program.h
@@ -55,6 +55,7 @@
 
     bool attachShader(Shader *shader);
     bool detachShader(Shader *shader);
+    int getAttachedShadersCount() const;
 
     IDirect3DPixelShader9 *getPixelShader();
     IDirect3DVertexShader9 *getVertexShader();
@@ -81,6 +82,8 @@
 
     void link();
     bool isLinked();
+    int getInfoLogLength() const;
+    void getInfoLog(GLsizei bufSize, GLsizei *length, char *infoLog);
 
     void flagForDeletion();
     bool isFlaggedForDeletion() const;
@@ -105,6 +108,8 @@
     bool applyUniformMatrix4fv(GLint location, GLsizei count, const GLfloat *value);
     bool applyUniform1iv(GLint location, GLsizei count, const GLint *v);
 
+    void appendToInfoLog(const char *info);
+
     FragmentShader *mFragmentShader;
     VertexShader *mVertexShader;
 
@@ -130,6 +135,7 @@
 
     bool mLinked;
     bool mDeleteStatus;   // Flag to indicate that the program can be deleted when no longer in use
+    char *mInfoLog;
 };
 }