// ----------------------------------------------------------------------------- // file="Uniform" // Project: StgSharp // Copyright (c) Nitload. // SPDX-License-Identifier: MIT // ----------------------------------------------------------------------------- namespace StgSharp.Graphics.OpenGL { public class Uniform { internal GlHandle id; public GlHandle Handle => id; } public sealed class Uniform : Uniform where T : unmanaged { internal Uniform() { } internal unsafe Uniform( GlHandle id ) { this.id = id; } internal static Uniform FromHandle( GlHandle handle ) { return new Uniform { id = handle }; } } public sealed class Uniform : Uniform where T : unmanaged where U : struct { internal Uniform() { } internal unsafe Uniform( GlHandle id ) { this.id = id; } internal static Uniform FromHandle( GlHandle handle ) { return new Uniform { id = handle }; } } public sealed class Uniform : Uniform where T : unmanaged where U : struct where V : struct { internal Uniform() { } internal unsafe Uniform( GlHandle id ) { this.id = id; } internal static Uniform FromHandle( GlHandle handle ) { return new Uniform { id = handle }; } } public sealed class Uniform : Uniform where T : unmanaged where U : struct where V : struct where W : struct { internal Uniform() { } internal unsafe Uniform( GlHandle id ) { this.id = id; } internal static Uniform FromHandle( GlHandle handle ) { return new Uniform { id = handle }; } } }