1!gles_extensions
2
3# Common GLES 1.x / 2.0 extension functions
4GLboolean glIsRenderbufferEXT(GLuint renderbuffer);
5void glBindRenderbufferEXT(GLenum target, GLuint renderbuffer);
6void glDeleteRenderbuffersEXT(GLsizei n, const GLuint *renderbuffers);
7void glGenRenderbuffersEXT(GLsizei n, GLuint *renderbuffers);
8void glRenderbufferStorageEXT(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
9void glGetRenderbufferParameterivEXT(GLenum target, GLenum pname, GLint *params);
10GLboolean glIsFramebufferEXT(GLuint framebuffer);
11void glBindFramebufferEXT(GLenum target, GLuint framebuffer);
12void glDeleteFramebuffersEXT(GLsizei n, const GLuint *framebuffers);
13void glGenFramebuffersEXT(GLsizei n, GLuint *framebuffers);
14GLenum glCheckFramebufferStatusEXT(GLenum target);
15void glFramebufferTexture1DEXT(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
16void glFramebufferTexture2DEXT(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
17void glFramebufferTexture3DEXT(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
18void glFramebufferRenderbufferEXT(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
19void glGetFramebufferAttachmentParameterivEXT(GLenum target, GLenum attachment, GLenum pname, GLint *params);
20void glGenerateMipmapEXT(GLenum target);
21GLenum glGetGraphicsResetStatusEXT(void);
22void glReadnPixelsEXT(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data);
23void glGetnUniformfvEXT(GLuint program, GLint location, GLsizei bufSize, float *params);
24void glGetnUniformivEXT(GLuint program, GLint location, GLsizei bufSize, GLint *params);
25
26# The following extensions are used by GLESv1Dispatch and GLESv2Dispatch, but not by GLDispatch
27void glEGLImageTargetTexture2DOES(GLenum target, GLeglImageOES image);
28void glEGLImageTargetRenderbufferStorageOES(GLenum target, GLeglImageOES image);
29
30# For benchmarking draw call overhead
31void glDrawArraysNullAEMU(GLenum mode, GLint first, GLsizei count);
32void glDrawElementsNullAEMU(GLenum mode, GLsizei count, GLenum type, const void *indices);
33
34# Vulkan/GL interop
35# https://www.khronos.org/registry/OpenGL/extensions/EXT/EXT_external_objects.txt
36# Common between GL_EXT_memory_object and GL_EXT_semaphore
37void glGetUnsignedBytevEXT(GLenum pname, GLubyte* data);
38void glGetUnsignedBytei_vEXT(GLenum target, GLuint index, GLubyte* data);
39
40# GL_EXT_memory_object
41void glImportMemoryFdEXT(GLuint memory, GLuint64 size, GLenum handleType, GLint fd);
42void glImportMemoryWin32HandleEXT(GLuint memory, GLuint64 size, GLenum handleType, void* handle);
43void glDeleteMemoryObjectsEXT(GLsizei n, const GLuint *memoryObjects);
44GLboolean glIsMemoryObjectEXT(GLuint memoryObject);
45void glCreateMemoryObjectsEXT(GLsizei n, GLuint *memoryObjects);
46void glMemoryObjectParameterivEXT(GLuint memoryObject, GLenum pname, const GLint *params);
47void glGetMemoryObjectParameterivEXT(GLuint memoryObject, GLenum pname, GLint *params);
48void glTexStorageMem2DEXT(GLenum target, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLuint memory, GLuint64 offset);
49void glTexStorageMem2DMultisampleEXT(GLenum target, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset);
50void glTexStorageMem3DEXT(GLenum target, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLuint memory, GLuint64 offset);
51void glTexStorageMem3DMultisampleEXT(GLenum target, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset);
52void glBufferStorageMemEXT(GLenum target, GLsizeiptr size, GLuint memory, GLuint64 offset);
53void glTexParameteriHOST(GLenum target, GLenum pname, GLint param);
54
55# Not included: direct-state-access, 1D function pointers
56
57# GL_EXT_semaphore
58void glImportSemaphoreFdEXT(GLuint semaphore, GLenum handleType, GLint fd);
59void glImportSemaphoreWin32HandleEXT(GLuint semaphore, GLenum handleType, void* handle);
60void glGenSemaphoresEXT(GLsizei n, GLuint *semaphores);
61void glDeleteSemaphoresEXT(GLsizei n, const GLuint *semaphores);
62GLboolean glIsSemaphoreEXT(GLuint semaphore);
63void glSemaphoreParameterui64vEXT(GLuint semaphore, GLenum pname, const GLuint64 *params);
64void glGetSemaphoreParameterui64vEXT(GLuint semaphore, GLenum pname, GLuint64 *params);
65void glWaitSemaphoreEXT(GLuint semaphore, GLuint numBufferBarriers, const GLuint *buffers, GLuint numTextureBarriers, const GLuint *textures, const GLenum *srcLayouts);
66void glSignalSemaphoreEXT(GLuint semaphore, GLuint numBufferBarriers, const GLuint *buffers, GLuint numTextureBarriers, const GLuint *textures, const GLenum *dstLayouts);
67
68# CUDA interop
69GLuint glGetGlobalTexName(GLuint localTexName);
70