aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Graphics.OpenGL/Converters/SwizzleComponentConverter.cs
blob: d9ce650f48599476c8ead54d4959d3580fb31287 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
using OpenTK.Graphics.OpenGL;
using Ryujinx.Graphics.GAL.Texture;
using System;

namespace Ryujinx.Graphics.OpenGL
{
    static class SwizzleComponentConverter
    {
        public static All Convert(this SwizzleComponent swizzleComponent)
        {
            switch (swizzleComponent)
            {
                case SwizzleComponent.Zero:  return All.Zero;
                case SwizzleComponent.One:   return All.One;
                case SwizzleComponent.Red:   return All.Red;
                case SwizzleComponent.Green: return All.Green;
                case SwizzleComponent.Blue:  return All.Blue;
                case SwizzleComponent.Alpha: return All.Alpha;
            }

            throw new ArgumentException($"Invalid swizzle component \"{swizzleComponent}\".");
        }
    }
}