// ----------------------------------------------------------------------------- // file="OpenGLFunction.v4_3" // Project: StgSharp // Copyright (c) Nitload. // SPDX-License-Identifier: MIT // ----------------------------------------------------------------------------- // // Generated by StgSharp.GenerateGL. // Desktop OpenGL 4.3 core-profile forwarding methods. // using StgSharp.Mathematics.Numeric.Graphics; using System; using System.Runtime.CompilerServices; namespace StgSharp.Graphics.OpenGL { public unsafe partial class OpenGLFunction { /// /// Forwards to the native OpenGL entry point. /// void glClearBufferData(GLenum target, GLenum internalformat, GLenum format, GLenum type, const void *data); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void ClearBufferData(BufferStorageTarget target, SizedInternalFormat internalFormat, PixelFormat format, PixelType type, void* data) { __context->glClearBufferData((uint)target, (uint)internalFormat, (uint)format, (uint)type, data); } /// /// Forwards to the native OpenGL entry point. /// void glClearBufferSubData(GLenum target, GLenum internalformat, GLintptr offset, GLsizeiptr size, GLenum format, GLenum type, const void *data); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void ClearBufferSubData(BufferTarget target, SizedInternalFormat internalFormat, nint offset, nint size, PixelFormat format, PixelType type, void* data) { __context->glClearBufferSubData((uint)target, (uint)internalFormat, offset, size, (uint)format, (uint)type, data); } /// /// Forwards to the native OpenGL entry point. /// void glDispatchCompute(GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void DispatchCompute(uint num_groups_x, uint num_groups_y, uint num_groups_z) { __context->glDispatchCompute(num_groups_x, num_groups_y, num_groups_z); } /// /// Forwards to the native OpenGL entry point. /// void glDispatchComputeIndirect(GLintptr indirect); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void DispatchComputeIndirect(nint indirect) { __context->glDispatchComputeIndirect(indirect); } /// /// Forwards to the native OpenGL entry point. /// void glCopyImageSubData(GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei srcWidth, GLsizei srcHeight, GLsizei srcDepth); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void CopyImageSubData(uint srcName, CopyImageSubDataTarget srcTarget, int srcLevel, int srcX, int srcY, int srcZ, uint dstName, CopyImageSubDataTarget dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int srcWidth, int srcHeight, int srcDepth) { __context->glCopyImageSubData(srcName, (uint)srcTarget, srcLevel, srcX, srcY, srcZ, dstName, (uint)dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth); } /// /// Forwards to the native OpenGL entry point. /// void glFramebufferParameteri(GLenum target, GLenum pname, GLint param); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void FrameBufferParameteri(FrameBufferTarget target, FrameBufferParameterName pName, int param) { __context->glFramebufferParameteri((uint)target, (uint)pName, param); } /// /// Forwards to the native OpenGL entry point. /// void glGetFramebufferParameteriv(GLenum target, GLenum pname, GLint *params); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void GetFrameBufferParameteriv(FrameBufferTarget target, FrameBufferAttachmentParameterName pName, int* @params) { __context->glGetFramebufferParameteriv((uint)target, (uint)pName, @params); } /// /// Forwards to the native OpenGL entry point. /// void glGetInternalformati64v(GLenum target, GLenum internalformat, GLenum pname, GLsizei count, GLint64 *params); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void GetInternalFormat(TextureTarget target, InternalFormat internalFormat, InternalFormatPName pName, int count, long* @params) { __context->glGetInternalformati64v((uint)target, (uint)internalFormat, (uint)pName, count, @params); } /// /// Forwards to the native OpenGL entry point. /// void glInvalidateTexSubImage(GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void InvalidateTexSubImage(GlHandle texture, int level, int xOffset, int yOffset, int zOffset, int width, int height, int depth) { __context->glInvalidateTexSubImage(texture.Value, level, xOffset, yOffset, zOffset, width, height, depth); } /// /// Forwards to the native OpenGL entry point. /// void glInvalidateTexImage(GLuint texture, GLint level); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void InvalidateTexImage(GlHandle texture, int level) { __context->glInvalidateTexImage(texture.Value, level); } /// /// Forwards to the native OpenGL entry point. /// void glInvalidateBufferSubData(GLuint buffer, GLintptr offset, GLsizeiptr length); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void InvalidateBufferSubData(GlHandle buffer, nint offset, nint length) { __context->glInvalidateBufferSubData(buffer.Value, offset, length); } /// /// Forwards to the native OpenGL entry point. /// void glInvalidateBufferData(GLuint buffer); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void InvalidateBufferData(GlHandle buffer) { __context->glInvalidateBufferData(buffer.Value); } /// /// Forwards to the native OpenGL entry point. /// void glInvalidateFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void InvalidateFrameBuffer(FrameBufferTarget target, int numAttachments, InvalidateFrameBufferAttachment* attachments) { __context->glInvalidateFramebuffer((uint)target, numAttachments, (uint*)attachments); } /// /// Forwards to the native OpenGL entry point. /// void glInvalidateSubFramebuffer(GLenum target, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void InvalidateSubFrameBuffer(FrameBufferTarget target, int numAttachments, InvalidateFrameBufferAttachment* attachments, int x, int y, int width, int height) { __context->glInvalidateSubFramebuffer((uint)target, numAttachments, (uint*)attachments, x, y, width, height); } /// /// Forwards to the native OpenGL entry point. /// void glMultiDrawArraysIndirect(GLenum mode, const void *indirect, GLsizei drawcount, GLsizei stride); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void MultiDrawArraysIndirect(PrimitiveType mode, void* indirect, int drawcount, int stride) { __context->glMultiDrawArraysIndirect((uint)mode, indirect, drawcount, stride); } /// /// Forwards to the native OpenGL entry point. /// void glMultiDrawElementsIndirect(GLenum mode, GLenum type, const void *indirect, GLsizei drawcount, GLsizei stride); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void MultiDrawElementsIndirect(PrimitiveType mode, DrawElementsType type, void* indirect, int drawcount, int stride) { __context->glMultiDrawElementsIndirect((uint)mode, (uint)type, indirect, drawcount, stride); } /// /// Forwards to the native OpenGL entry point. /// void glGetProgramInterfaceiv(GLuint program, GLenum programInterface, GLenum pname, GLint *params); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void GetProgramInterfaceiv(GlHandle program, ProgramInterface programInterface, ProgramInterfacePName pName, int* @params) { __context->glGetProgramInterfaceiv(program.Value, (uint)programInterface, (uint)pName, @params); } /// /// Forwards to the native OpenGL entry point. /// GLuint glGetProgramResourceIndex(GLuint program, GLenum programInterface, const GLchar *name); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public uint GetProgramResourceIndex(GlHandle program, ProgramInterface programInterface, byte* name) { return __context->glGetProgramResourceIndex(program.Value, (uint)programInterface, name); } /// /// Forwards to the native OpenGL entry point. /// void glGetProgramResourceName(GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei *length, GLchar *name); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void GetProgramResourceName(GlHandle program, ProgramInterface programInterface, uint index, int bufSize, int* length, byte* name) { __context->glGetProgramResourceName(program.Value, (uint)programInterface, index, bufSize, length, name); } /// /// Forwards to the native OpenGL entry point. /// void glGetProgramResourceiv(GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum *props, GLsizei count, GLsizei *length, GLint *params); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void GetProgramResourceiv(GlHandle program, ProgramInterface programInterface, uint index, int propCount, ProgramResourceProperty* props, int count, int* length, int* @params) { __context->glGetProgramResourceiv(program.Value, (uint)programInterface, index, propCount, (uint*)props, count, length, @params); } /// /// Forwards to the native OpenGL entry point. /// GLint glGetProgramResourceLocation(GLuint program, GLenum programInterface, const GLchar *name); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public int GetProgramResourceLocation(GlHandle program, ProgramInterface programInterface, byte* name) { return __context->glGetProgramResourceLocation(program.Value, (uint)programInterface, name); } /// /// Forwards to the native OpenGL entry point. /// GLint glGetProgramResourceLocationIndex(GLuint program, GLenum programInterface, const GLchar *name); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public int GetProgramResourceLocationIndex(GlHandle program, ProgramInterface programInterface, byte* name) { return __context->glGetProgramResourceLocationIndex(program.Value, (uint)programInterface, name); } /// /// Forwards to the native OpenGL entry point. /// void glShaderStorageBlockBinding(GLuint program, GLuint storageBlockIndex, GLuint storageBlockBinding); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void ShaderStorageBlockBinding(GlHandle program, uint storageBlockIndex, uint storageBlockBinding) { __context->glShaderStorageBlockBinding(program.Value, storageBlockIndex, storageBlockBinding); } /// /// Forwards to the native OpenGL entry point. /// void glTexBufferRange(GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void TexBufferRange(TextureTarget target, SizedInternalFormat internalFormat, GlHandle buffer, nint offset, nint size) { __context->glTexBufferRange((uint)target, (uint)internalFormat, buffer.Value, offset, size); } /// /// Forwards to the native OpenGL entry point. /// void glTexStorage2DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void TexStorage2DMultisample(TextureTarget target, int samples, SizedInternalFormat internalFormat, int width, int height, byte fixedsamplelocations) { __context->glTexStorage2DMultisample((uint)target, samples, (uint)internalFormat, width, height, fixedsamplelocations); } /// /// Forwards to the native OpenGL entry point. /// void glTexStorage3DMultisample(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void TexStorage3DMultisample(TextureTarget target, int samples, SizedInternalFormat internalFormat, int width, int height, int depth, byte fixedsamplelocations) { __context->glTexStorage3DMultisample((uint)target, samples, (uint)internalFormat, width, height, depth, fixedsamplelocations); } /// /// Forwards to the native OpenGL entry point. /// void glTextureView(GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void TextureView(GlHandle texture, TextureTarget target, GlHandle origtexture, SizedInternalFormat internalFormat, uint minlevel, uint numlevels, uint minlayer, uint numlayers) { __context->glTextureView(texture.Value, (uint)target, origtexture.Value, (uint)internalFormat, minlevel, numlevels, minlayer, numlayers); } /// /// Forwards to the native OpenGL entry point. /// void glBindVertexBuffer(GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void BindVertexBuffer(uint bindingIndex, GlHandle buffer, nint offset, int stride) { __context->glBindVertexBuffer(bindingIndex, buffer.Value, offset, stride); } /// /// Forwards to the native OpenGL entry point. /// void glVertexAttribFormat(GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void VertexAttributeFormat(uint attributeIndex, int size, VertexAttributeType type, byte normalized, uint relativeOffset) { __context->glVertexAttribFormat(attributeIndex, size, (uint)type, normalized, relativeOffset); } /// /// Forwards to the native OpenGL entry point. /// void glVertexAttribIFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void VertexAttributeIntegerFormat(uint attributeIndex, int size, VertexAttributeIType type, uint relativeOffset) { __context->glVertexAttribIFormat(attributeIndex, size, (uint)type, relativeOffset); } /// /// Forwards to the native OpenGL entry point. /// void glVertexAttribLFormat(GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void VertexAttributeDoubleFormat(uint attributeIndex, int size, VertexAttributeLType type, uint relativeOffset) { __context->glVertexAttribLFormat(attributeIndex, size, (uint)type, relativeOffset); } /// /// Forwards to the native OpenGL entry point. /// void glVertexAttribBinding(GLuint attribindex, GLuint bindingindex); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void VertexAttributeBinding(uint attributeIndex, uint bindingIndex) { __context->glVertexAttribBinding(attributeIndex, bindingIndex); } /// /// Forwards to the native OpenGL entry point. /// void glVertexBindingDivisor(GLuint bindingindex, GLuint divisor); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void VertexBindingDivisor(uint bindingIndex, uint divisor) { __context->glVertexBindingDivisor(bindingIndex, divisor); } /// /// Forwards to the native OpenGL entry point. /// void glDebugMessageControl(GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void DebugMessageControl(DebugSource source, DebugType type, DebugSeverity severity, int count, uint* ids, byte enabled) { __context->glDebugMessageControl((uint)source, (uint)type, (uint)severity, count, ids, enabled); } /// /// Forwards to the native OpenGL entry point. /// void glDebugMessageInsert(GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void DebugMessageInsert(DebugSource source, DebugType type, uint id, DebugSeverity severity, int length, byte* buf) { __context->glDebugMessageInsert((uint)source, (uint)type, id, (uint)severity, length, buf); } /// /// Forwards to the native OpenGL entry point. /// void glDebugMessageCallback(GLDEBUGPROC callback, const void *userParam); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void DebugMessageCallback(delegate* unmanaged callback, void* userParam) { __context->glDebugMessageCallback(callback, userParam); } /// /// Forwards to the native OpenGL entry point. /// GLuint glGetDebugMessageLog(GLuint count, GLsizei bufSize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public uint GetDebugMessageLog(uint count, int bufSize, DebugSource* sources, DebugType* types, uint* ids, DebugSeverity* severities, int* lengths, byte* messageLog) { return __context->glGetDebugMessageLog(count, bufSize, (uint*)sources, (uint*)types, ids, (uint*)severities, lengths, messageLog); } /// /// Forwards to the native OpenGL entry point. /// void glPushDebugGroup(GLenum source, GLuint id, GLsizei length, const GLchar *message); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void PushDebugGroup(DebugSource source, uint id, int length, byte* message) { __context->glPushDebugGroup((uint)source, id, length, message); } /// /// Forwards to the native OpenGL entry point. /// void glPopDebugGroup(); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void PopDebugGroup() { __context->glPopDebugGroup(); } /// /// Forwards to the native OpenGL entry point. /// void glObjectLabel(GLenum identifier, GLuint name, GLsizei length, const GLchar *label); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void ObjectLabel(ObjectIdentifier identifier, uint name, int length, byte* label) { __context->glObjectLabel((uint)identifier, name, length, label); } /// /// Forwards to the native OpenGL entry point. /// void glGetObjectLabel(GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void GetObjectLabel(ObjectIdentifier identifier, uint name, int bufSize, int* length, byte* label) { __context->glGetObjectLabel((uint)identifier, name, bufSize, length, label); } /// /// Forwards to the native OpenGL entry point. /// void glObjectPtrLabel(const void *ptr, GLsizei length, const GLchar *label); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void ObjectPtrLabel(void* ptr, int length, byte* label) { __context->glObjectPtrLabel(ptr, length, label); } /// /// Forwards to the native OpenGL entry point. /// void glGetObjectPtrLabel(const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label); /// See docs.gl. /// [MethodImpl(MethodImplOptions.AggressiveInlining)] public void GetObjectPtrLabel(void* ptr, int bufSize, int* length, byte* label) { __context->glGetObjectPtrLabel(ptr, bufSize, length, label); } } }