1 #ifndef __gl2_h_ 2 #define __gl2_h_ 3 4 /* $Revision: 16803 $ on $Date:: 2012-02-02 09:49:18 -0800 #$ */ 5 6 #include <GLES2/gl2platform.h> 7 #include <cogl/cogl-gles2-types.h> 8 9 #ifdef __cplusplus 10 extern "C" { 11 #endif 12 13 /* 14 * This document is licensed under the SGI Free Software B License Version 15 * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ . 16 */ 17 18 /*------------------------------------------------------------------------- 19 * GL core functions. 20 *-----------------------------------------------------------------------*/ 21 22 GL_APICALL void GL_APIENTRY glActiveTexture (GLenum texture); 23 GL_APICALL void GL_APIENTRY glAttachShader (GLuint program, GLuint shader); 24 GL_APICALL void GL_APIENTRY glBindAttribLocation (GLuint program, GLuint index, const GLchar* name); 25 GL_APICALL void GL_APIENTRY glBindBuffer (GLenum target, GLuint buffer); 26 GL_APICALL void GL_APIENTRY glBindFramebuffer (GLenum target, GLuint framebuffer); 27 GL_APICALL void GL_APIENTRY glBindRenderbuffer (GLenum target, GLuint renderbuffer); 28 GL_APICALL void GL_APIENTRY glBindTexture (GLenum target, GLuint texture); 29 GL_APICALL void GL_APIENTRY glBlendColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha); 30 GL_APICALL void GL_APIENTRY glBlendEquation ( GLenum mode ); 31 GL_APICALL void GL_APIENTRY glBlendEquationSeparate (GLenum modeRGB, GLenum modeAlpha); 32 GL_APICALL void GL_APIENTRY glBlendFunc (GLenum sfactor, GLenum dfactor); 33 GL_APICALL void GL_APIENTRY glBlendFuncSeparate (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha); 34 GL_APICALL void GL_APIENTRY glBufferData (GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage); 35 GL_APICALL void GL_APIENTRY glBufferSubData (GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid* data); 36 GL_APICALL GLenum GL_APIENTRY glCheckFramebufferStatus (GLenum target); 37 GL_APICALL void GL_APIENTRY glClear (GLbitfield mask); 38 GL_APICALL void GL_APIENTRY glClearColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha); 39 GL_APICALL void GL_APIENTRY glClearDepthf (GLclampf depth); 40 GL_APICALL void GL_APIENTRY glClearStencil (GLint s); 41 GL_APICALL void GL_APIENTRY glColorMask (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha); 42 GL_APICALL void GL_APIENTRY glCompileShader (GLuint shader); 43 GL_APICALL void GL_APIENTRY glCompressedTexImage2D (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid* data); 44 GL_APICALL void GL_APIENTRY glCompressedTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid* data); 45 GL_APICALL void GL_APIENTRY glCopyTexImage2D (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border); 46 GL_APICALL void GL_APIENTRY glCopyTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height); 47 GL_APICALL GLuint GL_APIENTRY glCreateProgram (void); 48 GL_APICALL GLuint GL_APIENTRY glCreateShader (GLenum type); 49 GL_APICALL void GL_APIENTRY glCullFace (GLenum mode); 50 GL_APICALL void GL_APIENTRY glDeleteBuffers (GLsizei n, const GLuint* buffers); 51 GL_APICALL void GL_APIENTRY glDeleteFramebuffers (GLsizei n, const GLuint* framebuffers); 52 GL_APICALL void GL_APIENTRY glDeleteProgram (GLuint program); 53 GL_APICALL void GL_APIENTRY glDeleteRenderbuffers (GLsizei n, const GLuint* renderbuffers); 54 GL_APICALL void GL_APIENTRY glDeleteShader (GLuint shader); 55 GL_APICALL void GL_APIENTRY glDeleteTextures (GLsizei n, const GLuint* textures); 56 GL_APICALL void GL_APIENTRY glDepthFunc (GLenum func); 57 GL_APICALL void GL_APIENTRY glDepthMask (GLboolean flag); 58 GL_APICALL void GL_APIENTRY glDepthRangef (GLclampf zNear, GLclampf zFar); 59 GL_APICALL void GL_APIENTRY glDetachShader (GLuint program, GLuint shader); 60 GL_APICALL void GL_APIENTRY glDisable (GLenum cap); 61 GL_APICALL void GL_APIENTRY glDisableVertexAttribArray (GLuint index); 62 GL_APICALL void GL_APIENTRY glDrawArrays (GLenum mode, GLint first, GLsizei count); 63 GL_APICALL void GL_APIENTRY glDrawElements (GLenum mode, GLsizei count, GLenum type, const GLvoid* indices); 64 GL_APICALL void GL_APIENTRY glEnable (GLenum cap); 65 GL_APICALL void GL_APIENTRY glEnableVertexAttribArray (GLuint index); 66 GL_APICALL void GL_APIENTRY glFinish (void); 67 GL_APICALL void GL_APIENTRY glFlush (void); 68 GL_APICALL void GL_APIENTRY glFramebufferRenderbuffer (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); 69 GL_APICALL void GL_APIENTRY glFramebufferTexture2D (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); 70 GL_APICALL void GL_APIENTRY glFrontFace (GLenum mode); 71 GL_APICALL void GL_APIENTRY glGenBuffers (GLsizei n, GLuint* buffers); 72 GL_APICALL void GL_APIENTRY glGenerateMipmap (GLenum target); 73 GL_APICALL void GL_APIENTRY glGenFramebuffers (GLsizei n, GLuint* framebuffers); 74 GL_APICALL void GL_APIENTRY glGenRenderbuffers (GLsizei n, GLuint* renderbuffers); 75 GL_APICALL void GL_APIENTRY glGenTextures (GLsizei n, GLuint* textures); 76 GL_APICALL void GL_APIENTRY glGetActiveAttrib (GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name); 77 GL_APICALL void GL_APIENTRY glGetActiveUniform (GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name); 78 GL_APICALL void GL_APIENTRY glGetAttachedShaders (GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders); 79 GL_APICALL int GL_APIENTRY glGetAttribLocation (GLuint program, const GLchar* name); 80 GL_APICALL void GL_APIENTRY glGetBooleanv (GLenum pname, GLboolean* params); 81 GL_APICALL void GL_APIENTRY glGetBufferParameteriv (GLenum target, GLenum pname, GLint* params); 82 GL_APICALL GLenum GL_APIENTRY glGetError (void); 83 GL_APICALL void GL_APIENTRY glGetFloatv (GLenum pname, GLfloat* params); 84 GL_APICALL void GL_APIENTRY glGetFramebufferAttachmentParameteriv (GLenum target, GLenum attachment, GLenum pname, GLint* params); 85 GL_APICALL void GL_APIENTRY glGetIntegerv (GLenum pname, GLint* params); 86 GL_APICALL void GL_APIENTRY glGetProgramiv (GLuint program, GLenum pname, GLint* params); 87 GL_APICALL void GL_APIENTRY glGetProgramInfoLog (GLuint program, GLsizei bufsize, GLsizei* length, GLchar* infolog); 88 GL_APICALL void GL_APIENTRY glGetRenderbufferParameteriv (GLenum target, GLenum pname, GLint* params); 89 GL_APICALL void GL_APIENTRY glGetShaderiv (GLuint shader, GLenum pname, GLint* params); 90 GL_APICALL void GL_APIENTRY glGetShaderInfoLog (GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* infolog); 91 GL_APICALL void GL_APIENTRY glGetShaderPrecisionFormat (GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision); 92 GL_APICALL void GL_APIENTRY glGetShaderSource (GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* source); 93 GL_APICALL const GLubyte* GL_APIENTRY glGetString (GLenum name); 94 GL_APICALL void GL_APIENTRY glGetTexParameterfv (GLenum target, GLenum pname, GLfloat* params); 95 GL_APICALL void GL_APIENTRY glGetTexParameteriv (GLenum target, GLenum pname, GLint* params); 96 GL_APICALL void GL_APIENTRY glGetUniformfv (GLuint program, GLint location, GLfloat* params); 97 GL_APICALL void GL_APIENTRY glGetUniformiv (GLuint program, GLint location, GLint* params); 98 GL_APICALL int GL_APIENTRY glGetUniformLocation (GLuint program, const GLchar* name); 99 GL_APICALL void GL_APIENTRY glGetVertexAttribfv (GLuint index, GLenum pname, GLfloat* params); 100 GL_APICALL void GL_APIENTRY glGetVertexAttribiv (GLuint index, GLenum pname, GLint* params); 101 GL_APICALL void GL_APIENTRY glGetVertexAttribPointerv (GLuint index, GLenum pname, GLvoid** pointer); 102 GL_APICALL void GL_APIENTRY glHint (GLenum target, GLenum mode); 103 GL_APICALL GLboolean GL_APIENTRY glIsBuffer (GLuint buffer); 104 GL_APICALL GLboolean GL_APIENTRY glIsEnabled (GLenum cap); 105 GL_APICALL GLboolean GL_APIENTRY glIsFramebuffer (GLuint framebuffer); 106 GL_APICALL GLboolean GL_APIENTRY glIsProgram (GLuint program); 107 GL_APICALL GLboolean GL_APIENTRY glIsRenderbuffer (GLuint renderbuffer); 108 GL_APICALL GLboolean GL_APIENTRY glIsShader (GLuint shader); 109 GL_APICALL GLboolean GL_APIENTRY glIsTexture (GLuint texture); 110 GL_APICALL void GL_APIENTRY glLineWidth (GLfloat width); 111 GL_APICALL void GL_APIENTRY glLinkProgram (GLuint program); 112 GL_APICALL void GL_APIENTRY glPixelStorei (GLenum pname, GLint param); 113 GL_APICALL void GL_APIENTRY glPolygonOffset (GLfloat factor, GLfloat units); 114 GL_APICALL void GL_APIENTRY glReadPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* pixels); 115 GL_APICALL void GL_APIENTRY glReleaseShaderCompiler (void); 116 GL_APICALL void GL_APIENTRY glRenderbufferStorage (GLenum target, GLenum internalformat, GLsizei width, GLsizei height); 117 GL_APICALL void GL_APIENTRY glSampleCoverage (GLclampf value, GLboolean invert); 118 GL_APICALL void GL_APIENTRY glScissor (GLint x, GLint y, GLsizei width, GLsizei height); 119 GL_APICALL void GL_APIENTRY glShaderBinary (GLsizei n, const GLuint* shaders, GLenum binaryformat, const GLvoid* binary, GLsizei length); 120 GL_APICALL void GL_APIENTRY glShaderSource (GLuint shader, GLsizei count, const GLchar* const* string, const GLint* length); 121 GL_APICALL void GL_APIENTRY glStencilFunc (GLenum func, GLint ref, GLuint mask); 122 GL_APICALL void GL_APIENTRY glStencilFuncSeparate (GLenum face, GLenum func, GLint ref, GLuint mask); 123 GL_APICALL void GL_APIENTRY glStencilMask (GLuint mask); 124 GL_APICALL void GL_APIENTRY glStencilMaskSeparate (GLenum face, GLuint mask); 125 GL_APICALL void GL_APIENTRY glStencilOp (GLenum fail, GLenum zfail, GLenum zpass); 126 GL_APICALL void GL_APIENTRY glStencilOpSeparate (GLenum face, GLenum fail, GLenum zfail, GLenum zpass); 127 GL_APICALL void GL_APIENTRY glTexImage2D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid* pixels); 128 GL_APICALL void GL_APIENTRY glTexParameterf (GLenum target, GLenum pname, GLfloat param); 129 GL_APICALL void GL_APIENTRY glTexParameterfv (GLenum target, GLenum pname, const GLfloat* params); 130 GL_APICALL void GL_APIENTRY glTexParameteri (GLenum target, GLenum pname, GLint param); 131 GL_APICALL void GL_APIENTRY glTexParameteriv (GLenum target, GLenum pname, const GLint* params); 132 GL_APICALL void GL_APIENTRY glTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid* pixels); 133 GL_APICALL void GL_APIENTRY glUniform1f (GLint location, GLfloat x); 134 GL_APICALL void GL_APIENTRY glUniform1fv (GLint location, GLsizei count, const GLfloat* v); 135 GL_APICALL void GL_APIENTRY glUniform1i (GLint location, GLint x); 136 GL_APICALL void GL_APIENTRY glUniform1iv (GLint location, GLsizei count, const GLint* v); 137 GL_APICALL void GL_APIENTRY glUniform2f (GLint location, GLfloat x, GLfloat y); 138 GL_APICALL void GL_APIENTRY glUniform2fv (GLint location, GLsizei count, const GLfloat* v); 139 GL_APICALL void GL_APIENTRY glUniform2i (GLint location, GLint x, GLint y); 140 GL_APICALL void GL_APIENTRY glUniform2iv (GLint location, GLsizei count, const GLint* v); 141 GL_APICALL void GL_APIENTRY glUniform3f (GLint location, GLfloat x, GLfloat y, GLfloat z); 142 GL_APICALL void GL_APIENTRY glUniform3fv (GLint location, GLsizei count, const GLfloat* v); 143 GL_APICALL void GL_APIENTRY glUniform3i (GLint location, GLint x, GLint y, GLint z); 144 GL_APICALL void GL_APIENTRY glUniform3iv (GLint location, GLsizei count, const GLint* v); 145 GL_APICALL void GL_APIENTRY glUniform4f (GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w); 146 GL_APICALL void GL_APIENTRY glUniform4fv (GLint location, GLsizei count, const GLfloat* v); 147 GL_APICALL void GL_APIENTRY glUniform4i (GLint location, GLint x, GLint y, GLint z, GLint w); 148 GL_APICALL void GL_APIENTRY glUniform4iv (GLint location, GLsizei count, const GLint* v); 149 GL_APICALL void GL_APIENTRY glUniformMatrix2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); 150 GL_APICALL void GL_APIENTRY glUniformMatrix3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); 151 GL_APICALL void GL_APIENTRY glUniformMatrix4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); 152 GL_APICALL void GL_APIENTRY glUseProgram (GLuint program); 153 GL_APICALL void GL_APIENTRY glValidateProgram (GLuint program); 154 GL_APICALL void GL_APIENTRY glVertexAttrib1f (GLuint indx, GLfloat x); 155 GL_APICALL void GL_APIENTRY glVertexAttrib1fv (GLuint indx, const GLfloat* values); 156 GL_APICALL void GL_APIENTRY glVertexAttrib2f (GLuint indx, GLfloat x, GLfloat y); 157 GL_APICALL void GL_APIENTRY glVertexAttrib2fv (GLuint indx, const GLfloat* values); 158 GL_APICALL void GL_APIENTRY glVertexAttrib3f (GLuint indx, GLfloat x, GLfloat y, GLfloat z); 159 GL_APICALL void GL_APIENTRY glVertexAttrib3fv (GLuint indx, const GLfloat* values); 160 GL_APICALL void GL_APIENTRY glVertexAttrib4f (GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w); 161 GL_APICALL void GL_APIENTRY glVertexAttrib4fv (GLuint indx, const GLfloat* values); 162 GL_APICALL void GL_APIENTRY glVertexAttribPointer (GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid* ptr); 163 GL_APICALL void GL_APIENTRY glViewport (GLint x, GLint y, GLsizei width, GLsizei height); 164 165 #ifdef __cplusplus 166 } 167 #endif 168 169 #endif /* __gl2_h_ */ 170