• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 //
2 // Copyright 2024 The ANGLE Project Authors. All rights reserved.
3 // Use of this source code is governed by a BSD-style license that can be
4 // found in the LICENSE file.
5 //
6 
7 #ifndef COMPILER_TRANSLATOR_WGSL_H_
8 #define COMPILER_TRANSLATOR_WGSL_H_
9 
10 #include "compiler/translator/Compiler.h"
11 
12 namespace sh
13 {
14 class TranslatorWGSL : public TCompiler
15 {
16   public:
17     TranslatorWGSL(sh::GLenum type, ShShaderSpec spec, ShShaderOutput output);
18 
19   protected:
20     bool preTranslateTreeModifications(TIntermBlock *root);
21     bool translate(TIntermBlock *root,
22                    const ShCompileOptions &compileOptions,
23                    PerformanceDiagnostics *perfDiagnostics) override;
24 
25     [[nodiscard]] bool shouldFlattenPragmaStdglInvariantAll() override;
26 };
27 
28 }  // namespace sh
29 
30 #endif  // COMPILER_TRANSLATOR_WGSL_H_
31