from enum import IntEnum

class ShaderGpuProgramType(IntEnum):
    kShaderGpuProgramUnknown = (0,)
    kShaderGpuProgramGLLegacy = (1,)
    kShaderGpuProgramGLES31AEP = (2,)
    kShaderGpuProgramGLES31 = (3,)
    kShaderGpuProgramGLES3 = (4,)
    kShaderGpuProgramGLES = (5,)
    kShaderGpuProgramGLCore32 = (6,)
    kShaderGpuProgramGLCore41 = (7,)
    kShaderGpuProgramGLCore43 = (8,)
    kShaderGpuProgramDX9VertexSM20 = (9,)
    kShaderGpuProgramDX9VertexSM30 = (10,)
    kShaderGpuProgramDX9PixelSM20 = (11,)
    kShaderGpuProgramDX9PixelSM30 = (12,)
    kShaderGpuProgramDX10Level9Vertex = (13,)
    kShaderGpuProgramDX10Level9Pixel = (14,)
    kShaderGpuProgramDX11VertexSM40 = (15,)
    kShaderGpuProgramDX11VertexSM50 = (16,)
    kShaderGpuProgramDX11PixelSM40 = (17,)
    kShaderGpuProgramDX11PixelSM50 = (18,)
    kShaderGpuProgramDX11GeometrySM40 = (19,)
    kShaderGpuProgramDX11GeometrySM50 = (20,)
    kShaderGpuProgramDX11HullSM50 = (21,)
    kShaderGpuProgramDX11DomainSM50 = (22,)
    kShaderGpuProgramMetalVS = (23,)
    kShaderGpuProgramMetalFS = (24,)
    kShaderGpuProgramSPIRV = (25,)
    kShaderGpuProgramConsoleVS = (26,)
    kShaderGpuProgramConsoleFS = (27,)
    kShaderGpuProgramConsoleHS = (28,)
    kShaderGpuProgramConsoleDS = (29,)
    kShaderGpuProgramConsoleGS = (30,)
    kShaderGpuProgramRayTracing = (31,)
