| Index: gpu/command_buffer/service/shader_manager.h
|
| diff --git a/gpu/command_buffer/service/shader_manager.h b/gpu/command_buffer/service/shader_manager.h
|
| index 3288bffb3bb5ed68e3b857bfc59f72a38643c7d7..186937174c3a0b26af0d454936c426f4204621e9 100644
|
| --- a/gpu/command_buffer/service/shader_manager.h
|
| +++ b/gpu/command_buffer/service/shader_manager.h
|
| @@ -88,6 +88,8 @@ class GPU_EXPORT Shader : public base::RefCounted<Shader> {
|
| const sh::Varying* GetVaryingInfo(const std::string& name) const;
|
| const sh::InterfaceBlock* GetInterfaceBlockInfo(
|
| const std::string& name) const;
|
| + const sh::OutputVariable* GetOutputVariableInfo(
|
| + const std::string& name) const;
|
|
|
| // If the original_name is not found, return NULL.
|
| const std::string* GetAttribMappedName(
|
| @@ -105,6 +107,10 @@ class GPU_EXPORT Shader : public base::RefCounted<Shader> {
|
| const std::string* GetInterfaceBlockMappedName(
|
| const std::string& original_name) const;
|
|
|
| + // If the original_name is not found, return NULL.
|
| + const std::string* GetOutputVariableMappedName(
|
| + const std::string& original_name) const;
|
| +
|
| // If the hashed_name is not found, return NULL.
|
| const std::string* GetOriginalNameFromHashedName(
|
| const std::string& hashed_name) const;
|
| @@ -144,6 +150,10 @@ class GPU_EXPORT Shader : public base::RefCounted<Shader> {
|
| return varying_map_;
|
| }
|
|
|
| + const OutputVariableList& output_variable_list() const {
|
| + return output_variable_list_;
|
| + }
|
| +
|
| // Used by program cache.
|
| const InterfaceBlockMap& interface_block_map() const {
|
| return interface_block_map_;
|
| @@ -177,6 +187,12 @@ class GPU_EXPORT Shader : public base::RefCounted<Shader> {
|
| uniform_map_[uniform.mappedName] = uniform;
|
| }
|
|
|
| + void set_output_variable_list(
|
| + const OutputVariableList& output_variable_list) {
|
| + // copied because cache might be cleared
|
| + output_variable_list_ = output_variable_list;
|
| + }
|
| +
|
| private:
|
| friend class base::RefCounted<Shader>;
|
| friend class ShaderManager;
|
| @@ -237,6 +253,7 @@ class GPU_EXPORT Shader : public base::RefCounted<Shader> {
|
| UniformMap uniform_map_;
|
| VaryingMap varying_map_;
|
| InterfaceBlockMap interface_block_map_;
|
| + OutputVariableList output_variable_list_;
|
|
|
| // The name hashing info when the shader was last compiled.
|
| NameMap name_map_;
|
|
|