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

Side by Side Diff: src/gpu/glsl/GrGLSLShaderVar.h

Issue 1611423002: Add setter for GrGLSLShaderVar layout qualifier (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Created 4 years, 11 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
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2011 Google Inc. 2 * Copyright 2011 Google Inc.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license that can be 4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file. 5 * found in the LICENSE file.
6 */ 6 */
7 7
8 #ifndef GrGLSLShaderVar_DEFINED 8 #ifndef GrGLSLShaderVar_DEFINED
9 #define GrGLSLShaderVar_DEFINED 9 #define GrGLSLShaderVar_DEFINED
10 10
(...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after
123 const char* layoutQualifier = nullptr, 123 const char* layoutQualifier = nullptr,
124 bool useUniformFloatArrays = USE_UNIFORM_FLOAT_ARRAYS) { 124 bool useUniformFloatArrays = USE_UNIFORM_FLOAT_ARRAYS) {
125 SkASSERT(kVoid_GrSLType != type); 125 SkASSERT(kVoid_GrSLType != type);
126 SkASSERT(kDefault_GrSLPrecision == precision || GrSLTypeIsFloatType(type )); 126 SkASSERT(kDefault_GrSLPrecision == precision || GrSLTypeIsFloatType(type ));
127 INHERITED::set(type, name, typeModifier, precision, count); 127 INHERITED::set(type, name, typeModifier, precision, count);
128 fLayoutQualifier = layoutQualifier; 128 fLayoutQualifier = layoutQualifier;
129 fUseUniformFloatArrays = useUniformFloatArrays; 129 fUseUniformFloatArrays = useUniformFloatArrays;
130 } 130 }
131 131
132 /** 132 /**
133 * Set the layout qualifier
134 */
135 void setLayoutQualifier(const char* layoutQualifier) {
136 fLayoutQualifier = layoutQualifier;
137 }
138
139 /**
133 * Write a declaration of this variable to out. 140 * Write a declaration of this variable to out.
134 */ 141 */
135 void appendDecl(const GrGLSLCaps* glslCaps, SkString* out) const { 142 void appendDecl(const GrGLSLCaps* glslCaps, SkString* out) const {
136 SkASSERT(kDefault_GrSLPrecision == fPrecision || GrSLTypeIsFloatType(fTy pe)); 143 SkASSERT(kDefault_GrSLPrecision == fPrecision || GrSLTypeIsFloatType(fTy pe));
137 if (!fLayoutQualifier.isEmpty()) { 144 if (!fLayoutQualifier.isEmpty()) {
138 out->appendf("layout(%s) ", fLayoutQualifier.c_str()); 145 out->appendf("layout(%s) ", fLayoutQualifier.c_str());
139 } 146 }
140 if (this->getTypeModifier() != kNone_TypeModifier) { 147 if (this->getTypeModifier() != kNone_TypeModifier) {
141 out->append(TypeModifierString(glslCaps, this->getTypeModifier())); 148 out->append(TypeModifierString(glslCaps, this->getTypeModifier()));
142 out->append(" "); 149 out->append(" ");
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
222 /// Work around driver bugs on some hardware that don't correctly 229 /// Work around driver bugs on some hardware that don't correctly
223 /// support uniform float [] 230 /// support uniform float []
224 bool fUseUniformFloatArrays; 231 bool fUseUniformFloatArrays;
225 232
226 SkString fLayoutQualifier; 233 SkString fLayoutQualifier;
227 234
228 typedef GrShaderVar INHERITED; 235 typedef GrShaderVar INHERITED;
229 }; 236 };
230 237
231 #endif 238 #endif
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698