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 c7355a815cc7e4978d0dfbb6357ef2ec4255253f..47fa45c85c6a7d2da6c03cfe1f6c6aeed89c952f 100644 |
--- a/gpu/command_buffer/service/shader_manager.h |
+++ b/gpu/command_buffer/service/shader_manager.h |
@@ -85,6 +85,7 @@ class GPU_EXPORT Shader : public base::RefCounted<Shader> { |
const sh::Attribute* GetAttribInfo(const std::string& name) const; |
const sh::Uniform* GetUniformInfo(const std::string& name) const; |
const sh::Varying* GetVaryingInfo(const std::string& name) const; |
+ const sh::Attribute* GetOutputVariableInfo(const std::string& name) const; |
// If the original_name is not found, return NULL. |
const std::string* GetAttribMappedName( |
@@ -126,6 +127,10 @@ class GPU_EXPORT Shader : public base::RefCounted<Shader> { |
return varying_map_; |
} |
+ const AttributeList& output_variable_list() const { |
+ return output_variable_list_; |
+ } |
+ |
// Used by program cache. |
void set_attrib_map(const AttributeMap& attrib_map) { |
// copied because cache might be cleared |
@@ -144,6 +149,12 @@ class GPU_EXPORT Shader : public base::RefCounted<Shader> { |
varying_map_ = VaryingMap(varying_map); |
} |
+ // Used by program cache. |
+ void set_output_variable_list(const AttributeList& output_variable_list) { |
+ // copied because cache might be cleared |
+ output_variable_list_ = output_variable_list; |
+ } |
+ |
private: |
friend class base::RefCounted<Shader>; |
friend class ShaderManager; |
@@ -203,6 +214,7 @@ class GPU_EXPORT Shader : public base::RefCounted<Shader> { |
AttributeMap attrib_map_; |
UniformMap uniform_map_; |
VaryingMap varying_map_; |
+ AttributeList output_variable_list_; |
// The name hashing info when the shader was last compiled. |
NameMap name_map_; |