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 bool UsesInstanceId { get; } public byte ClipDistancesWritten { get; } public ShaderProgramInfo( BufferDescriptor[] cBuffers, BufferDescriptor[] sBuffers, TextureDescriptor[] textures, TextureDescriptor[] images, bool usesInstanceId, byte clipDistancesWritten) { CBuffers = Array.AsReadOnly(cBuffers); SBuffers = Array.AsReadOnly(sBuffers); Textures = Array.AsReadOnly(textures); Images = Array.AsReadOnly(images); UsesInstanceId = usesInstanceId; ClipDistancesWritten = clipDistancesWritten; } } }