| 
									
										
										
										
											2024-12-05 20:56:18 -07:00
										 |  |  | #import <WebGL/Types.idl> | 
					
						
							|  |  |  | #import <WebGL/WebGLRenderingContextOverloads.idl> | 
					
						
							|  |  |  | #import <WebGL/WebGLUniformLocation.idl> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // https://registry.khronos.org/webgl/specs/latest/2.0/#3.7 | 
					
						
							|  |  |  | interface mixin WebGL2RenderingContextOverloads { | 
					
						
							|  |  |  |     // WebGL1: | 
					
						
							| 
									
										
										
										
											2024-12-13 14:06:40 +00:00
										 |  |  |     // FIXME: BufferSource is really a AllowSharedBufferSource | 
					
						
							| 
									
										
										
										
											2024-12-06 22:19:59 +01:00
										 |  |  |     undefined bufferData(GLenum target, GLsizeiptr size, GLenum usage); | 
					
						
							|  |  |  |     undefined bufferData(GLenum target, BufferSource? srcData, GLenum usage); | 
					
						
							| 
									
										
										
										
											2024-12-13 14:06:40 +00:00
										 |  |  |     undefined bufferSubData(GLenum target, GLintptr dstByteOffset, BufferSource srcData); | 
					
						
							| 
									
										
										
										
											2024-12-05 20:56:18 -07:00
										 |  |  |     // WebGL2: | 
					
						
							| 
									
										
										
										
											2024-12-16 19:22:41 +00:00
										 |  |  |     undefined bufferData(GLenum target, [AllowShared] ArrayBufferView srcData, GLenum usage, unsigned long long srcOffset, optional GLuint length = 0); | 
					
						
							| 
									
										
										
										
											2024-12-16 19:24:13 +00:00
										 |  |  |     undefined bufferSubData(GLenum target, GLintptr dstByteOffset, [AllowShared] ArrayBufferView srcData, unsigned long long srcOffset, optional GLuint length = 0); | 
					
						
							| 
									
										
										
										
											2024-12-05 20:56:18 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  |     // WebGL1 legacy entrypoints: | 
					
						
							| 
									
										
										
										
											2024-12-06 22:19:59 +01:00
										 |  |  |     undefined texImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, [AllowShared] ArrayBufferView? pixels); | 
					
						
							| 
									
										
										
										
											2024-12-05 20:56:18 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  |     // May throw DOMException | 
					
						
							| 
									
										
										
										
											2024-12-06 22:19:59 +01:00
										 |  |  |     undefined texImage2D(GLenum target, GLint level, GLint internalformat, GLenum format, GLenum type, TexImageSource source); | 
					
						
							| 
									
										
										
										
											2024-12-05 20:56:18 -07:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-12-13 14:42:20 +00:00
										 |  |  |     undefined texSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, [AllowShared] ArrayBufferView? pixels); | 
					
						
							| 
									
										
										
										
											2024-12-05 20:56:18 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  |     // May throw DOMException | 
					
						
							| 
									
										
										
										
											2024-12-24 18:55:22 +00:00
										 |  |  |     undefined texSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLenum format, GLenum type, TexImageSource source); | 
					
						
							| 
									
										
										
										
											2024-12-05 20:56:18 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  |     // WebGL2 entrypoints: | 
					
						
							|  |  |  |     [FIXME] undefined texImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, GLintptr pboOffset); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     // May throw DOMException | 
					
						
							| 
									
										
										
										
											2024-12-24 18:55:22 +00:00
										 |  |  |     undefined texImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, TexImageSource source); | 
					
						
							| 
									
										
										
										
											2024-12-05 20:56:18 -07:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-12-13 18:57:11 +00:00
										 |  |  |     undefined texImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, [AllowShared] ArrayBufferView srcData, unsigned long long srcOffset); | 
					
						
							| 
									
										
										
										
											2024-12-05 20:56:18 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  |     [FIXME] undefined texSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, GLintptr pboOffset); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     // May throw DOMException | 
					
						
							| 
									
										
										
										
											2024-12-24 18:55:22 +00:00
										 |  |  |     undefined texSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, TexImageSource source); | 
					
						
							| 
									
										
										
										
											2024-12-13 18:57:00 +00:00
										 |  |  |     undefined texSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, [AllowShared] ArrayBufferView srcData, unsigned long long srcOffset); | 
					
						
							| 
									
										
										
										
											2024-12-05 20:56:18 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  |     [FIXME] undefined compressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, GLintptr offset); | 
					
						
							| 
									
										
										
										
											2025-01-28 17:26:23 +00:00
										 |  |  |     undefined compressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, [AllowShared] ArrayBufferView srcData, optional unsigned long long srcOffset = 0, optional GLuint srcLengthOverride = 0); | 
					
						
							| 
									
										
										
										
											2024-12-05 20:56:18 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  |     [FIXME] undefined compressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, GLintptr offset); | 
					
						
							| 
									
										
										
										
											2025-01-28 17:26:23 +00:00
										 |  |  |     undefined compressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, [AllowShared] ArrayBufferView srcData, optional unsigned long long srcOffset = 0, optional GLuint srcLengthOverride = 0); | 
					
						
							| 
									
										
										
										
											2024-12-05 20:56:18 -07:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-12-10 09:36:54 +01:00
										 |  |  |     undefined uniform1fv(WebGLUniformLocation? location, Float32List v, optional unsigned long long srcOffset = 0, optional GLuint srcLength = 0); | 
					
						
							|  |  |  |     undefined uniform2fv(WebGLUniformLocation? location, Float32List v, optional unsigned long long srcOffset = 0, optional GLuint srcLength = 0); | 
					
						
							|  |  |  |     undefined uniform3fv(WebGLUniformLocation? location, Float32List v, optional unsigned long long srcOffset = 0, optional GLuint srcLength = 0); | 
					
						
							|  |  |  |     undefined uniform4fv(WebGLUniformLocation? location, Float32List v, optional unsigned long long srcOffset = 0, optional GLuint srcLength = 0); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     undefined uniform1iv(WebGLUniformLocation? location, Int32List v, optional unsigned long long srcOffset = 0, optional GLuint srcLength = 0); | 
					
						
							|  |  |  |     undefined uniform2iv(WebGLUniformLocation? location, Int32List v, optional unsigned long long srcOffset = 0, optional GLuint srcLength = 0); | 
					
						
							|  |  |  |     undefined uniform3iv(WebGLUniformLocation? location, Int32List v, optional unsigned long long srcOffset = 0, optional GLuint srcLength = 0); | 
					
						
							|  |  |  |     undefined uniform4iv(WebGLUniformLocation? location, Int32List v, optional unsigned long long srcOffset = 0, optional GLuint srcLength = 0); | 
					
						
							| 
									
										
										
										
											2024-12-05 20:56:18 -07:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-12-13 14:06:04 +00:00
										 |  |  |     undefined uniformMatrix2fv(WebGLUniformLocation? location, GLboolean transpose, Float32List data, optional unsigned long long srcOffset = 0, optional GLuint srcLength = 0); | 
					
						
							|  |  |  |     undefined uniformMatrix3fv(WebGLUniformLocation? location, GLboolean transpose, Float32List data, optional unsigned long long srcOffset = 0, optional GLuint srcLength = 0); | 
					
						
							|  |  |  |     undefined uniformMatrix4fv(WebGLUniformLocation? location, GLboolean transpose, Float32List data, optional unsigned long long srcOffset = 0, optional GLuint srcLength = 0); | 
					
						
							| 
									
										
										
										
											2024-12-05 20:56:18 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  |     // Reading back pixels | 
					
						
							|  |  |  |     // WebGL1: | 
					
						
							| 
									
										
										
										
											2024-12-10 04:58:13 +01:00
										 |  |  |     undefined readPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, [AllowShared] ArrayBufferView? pixels); | 
					
						
							| 
									
										
										
										
											2024-12-05 20:56:18 -07:00
										 |  |  |     // WebGL2: | 
					
						
							|  |  |  |     [FIXME] undefined readPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLintptr offset); | 
					
						
							|  |  |  |     [FIXME] undefined readPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, [AllowShared] ArrayBufferView dstData, unsigned long long dstOffset); | 
					
						
							|  |  |  | }; |