Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file modified build/cache/gl.json.gz
Binary file not shown.
Binary file modified build/cache/glcore.json.gz
Binary file not shown.
Binary file modified build/cache/gles2.json.gz
Binary file not shown.
Binary file modified build/cache/vulkan.json.gz
Binary file not shown.
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ public static explicit operator FileCloseProc(PfnFileCloseProc pfn)
public static implicit operator PfnFileCloseProc(delegate* unmanaged[Cdecl]<FileIO*, File*, void> ptr) => new PfnFileCloseProc(ptr);
}

[UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public unsafe delegate void FileCloseProc(FileIO* arg0, File* arg1);
}

Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ public static explicit operator FileFlushProc(PfnFileFlushProc pfn)
public static implicit operator PfnFileFlushProc(delegate* unmanaged[Cdecl]<File*, void> ptr) => new PfnFileFlushProc(ptr);
}

[UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public unsafe delegate void FileFlushProc(File* arg0);
}

Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ public static explicit operator FileOpenProc(PfnFileOpenProc pfn)
public static implicit operator PfnFileOpenProc(delegate* unmanaged[Cdecl]<FileIO*, byte*, byte*, File*> ptr) => new PfnFileOpenProc(ptr);
}

[UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public unsafe delegate File* FileOpenProc(FileIO* arg0, byte* arg1, byte* arg2);
}

Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ public static explicit operator FileReadProc(PfnFileReadProc pfn)
public static implicit operator PfnFileReadProc(delegate* unmanaged[Cdecl]<File*, byte*, nuint, nuint, nuint> ptr) => new PfnFileReadProc(ptr);
}

[UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public unsafe delegate nuint FileReadProc(File* arg0, byte* arg1, nuint arg2, nuint arg3);
}

1 change: 1 addition & 0 deletions src/Assimp/Silk.NET.Assimp/Structs/PfnFileSeek.gen.cs
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ public static explicit operator FileSeek(PfnFileSeek pfn)
public static implicit operator PfnFileSeek(delegate* unmanaged[Cdecl]<File*, nuint, Origin, Return> ptr) => new PfnFileSeek(ptr);
}

[UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public unsafe delegate Return FileSeek(File* arg0, nuint arg1, Origin arg2);
}

Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ public static explicit operator FileTellProc(PfnFileTellProc pfn)
public static implicit operator PfnFileTellProc(delegate* unmanaged[Cdecl]<File*, nuint> ptr) => new PfnFileTellProc(ptr);
}

[UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public unsafe delegate nuint FileTellProc(File* arg0);
}

Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ public static explicit operator LogStreamCallback(PfnLogStreamCallback pfn)
public static implicit operator PfnLogStreamCallback(delegate* unmanaged[Cdecl]<byte*, byte*, void> ptr) => new PfnLogStreamCallback(ptr);
}

[UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public unsafe delegate void LogStreamCallback(byte* arg0, byte* arg1);
}

