using System; using System.Collections.ObjectModel; namespace Ryujinx.Graphics.Shader { public class ShaderProgramInfo { public ReadOnlyCollection CBuffers { get; } public ReadOnlyCollection SBuffers { get; } public ReadOnlyCollection Textures { get; } public ReadOnlyCollection Images { get; } public ReadOnlyCollection InterpolationQualifiers { get; } public bool UsesInstanceId { get; } internal ShaderProgramInfo( BufferDescriptor[] cBuffers, BufferDescriptor[] sBuffers, TextureDescriptor[] textures, TextureDescriptor[] images, InterpolationQualifier[] interpolationQualifiers, bool usesInstanceId) { CBuffers = Array.AsReadOnly(cBuffers); SBuffers = Array.AsReadOnly(sBuffers); Textures = Array.AsReadOnly(textures); Images = Array.AsReadOnly(images); InterpolationQualifiers = Array.AsReadOnly(interpolationQualifiers); UsesInstanceId = usesInstanceId; } } }