aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Graphics/Gal/IGalShader.cs
blob: 99cd4d7624b48a026e62336660b289c499f999e8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
using System.Collections.Generic;

namespace Ryujinx.Graphics.Gal
{
    public interface IGalShader
    {
        void Create(IGalMemory memory, long key, GalShaderType type);

        void Create(IGalMemory memory, long vpAPos, long key, GalShaderType type);

        IEnumerable<ShaderDeclInfo> GetConstBufferUsage(long key);
        IEnumerable<ShaderDeclInfo> GetTextureUsage(long key);

        void Bind(long key);

        void Unbind(GalShaderType type);

        void BindProgram();
    }
}