stage.h 527 B

123456789101112131415161718192021222324252627
  1. // SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project
  2. // SPDX-License-Identifier: GPL-2.0-or-later
  3. #pragma once
  4. #include "common/common_types.h"
  5. namespace Shader {
  6. enum class Stage : u32 {
  7. VertexB,
  8. TessellationControl,
  9. TessellationEval,
  10. Geometry,
  11. Fragment,
  12. Compute,
  13. VertexA,
  14. };
  15. constexpr u32 MaxStageTypes = 6;
  16. [[nodiscard]] constexpr Stage StageFromIndex(size_t index) noexcept {
  17. return static_cast<Stage>(static_cast<size_t>(Stage::VertexB) + index);
  18. }
  19. } // namespace Shader