Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(159)

Unified Diff: gpu/command_buffer/service/program_manager.h

Issue 1309743005: command_buffer: Implement EXT_blend_func_extended (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@new-05-path-fragment-input-gen
Patch Set: ~ Created 5 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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 e513a9d0c529ad271ded1d9c24371142f5aeb8eb..29b54f5d51aa5cc7d4dabfb815655854eb71f051 100644
--- a/gpu/command_buffer/service/program_manager.h
+++ b/gpu/command_buffer/service/program_manager.h
@@ -20,6 +20,7 @@
namespace gpu {
namespace gles2 {
+class FeatureInfo;
class ProgramCache;
class ProgramManager;
class Shader;
@@ -183,6 +184,14 @@ class GPU_EXPORT Program : public base::RefCounted<Program> {
// glGetProgramInfoCHROMIUM.
bool GetUniformsES3(CommonDecoder::Bucket* bucket) const;
+ // Returns the fragment shader output variable color name binding.
+ // Returns -1 if |original_name| is not an out variable or error.
+ GLint GetFragDataLocation(const std::string& original_name) const;
+
+ // Returns the fragment shader output variable color index binding.
+ // Returns -1 if |original_name| is not an out variable or error.
+ GLint GetFragDataIndex(const std::string& original_name) const;
+
// Sets the sampler values for a uniform.
// This is safe to call for any location. If the location is not
// a sampler uniform nothing will happen.
@@ -333,6 +342,8 @@ class GPU_EXPORT Program : public base::RefCounted<Program> {
// translated.
void ExecuteBindAttribLocationCalls();
+ void ExecuteBindFragDataLocationIndexedCalls();
+
bool AddUniformInfo(
GLsizei size, GLenum type, GLint location, GLint fake_base_location,
const std::string& name, const std::string& original_name,
@@ -446,6 +457,7 @@ class GPU_EXPORT ProgramManager {
public:
explicit ProgramManager(ProgramCache* program_cache,
uint32 max_varying_vectors,
+ uint32 max_dual_source_draw_buffers,
FeatureInfo* feature_info);
~ProgramManager();
@@ -488,6 +500,10 @@ class GPU_EXPORT ProgramManager {
return max_varying_vectors_;
}
+ uint32 max_dual_source_draw_buffers() const {
+ return max_dual_source_draw_buffers_;
+ }
+
private:
friend class Program;
@@ -514,6 +530,7 @@ class GPU_EXPORT ProgramManager {
ProgramCache* program_cache_;
uint32 max_varying_vectors_;
+ uint32 max_dual_source_draw_buffers_;
scoped_refptr<FeatureInfo> feature_info_;

Powered by Google App Engine
This is Rietveld 408576698