| Index: gpu/command_buffer/service/shader_translator.h
|
| diff --git a/gpu/command_buffer/service/shader_translator.h b/gpu/command_buffer/service/shader_translator.h
|
| index d2d7ef8a4a16e111f2795749cf98bd5d3ca6b689..77e04ab01a4551f3cbafe44bff023d1f71d7ee37 100644
|
| --- a/gpu/command_buffer/service/shader_translator.h
|
| +++ b/gpu/command_buffer/service/shader_translator.h
|
| @@ -74,19 +74,16 @@ class ShaderTranslatorInterface {
|
|
|
| // Translates the given shader source.
|
| // Returns true if translation is successful, false otherwise.
|
| - virtual bool Translate(const char* shader) = 0;
|
| -
|
| - // The following functions return results from the last translation.
|
| - // The results are NULL/empty if the translation was unsuccessful.
|
| - // A valid info-log is always returned irrespective of whether translation
|
| - // was successful or not.
|
| - virtual const char* translated_shader() const = 0;
|
| - virtual const char* info_log() const = 0;
|
| -
|
| - virtual const VariableMap& attrib_map() const = 0;
|
| - virtual const VariableMap& uniform_map() const = 0;
|
| - virtual const VariableMap& varying_map() const = 0;
|
| - virtual const NameMap& name_map() const = 0;
|
| + // Always fill |info_log| if it's non-null.
|
| + // Upon success, fill |translated_shader|, |attrib_map|, |uniform_map|,
|
| + // |varying_map|, and |name_map| if they are non-null.
|
| + virtual bool Translate(const std::string& shader_source,
|
| + std::string* info_log,
|
| + std::string* translated_shader,
|
| + VariableMap* attrib_map,
|
| + VariableMap* uniform_map,
|
| + VariableMap* varying_map,
|
| + NameMap* name_map) const = 0;
|
|
|
| // Return a string that is unique for a specfic set of options that would
|
| // possibly affect compilation.
|
| @@ -123,17 +120,13 @@ class GPU_EXPORT ShaderTranslator
|
| ShCompileOptions driver_bug_workarounds) OVERRIDE;
|
|
|
| // Overridden from ShaderTranslatorInterface.
|
| - virtual bool Translate(const char* shader) OVERRIDE;
|
| -
|
| - // Overridden from ShaderTranslatorInterface.
|
| - virtual const char* translated_shader() const OVERRIDE;
|
| - virtual const char* info_log() const OVERRIDE;
|
| -
|
| - // Overridden from ShaderTranslatorInterface.
|
| - virtual const VariableMap& attrib_map() const OVERRIDE;
|
| - virtual const VariableMap& uniform_map() const OVERRIDE;
|
| - virtual const VariableMap& varying_map() const OVERRIDE;
|
| - virtual const NameMap& name_map() const OVERRIDE;
|
| + virtual bool Translate(const std::string& shader_source,
|
| + std::string* info_log,
|
| + std::string* translated_source,
|
| + VariableMap* attrib_map,
|
| + VariableMap* uniform_map,
|
| + VariableMap* varying_map,
|
| + NameMap* name_map) const OVERRIDE;
|
|
|
| virtual std::string GetStringForOptionsThatWouldAffectCompilation() const
|
| OVERRIDE;
|
| @@ -145,17 +138,10 @@ class GPU_EXPORT ShaderTranslator
|
| friend class base::RefCounted<ShaderTranslator>;
|
|
|
| virtual ~ShaderTranslator();
|
| - void ClearResults();
|
| int GetCompileOptions() const;
|
|
|
| ShHandle compiler_;
|
| ShBuiltInResources compiler_options_;
|
| - scoped_ptr<char[]> translated_shader_;
|
| - scoped_ptr<char[]> info_log_;
|
| - VariableMap attrib_map_;
|
| - VariableMap uniform_map_;
|
| - VariableMap varying_map_;
|
| - NameMap name_map_;
|
| bool implementation_is_glsl_es_;
|
| ShCompileOptions driver_bug_workarounds_;
|
| ObserverList<DestructionObserver> destruction_observers_;
|
|
|