diff options
Diffstat (limited to 'src/3rdparty/angle/src/compiler/translator/TranslatorHLSL.h')
-rw-r--r-- | src/3rdparty/angle/src/compiler/translator/TranslatorHLSL.h | 25 |
1 files changed, 15 insertions, 10 deletions
diff --git a/src/3rdparty/angle/src/compiler/translator/TranslatorHLSL.h b/src/3rdparty/angle/src/compiler/translator/TranslatorHLSL.h index 6204b30cc2..598c8a7b30 100644 --- a/src/3rdparty/angle/src/compiler/translator/TranslatorHLSL.h +++ b/src/3rdparty/angle/src/compiler/translator/TranslatorHLSL.h @@ -7,21 +7,26 @@ #ifndef COMPILER_TRANSLATORHLSL_H_ #define COMPILER_TRANSLATORHLSL_H_ -#include "compiler/translator/ShHandle.h" -#include "compiler/translator/Uniform.h" - -class TranslatorHLSL : public TCompiler { -public: - TranslatorHLSL(ShShaderType type, ShShaderSpec spec, ShShaderOutput output); +#include "compiler/translator/Compiler.h" +#include "common/shadervars.h" +class TranslatorHLSL : public TCompiler +{ + public: + TranslatorHLSL(sh::GLenum type, ShShaderSpec spec, ShShaderOutput output); virtual TranslatorHLSL *getAsTranslatorHLSL() { return this; } - const sh::ActiveUniforms &getUniforms() { return mActiveUniforms; } -protected: + bool hasInterfaceBlock(const std::string &interfaceBlockName) const; + unsigned int getInterfaceBlockRegister(const std::string &interfaceBlockName) const; + + bool hasUniform(const std::string &uniformName) const; + unsigned int getUniformRegister(const std::string &uniformName) const; + + protected: virtual void translate(TIntermNode* root); - sh::ActiveUniforms mActiveUniforms; - ShShaderOutput mOutputType; + std::map<std::string, unsigned int> mInterfaceBlockRegisterMap; + std::map<std::string, unsigned int> mUniformRegisterMap; }; #endif // COMPILER_TRANSLATORHLSL_H_ |