Index: gpu/command_buffer/service/program_manager.h |
diff --git a/gpu/command_buffer/service/program_manager.h b/gpu/command_buffer/service/program_manager.h |
index 50273e9d25bc74acdea834cbe02eea34ff726d42..9ec31b9dee1968134d2f899d5e4eadc8f53f812d 100644 |
--- a/gpu/command_buffer/service/program_manager.h |
+++ b/gpu/command_buffer/service/program_manager.h |
@@ -33,6 +33,11 @@ class GPU_EXPORT Program : public base::RefCounted<Program> { |
public: |
static const int kMaxAttachedShaders = 2; |
+ enum VaryingsPackingOption { |
+ kCountOnlyStaticallyUsed, |
+ kCountAll |
+ }; |
+ |
struct UniformInfo { |
UniformInfo(); |
UniformInfo( |
@@ -156,6 +161,7 @@ class GPU_EXPORT Program : public base::RefCounted<Program> { |
bool Link(ShaderManager* manager, |
ShaderTranslator* vertex_translator, |
ShaderTranslator* fragment_shader, |
+ VaryingsPackingOption varyings_packing_option, |
const ShaderCacheCallback& shader_callback); |
// Performs glValidateProgram and related activities. |
@@ -199,7 +205,7 @@ class GPU_EXPORT Program : public base::RefCounted<Program> { |
// Return false if varyings can't be packed into the max available |
// varying registers. |
- bool CheckVaryingsPacking() const; |
+ bool CheckVaryingsPacking(VaryingsPackingOption option) const; |
// Visible for testing |
const LocationMap& bind_attrib_location_map() const { |