make some changes to opengl api gen, discussing on rewrite of all opengl binding, making it neat and structral
This commit is contained in:
@@ -0,0 +1,238 @@
|
||||
// <auto-generated>
|
||||
// Generated by StgSharp.GenerateGL on 2026-08-25 09:22:55Z
|
||||
// Version: 4.0
|
||||
// </auto-generated>
|
||||
using System;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Runtime.InteropServices;
|
||||
using StgSharp.Graphics.OpenGL;
|
||||
|
||||
namespace StgSharp.Graphics.OpenGL
|
||||
{
|
||||
public unsafe partial class OpenGLFunction
|
||||
{
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public void BeginQueryIndexed(uint target, uint index, uint id)
|
||||
{
|
||||
Context.glBeginQueryIndexed(target, index, id);
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public void BindTransformFeedback(uint target, uint id)
|
||||
{
|
||||
Context.glBindTransformFeedback(target, id);
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public void BlendEquationSeparate(uint buf, uint modeRGB, uint modeAlpha)
|
||||
{
|
||||
Context.glBlendEquationSeparatei(buf, modeRGB, modeAlpha);
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public void BlendEquation(uint buf, uint mode)
|
||||
{
|
||||
Context.glBlendEquationi(buf, mode);
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public void BlendFuncSeparate(uint buf, uint srcRGB, uint dstRGB, uint srcAlpha, uint dstAlpha)
|
||||
{
|
||||
Context.glBlendFuncSeparatei(buf, srcRGB, dstRGB, srcAlpha, dstAlpha);
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public void BlendFunc(uint buf, uint src, uint dst)
|
||||
{
|
||||
Context.glBlendFunci(buf, src, dst);
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public void DeleteTransformFeedbacks(ReadOnlySpan<uint> ids)
|
||||
{
|
||||
fixed (uint* idsPtr = ids)
|
||||
{
|
||||
Context.glDeleteTransformFeedbacks(checked((int)ids.Length), idsPtr);
|
||||
}
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public void DrawArraysIndirect(uint mode, void* indirect)
|
||||
{
|
||||
Context.glDrawArraysIndirect(mode, indirect);
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public void DrawElementsIndirect(uint mode, uint type, void* indirect)
|
||||
{
|
||||
Context.glDrawElementsIndirect(mode, type, indirect);
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public void DrawTransformFeedback(uint mode, uint id)
|
||||
{
|
||||
Context.glDrawTransformFeedback(mode, id);
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public void DrawTransformFeedbackStream(uint mode, uint id, uint stream)
|
||||
{
|
||||
Context.glDrawTransformFeedbackStream(mode, id, stream);
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public void EndQueryIndexed(uint target, uint index)
|
||||
{
|
||||
Context.glEndQueryIndexed(target, index);
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public void GenTransformFeedbacks(Span<uint> ids)
|
||||
{
|
||||
fixed (uint* idsPtr = ids)
|
||||
{
|
||||
Context.glGenTransformFeedbacks(checked((int)ids.Length), idsPtr);
|
||||
}
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public void GetActiveSubroutineName(GlHandle program, uint shadertype, uint index, out int length, Span<byte> name)
|
||||
{
|
||||
length = default;
|
||||
fixed (int* lengthPtr = &length)
|
||||
{
|
||||
fixed (byte* namePtr = name)
|
||||
{
|
||||
Context.glGetActiveSubroutineName(program.Value, shadertype, index, checked((int)name.Length), lengthPtr, namePtr);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public void GetActiveSubroutineUniformName(GlHandle program, uint shadertype, uint index, out int length, Span<byte> name)
|
||||
{
|
||||
length = default;
|
||||
fixed (int* lengthPtr = &length)
|
||||
{
|
||||
fixed (byte* namePtr = name)
|
||||
{
|
||||
Context.glGetActiveSubroutineUniformName(program.Value, shadertype, index, checked((int)name.Length), lengthPtr, namePtr);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public void GetActiveSubroutineUniformiv(GlHandle program, uint shadertype, uint index, uint pname, Span<int> values)
|
||||
{
|
||||
fixed (int* valuesPtr = values)
|
||||
{
|
||||
Context.glGetActiveSubroutineUniformiv(program.Value, shadertype, index, pname, valuesPtr);
|
||||
}
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public void GetProgramStageiv(GlHandle program, uint shadertype, uint pname, out int values)
|
||||
{
|
||||
values = default;
|
||||
fixed (int* valuesPtr = &values)
|
||||
{
|
||||
Context.glGetProgramStageiv(program.Value, shadertype, pname, valuesPtr);
|
||||
}
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public void GetQueryIndexediv(uint target, uint index, uint pname, Span<int> @params)
|
||||
{
|
||||
fixed (int* @paramsPtr = @params)
|
||||
{
|
||||
Context.glGetQueryIndexediv(target, index, pname, @paramsPtr);
|
||||
}
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public uint GetSubroutineIndex(GlHandle program, uint shadertype, ReadOnlySpan<byte> name)
|
||||
{
|
||||
fixed (byte* namePtr = name)
|
||||
{
|
||||
return Context.glGetSubroutineIndex(program.Value, shadertype, namePtr);
|
||||
}
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public int GetSubroutineUniformLocation(GlHandle program, uint shadertype, ReadOnlySpan<byte> name)
|
||||
{
|
||||
fixed (byte* namePtr = name)
|
||||
{
|
||||
return Context.glGetSubroutineUniformLocation(program.Value, shadertype, namePtr);
|
||||
}
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public void GetUniformSubroutineuiv(uint shadertype, int location, out uint @params)
|
||||
{
|
||||
@params = default;
|
||||
fixed (uint* @paramsPtr = &@params)
|
||||
{
|
||||
Context.glGetUniformSubroutineuiv(shadertype, location, @paramsPtr);
|
||||
}
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public void GetUniform(GlHandle program, int location, Span<double> @params)
|
||||
{
|
||||
fixed (double* @paramsPtr = @params)
|
||||
{
|
||||
Context.glGetUniformdv(program.Value, location, @paramsPtr);
|
||||
}
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public byte IsTransformFeedback(uint id)
|
||||
{
|
||||
return Context.glIsTransformFeedback(id);
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public void MinSampleShading(float value)
|
||||
{
|
||||
Context.glMinSampleShading(value);
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public void PatchParameter(uint pname, ReadOnlySpan<float> values)
|
||||
{
|
||||
fixed (float* valuesPtr = values)
|
||||
{
|
||||
Context.glPatchParameterfv(pname, valuesPtr);
|
||||
}
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public void PatchParameter(uint pname, int value)
|
||||
{
|
||||
Context.glPatchParameteri(pname, value);
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public void PauseTransformFeedback()
|
||||
{
|
||||
Context.glPauseTransformFeedback();
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public void ResumeTransformFeedback()
|
||||
{
|
||||
Context.glResumeTransformFeedback();
|
||||
}
|
||||
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public void UniformSubroutinesuiv(uint shadertype, ReadOnlySpan<uint> indices)
|
||||
{
|
||||
fixed (uint* indicesPtr = indices)
|
||||
{
|
||||
Context.glUniformSubroutinesuiv(shadertype, checked((int)indices.Length), indicesPtr);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user