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

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

Issue 1417123002: Move GrGLShaderVar to GrGLSL (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: fix gyp Created 5 years, 2 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 | « src/gpu/gl/builders/GrGLVertexShaderBuilder.cpp ('k') | 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 GrGLShaderVar_DEFINED 8 #ifndef GrGLSLShaderVar_DEFINED
9 #define GrGLShaderVar_DEFINED 9 #define GrGLSLShaderVar_DEFINED
10 10
11 #include "GrShaderVar.h" 11 #include "GrShaderVar.h"
12 #include "../glsl/GrGLSL.h" 12 #include "../glsl/GrGLSL.h"
13 #include "../glsl/GrGLSLCaps.h" 13 #include "../glsl/GrGLSLCaps.h"
14 14
15 #define USE_UNIFORM_FLOAT_ARRAYS true 15 #define USE_UNIFORM_FLOAT_ARRAYS true
16 16
17 /** 17 /**
18 * Represents a variable in a shader 18 * Represents a variable in a shader
19 */ 19 */
20 class GrGLShaderVar : public GrShaderVar { 20 class GrGLSLShaderVar : public GrShaderVar {
21 public: 21 public:
22 /** 22 /**
23 * See GL_ARB_fragment_coord_conventions. 23 * See GL_ARB_fragment_coord_conventions.
24 */ 24 */
25 enum Origin { 25 enum Origin {
26 kDefault_Origin, // when set to kDefault the origin field is igno red. 26 kDefault_Origin, // when set to kDefault the origin field is igno red.
27 kUpperLeft_Origin, // only used to declare vec4 in gl_FragCoord. 27 kUpperLeft_Origin, // only used to declare vec4 in gl_FragCoord.
28 }; 28 };
29 29
30 /** 30 /**
31 * Defaults to a float with no precision specifier 31 * Defaults to a float with no precision specifier
32 */ 32 */
33 GrGLShaderVar() 33 GrGLSLShaderVar()
34 : GrShaderVar() 34 : GrShaderVar()
35 , fOrigin(kDefault_Origin) 35 , fOrigin(kDefault_Origin)
36 , fUseUniformFloatArrays(USE_UNIFORM_FLOAT_ARRAYS) { 36 , fUseUniformFloatArrays(USE_UNIFORM_FLOAT_ARRAYS) {
37 } 37 }
38 38
39 GrGLShaderVar(const char* name, GrSLType type, int arrayCount = kNonArray, 39 GrGLSLShaderVar(const char* name, GrSLType type, int arrayCount = kNonArray,
40 GrSLPrecision precision = kDefault_GrSLPrecision) 40 GrSLPrecision precision = kDefault_GrSLPrecision)
41 : GrShaderVar(name, type, arrayCount, precision) 41 : GrShaderVar(name, type, arrayCount, precision)
42 , fOrigin(kDefault_Origin) 42 , fOrigin(kDefault_Origin)
43 , fUseUniformFloatArrays(USE_UNIFORM_FLOAT_ARRAYS) { 43 , fUseUniformFloatArrays(USE_UNIFORM_FLOAT_ARRAYS) {
44 SkASSERT(kVoid_GrSLType != type); 44 SkASSERT(kVoid_GrSLType != type);
45 fOrigin = kDefault_Origin; 45 fOrigin = kDefault_Origin;
46 fUseUniformFloatArrays = USE_UNIFORM_FLOAT_ARRAYS; 46 fUseUniformFloatArrays = USE_UNIFORM_FLOAT_ARRAYS;
47 } 47 }
48 48
49 GrGLShaderVar(const char* name, GrSLType type, TypeModifier typeModifier, 49 GrGLSLShaderVar(const char* name, GrSLType type, TypeModifier typeModifier,
50 int arrayCount = kNonArray, GrSLPrecision precision = kDefault _GrSLPrecision) 50 int arrayCount = kNonArray, GrSLPrecision precision = kDefau lt_GrSLPrecision)
51 : GrShaderVar(name, type, typeModifier, arrayCount, precision) 51 : GrShaderVar(name, type, typeModifier, arrayCount, precision)
52 , fOrigin(kDefault_Origin) 52 , fOrigin(kDefault_Origin)
53 , fUseUniformFloatArrays(USE_UNIFORM_FLOAT_ARRAYS) { 53 , fUseUniformFloatArrays(USE_UNIFORM_FLOAT_ARRAYS) {
54 SkASSERT(kVoid_GrSLType != type); 54 SkASSERT(kVoid_GrSLType != type);
55 } 55 }
56 56
57 GrGLShaderVar(const GrShaderVar& var) 57 GrGLSLShaderVar(const GrShaderVar& var)
58 : GrShaderVar(var) 58 : GrShaderVar(var)
59 , fOrigin(kDefault_Origin) 59 , fOrigin(kDefault_Origin)
60 , fUseUniformFloatArrays(USE_UNIFORM_FLOAT_ARRAYS) { 60 , fUseUniformFloatArrays(USE_UNIFORM_FLOAT_ARRAYS) {
61 SkASSERT(kVoid_GrSLType != var.getType()); 61 SkASSERT(kVoid_GrSLType != var.getType());
62 } 62 }
63 63
64 GrGLShaderVar(const GrGLShaderVar& var) 64 GrGLSLShaderVar(const GrGLSLShaderVar& var)
65 : GrShaderVar(var.c_str(), var.getType(), var.getTypeModifier(), 65 : GrShaderVar(var.c_str(), var.getType(), var.getTypeModifier(),
66 var.getArrayCount(), var.getPrecision()) 66 var.getArrayCount(), var.getPrecision())
67 , fOrigin(var.fOrigin) 67 , fOrigin(var.fOrigin)
68 , fUseUniformFloatArrays(var.fUseUniformFloatArrays) { 68 , fUseUniformFloatArrays(var.fUseUniformFloatArrays) {
69 SkASSERT(kVoid_GrSLType != var.getType()); 69 SkASSERT(kVoid_GrSLType != var.getType());
70 } 70 }
71 71
72 /** 72 /**
73 * Values for array count that have special meaning. We allow 1-sized arrays . 73 * Values for array count that have special meaning. We allow 1-sized arrays .
74 */ 74 */
(...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after
247 247
248 Origin fOrigin; 248 Origin fOrigin;
249 /// Work around driver bugs on some hardware that don't correctly 249 /// Work around driver bugs on some hardware that don't correctly
250 /// support uniform float [] 250 /// support uniform float []
251 bool fUseUniformFloatArrays; 251 bool fUseUniformFloatArrays;
252 252
253 typedef GrShaderVar INHERITED; 253 typedef GrShaderVar INHERITED;
254 }; 254 };
255 255
256 #endif 256 #endif
OLDNEW
« no previous file with comments | « src/gpu/gl/builders/GrGLVertexShaderBuilder.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698