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

Side by Side Diff: gpu/command_buffer/service/program_manager.h

Issue 2147663002: program_manager: detect interface block mismatches (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 5 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef GPU_COMMAND_BUFFER_SERVICE_PROGRAM_MANAGER_H_ 5 #ifndef GPU_COMMAND_BUFFER_SERVICE_PROGRAM_MANAGER_H_
6 #define GPU_COMMAND_BUFFER_SERVICE_PROGRAM_MANAGER_H_ 6 #define GPU_COMMAND_BUFFER_SERVICE_PROGRAM_MANAGER_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 #include <stdint.h> 9 #include <stdint.h>
10 10
(...skipping 327 matching lines...) Expand 10 before | Expand all | Expand 10 after
338 // glBindUniformLocationCHROMIUM() calls. 338 // glBindUniformLocationCHROMIUM() calls.
339 // We only consider the statically used uniforms in the program. 339 // We only consider the statically used uniforms in the program.
340 bool DetectUniformLocationBindingConflicts() const; 340 bool DetectUniformLocationBindingConflicts() const;
341 341
342 // Detects if there are uniforms of the same name but different type 342 // Detects if there are uniforms of the same name but different type
343 // or precision in vertex/fragment shaders. 343 // or precision in vertex/fragment shaders.
344 // Return true and set the first found conflicting hashed name to 344 // Return true and set the first found conflicting hashed name to
345 // conflicting_name if such cases are detected. 345 // conflicting_name if such cases are detected.
346 bool DetectUniformsMismatch(std::string* conflicting_name) const; 346 bool DetectUniformsMismatch(std::string* conflicting_name) const;
347 347
348 // Detects if there are interface blocks of the same name but different
349 // layouts.
350 bool DetectInterfaceBlocksMismatch(std::string* conflicting_name) const;
351
348 // Return true if a varying is statically used in fragment shader, but it 352 // Return true if a varying is statically used in fragment shader, but it
349 // is not declared in vertex shader. 353 // is not declared in vertex shader.
350 bool DetectVaryingsMismatch(std::string* conflicting_name) const; 354 bool DetectVaryingsMismatch(std::string* conflicting_name) const;
351 355
352 // Detects if there are fragment input location conflicts from 356 // Detects if there are fragment input location conflicts from
353 // glBindFragmentInputLocationCHROMIUM() calls. 357 // glBindFragmentInputLocationCHROMIUM() calls.
354 // We only consider the statically used fragment inputs in the program. 358 // We only consider the statically used fragment inputs in the program.
355 bool DetectFragmentInputLocationBindingConflicts() const; 359 bool DetectFragmentInputLocationBindingConflicts() const;
356 360
357 // Detects if there are program output location conflicts from 361 // Detects if there are program output location conflicts from
(...skipping 262 matching lines...) Expand 10 before | Expand all | Expand 10 after
620 }; 624 };
621 625
622 inline const FeatureInfo& Program::feature_info() const { 626 inline const FeatureInfo& Program::feature_info() const {
623 return *manager_->feature_info_.get(); 627 return *manager_->feature_info_.get();
624 } 628 }
625 629
626 } // namespace gles2 630 } // namespace gles2
627 } // namespace gpu 631 } // namespace gpu
628 632
629 #endif // GPU_COMMAND_BUFFER_SERVICE_PROGRAM_MANAGER_H_ 633 #endif // GPU_COMMAND_BUFFER_SERVICE_PROGRAM_MANAGER_H_
OLDNEW
« no previous file with comments | « no previous file | gpu/command_buffer/service/program_manager.cc » ('j') | gpu/command_buffer/service/program_manager.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698