5 changes: 5 additions & 0 deletions src/Core/Silk.NET.BuildTools/Common/Functions/Function.cs
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,11 @@ public string ToString(bool? @unsafe,
{
var sb = new StringBuilder();

if (@delegate && Convention != CallingConvention.Winapi)
{
sb.AppendLine($"[UnmanagedFunctionPointer(CallingConvention.{Convention})]");
}

GetDeclarationString(sb, @unsafe, partial, accessibility, @static, @delegate);

sb.Append("(");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ public static explicit operator DestructionCallback(PfnDestructionCallback pfn)
public static implicit operator PfnDestructionCallback(delegate* unmanaged[Cdecl]<void*, void> ptr) => new PfnDestructionCallback(ptr);
}

[UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public unsafe delegate void DestructionCallback(void* arg0);
}

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -21,40 +21,40 @@ public unsafe partial class AmdMultiDrawIndirect : NativeExtension<GL>
{
public const string ExtensionName = "AMD_multi_draw_indirect";
[NativeApi(EntryPoint = "glMultiDrawArraysIndirectAMD")]
public unsafe partial void MultiDrawArraysIndirect([Flow(FlowDirection.In)] AMD mode, [Flow(FlowDirection.In)] void* indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride);
public unsafe partial void MultiDrawArraysIndirect([Flow(FlowDirection.In)] AMD mode, [Count(Computed = "primcount, stride"), Flow(FlowDirection.In)] void* indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride);

[NativeApi(EntryPoint = "glMultiDrawArraysIndirectAMD")]
public partial void MultiDrawArraysIndirect<T0>([Flow(FlowDirection.In)] AMD mode, [Flow(FlowDirection.In)] in T0 indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride) where T0 : unmanaged;
public partial void MultiDrawArraysIndirect<T0>([Flow(FlowDirection.In)] AMD mode, [Count(Computed = "primcount, stride"), Flow(FlowDirection.In)] in T0 indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride) where T0 : unmanaged;

[NativeApi(EntryPoint = "glMultiDrawArraysIndirectAMD")]
public unsafe partial void MultiDrawArraysIndirect([Flow(FlowDirection.In)] PrimitiveType mode, [Flow(FlowDirection.In)] void* indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride);
public unsafe partial void MultiDrawArraysIndirect([Flow(FlowDirection.In)] PrimitiveType mode, [Count(Computed = "primcount, stride"), Flow(FlowDirection.In)] void* indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride);

[NativeApi(EntryPoint = "glMultiDrawArraysIndirectAMD")]
public partial void MultiDrawArraysIndirect<T0>([Flow(FlowDirection.In)] PrimitiveType mode, [Flow(FlowDirection.In)] in T0 indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride) where T0 : unmanaged;
public partial void MultiDrawArraysIndirect<T0>([Flow(FlowDirection.In)] PrimitiveType mode, [Count(Computed = "primcount, stride"), Flow(FlowDirection.In)] in T0 indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride) where T0 : unmanaged;

[NativeApi(EntryPoint = "glMultiDrawElementsIndirectAMD")]
public unsafe partial void MultiDrawElementsIndirect([Flow(FlowDirection.In)] AMD mode, [Flow(FlowDirection.In)] AMD type, [Flow(FlowDirection.In)] void* indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride);
public unsafe partial void MultiDrawElementsIndirect([Flow(FlowDirection.In)] AMD mode, [Flow(FlowDirection.In)] AMD type, [Count(Computed = "primcount, stride"), Flow(FlowDirection.In)] void* indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride);

[NativeApi(EntryPoint = "glMultiDrawElementsIndirectAMD")]
public partial void MultiDrawElementsIndirect<T0>([Flow(FlowDirection.In)] AMD mode, [Flow(FlowDirection.In)] AMD type, [Flow(FlowDirection.In)] in T0 indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride) where T0 : unmanaged;
public partial void MultiDrawElementsIndirect<T0>([Flow(FlowDirection.In)] AMD mode, [Flow(FlowDirection.In)] AMD type, [Count(Computed = "primcount, stride"), Flow(FlowDirection.In)] in T0 indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride) where T0 : unmanaged;

[NativeApi(EntryPoint = "glMultiDrawElementsIndirectAMD")]
public unsafe partial void MultiDrawElementsIndirect([Flow(FlowDirection.In)] AMD mode, [Flow(FlowDirection.In)] DrawElementsType type, [Flow(FlowDirection.In)] void* indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride);
public unsafe partial void MultiDrawElementsIndirect([Flow(FlowDirection.In)] AMD mode, [Flow(FlowDirection.In)] DrawElementsType type, [Count(Computed = "primcount, stride"), Flow(FlowDirection.In)] void* indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride);

[NativeApi(EntryPoint = "glMultiDrawElementsIndirectAMD")]
public partial void MultiDrawElementsIndirect<T0>([Flow(FlowDirection.In)] AMD mode, [Flow(FlowDirection.In)] DrawElementsType type, [Flow(FlowDirection.In)] in T0 indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride) where T0 : unmanaged;
public partial void MultiDrawElementsIndirect<T0>([Flow(FlowDirection.In)] AMD mode, [Flow(FlowDirection.In)] DrawElementsType type, [Count(Computed = "primcount, stride"), Flow(FlowDirection.In)] in T0 indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride) where T0 : unmanaged;

[NativeApi(EntryPoint = "glMultiDrawElementsIndirectAMD")]
public unsafe partial void MultiDrawElementsIndirect([Flow(FlowDirection.In)] PrimitiveType mode, [Flow(FlowDirection.In)] AMD type, [Flow(FlowDirection.In)] void* indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride);
public unsafe partial void MultiDrawElementsIndirect([Flow(FlowDirection.In)] PrimitiveType mode, [Flow(FlowDirection.In)] AMD type, [Count(Computed = "primcount, stride"), Flow(FlowDirection.In)] void* indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride);

[NativeApi(EntryPoint = "glMultiDrawElementsIndirectAMD")]
public partial void MultiDrawElementsIndirect<T0>([Flow(FlowDirection.In)] PrimitiveType mode, [Flow(FlowDirection.In)] AMD type, [Flow(FlowDirection.In)] in T0 indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride) where T0 : unmanaged;
public partial void MultiDrawElementsIndirect<T0>([Flow(FlowDirection.In)] PrimitiveType mode, [Flow(FlowDirection.In)] AMD type, [Count(Computed = "primcount, stride"), Flow(FlowDirection.In)] in T0 indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride) where T0 : unmanaged;

[NativeApi(EntryPoint = "glMultiDrawElementsIndirectAMD")]
public unsafe partial void MultiDrawElementsIndirect([Flow(FlowDirection.In)] PrimitiveType mode, [Flow(FlowDirection.In)] DrawElementsType type, [Flow(FlowDirection.In)] void* indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride);
public unsafe partial void MultiDrawElementsIndirect([Flow(FlowDirection.In)] PrimitiveType mode, [Flow(FlowDirection.In)] DrawElementsType type, [Count(Computed = "primcount, stride"), Flow(FlowDirection.In)] void* indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride);

[NativeApi(EntryPoint = "glMultiDrawElementsIndirectAMD")]
public partial void MultiDrawElementsIndirect<T0>([Flow(FlowDirection.In)] PrimitiveType mode, [Flow(FlowDirection.In)] DrawElementsType type, [Flow(FlowDirection.In)] in T0 indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride) where T0 : unmanaged;
public partial void MultiDrawElementsIndirect<T0>([Flow(FlowDirection.In)] PrimitiveType mode, [Flow(FlowDirection.In)] DrawElementsType type, [Count(Computed = "primcount, stride"), Flow(FlowDirection.In)] in T0 indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride) where T0 : unmanaged;

public AmdMultiDrawIndirect(INativeContext ctx)
: base(ctx)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,37 +16,37 @@ namespace Silk.NET.OpenGL.Legacy.Extensions.AMD
{
public static class AmdMultiDrawIndirectOverloads
{
public static unsafe void MultiDrawArraysIndirect<T0>(this AmdMultiDrawIndirect thisApi, [Flow(FlowDirection.In)] AMD mode, [Flow(FlowDirection.In)] ReadOnlySpan<T0> indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride) where T0 : unmanaged
public static unsafe void MultiDrawArraysIndirect<T0>(this AmdMultiDrawIndirect thisApi, [Flow(FlowDirection.In)] AMD mode, [Count(Computed = "primcount, stride"), Flow(FlowDirection.In)] ReadOnlySpan<T0> indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride) where T0 : unmanaged
{
// SpanOverloader
thisApi.MultiDrawArraysIndirect(mode, in indirect.GetPinnableReference(), primcount, stride);
}

public static unsafe void MultiDrawArraysIndirect<T0>(this AmdMultiDrawIndirect thisApi, [Flow(FlowDirection.In)] PrimitiveType mode, [Flow(FlowDirection.In)] ReadOnlySpan<T0> indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride) where T0 : unmanaged
public static unsafe void MultiDrawArraysIndirect<T0>(this AmdMultiDrawIndirect thisApi, [Flow(FlowDirection.In)] PrimitiveType mode, [Count(Computed = "primcount, stride"), Flow(FlowDirection.In)] ReadOnlySpan<T0> indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride) where T0 : unmanaged
{
// SpanOverloader
thisApi.MultiDrawArraysIndirect(mode, in indirect.GetPinnableReference(), primcount, stride);
}

public static unsafe void MultiDrawElementsIndirect<T0>(this AmdMultiDrawIndirect thisApi, [Flow(FlowDirection.In)] AMD mode, [Flow(FlowDirection.In)] AMD type, [Flow(FlowDirection.In)] ReadOnlySpan<T0> indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride) where T0 : unmanaged
public static unsafe void MultiDrawElementsIndirect<T0>(this AmdMultiDrawIndirect thisApi, [Flow(FlowDirection.In)] AMD mode, [Flow(FlowDirection.In)] AMD type, [Count(Computed = "primcount, stride"), Flow(FlowDirection.In)] ReadOnlySpan<T0> indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride) where T0 : unmanaged
{
// SpanOverloader
thisApi.MultiDrawElementsIndirect(mode, type, in indirect.GetPinnableReference(), primcount, stride);
}

public static unsafe void MultiDrawElementsIndirect<T0>(this AmdMultiDrawIndirect thisApi, [Flow(FlowDirection.In)] AMD mode, [Flow(FlowDirection.In)] DrawElementsType type, [Flow(FlowDirection.In)] ReadOnlySpan<T0> indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride) where T0 : unmanaged
public static unsafe void MultiDrawElementsIndirect<T0>(this AmdMultiDrawIndirect thisApi, [Flow(FlowDirection.In)] AMD mode, [Flow(FlowDirection.In)] DrawElementsType type, [Count(Computed = "primcount, stride"), Flow(FlowDirection.In)] ReadOnlySpan<T0> indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride) where T0 : unmanaged
{
// SpanOverloader
thisApi.MultiDrawElementsIndirect(mode, type, in indirect.GetPinnableReference(), primcount, stride);
}

public static unsafe void MultiDrawElementsIndirect<T0>(this AmdMultiDrawIndirect thisApi, [Flow(FlowDirection.In)] PrimitiveType mode, [Flow(FlowDirection.In)] AMD type, [Flow(FlowDirection.In)] ReadOnlySpan<T0> indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride) where T0 : unmanaged
public static unsafe void MultiDrawElementsIndirect<T0>(this AmdMultiDrawIndirect thisApi, [Flow(FlowDirection.In)] PrimitiveType mode, [Flow(FlowDirection.In)] AMD type, [Count(Computed = "primcount, stride"), Flow(FlowDirection.In)] ReadOnlySpan<T0> indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride) where T0 : unmanaged
{
// SpanOverloader
thisApi.MultiDrawElementsIndirect(mode, type, in indirect.GetPinnableReference(), primcount, stride);
}

public static unsafe void MultiDrawElementsIndirect<T0>(this AmdMultiDrawIndirect thisApi, [Flow(FlowDirection.In)] PrimitiveType mode, [Flow(FlowDirection.In)] DrawElementsType type, [Flow(FlowDirection.In)] ReadOnlySpan<T0> indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride) where T0 : unmanaged
public static unsafe void MultiDrawElementsIndirect<T0>(this AmdMultiDrawIndirect thisApi, [Flow(FlowDirection.In)] PrimitiveType mode, [Flow(FlowDirection.In)] DrawElementsType type, [Count(Computed = "primcount, stride"), Flow(FlowDirection.In)] ReadOnlySpan<T0> indirect, [Flow(FlowDirection.In)] uint primcount, [Flow(FlowDirection.In)] uint stride) where T0 : unmanaged
{
// SpanOverloader
thisApi.MultiDrawElementsIndirect(mode, type, in indirect.GetPinnableReference(), primcount, stride);
Expand Down
Loading