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

Side by Side Diff: include/gpu/GrTypesPriv.h

Issue 580863004: Adding 3D lut color filter (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: New version Created 6 years, 3 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 /* 1 /*
2 * Copyright 2013 Google Inc. 2 * Copyright 2013 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 GrTypesPriv_DEFINED 8 #ifndef GrTypesPriv_DEFINED
9 #define GrTypesPriv_DEFINED 9 #define GrTypesPriv_DEFINED
10 10
11 #include "GrTypes.h" 11 #include "GrTypes.h"
12 #include "SkTArray.h" 12 #include "SkTArray.h"
13 13
14 /** 14 /**
15 * Types of shader-language-specific boxed variables we can create. (Currently o nly GrGLShaderVars, 15 * Types of shader-language-specific boxed variables we can create. (Currently o nly GrGLShaderVars,
16 * but should be applicable to other shader languages.) 16 * but should be applicable to other shader languages.)
17 */ 17 */
18 enum GrSLType { 18 enum GrSLType {
19 kVoid_GrSLType, 19 kVoid_GrSLType,
20 kFloat_GrSLType, 20 kFloat_GrSLType,
21 kVec2f_GrSLType, 21 kVec2f_GrSLType,
22 kVec3f_GrSLType, 22 kVec3f_GrSLType,
23 kVec4f_GrSLType, 23 kVec4f_GrSLType,
24 kMat33f_GrSLType, 24 kMat33f_GrSLType,
25 kMat44f_GrSLType, 25 kMat44f_GrSLType,
26 kSampler2D_GrSLType, 26 kSampler2D_GrSLType,
27 kSampler3D_GrSLType,
27 28
28 kLast_GrSLType = kSampler2D_GrSLType 29 kLast_GrSLType = kSampler3D_GrSLType
29 }; 30 };
30 static const int kGrSLTypeCount = kLast_GrSLType + 1; 31 static const int kGrSLTypeCount = kLast_GrSLType + 1;
31 32
32 /** 33 /**
33 * Gets the vector size of the SLType. Returns -1 for void, matrices, and sample rs. 34 * Gets the vector size of the SLType. Returns -1 for void, matrices, and sample rs.
34 */ 35 */
35 static inline int GrSLTypeVectorCount(GrSLType type) { 36 static inline int GrSLTypeVectorCount(GrSLType type) {
36 SkASSERT(type >= 0 && type < static_cast<GrSLType>(kGrSLTypeCount)); 37 SkASSERT(type >= 0 && type < static_cast<GrSLType>(kGrSLTypeCount));
37 static const int kCounts[] = { -1, 1, 2, 3, 4, -1, -1, -1 }; 38 static const int kCounts[] = { -1, 1, 2, 3, 4, -1, -1, -1, -1 };
38 return kCounts[type]; 39 return kCounts[type];
39 40
40 GR_STATIC_ASSERT(0 == kVoid_GrSLType); 41 GR_STATIC_ASSERT(0 == kVoid_GrSLType);
41 GR_STATIC_ASSERT(1 == kFloat_GrSLType); 42 GR_STATIC_ASSERT(1 == kFloat_GrSLType);
42 GR_STATIC_ASSERT(2 == kVec2f_GrSLType); 43 GR_STATIC_ASSERT(2 == kVec2f_GrSLType);
43 GR_STATIC_ASSERT(3 == kVec3f_GrSLType); 44 GR_STATIC_ASSERT(3 == kVec3f_GrSLType);
44 GR_STATIC_ASSERT(4 == kVec4f_GrSLType); 45 GR_STATIC_ASSERT(4 == kVec4f_GrSLType);
45 GR_STATIC_ASSERT(5 == kMat33f_GrSLType); 46 GR_STATIC_ASSERT(5 == kMat33f_GrSLType);
46 GR_STATIC_ASSERT(6 == kMat44f_GrSLType); 47 GR_STATIC_ASSERT(6 == kMat44f_GrSLType);
47 GR_STATIC_ASSERT(7 == kSampler2D_GrSLType); 48 GR_STATIC_ASSERT(7 == kSampler2D_GrSLType);
49 GR_STATIC_ASSERT(8 == kSampler3D_GrSLType);
48 GR_STATIC_ASSERT(SK_ARRAY_COUNT(kCounts) == kGrSLTypeCount); 50 GR_STATIC_ASSERT(SK_ARRAY_COUNT(kCounts) == kGrSLTypeCount);
49 } 51 }
50 52
51 /** Return the type enum for a vector of floats of length n (1..4), 53 /** Return the type enum for a vector of floats of length n (1..4),
52 e.g. 1 -> kFloat_GrSLType, 2 -> kVec2_GrSLType, ... */ 54 e.g. 1 -> kFloat_GrSLType, 2 -> kVec2_GrSLType, ... */
53 static inline GrSLType GrSLFloatVectorType(int count) { 55 static inline GrSLType GrSLFloatVectorType(int count) {
54 SkASSERT(count > 0 && count <= 4); 56 SkASSERT(count > 0 && count <= 4);
55 return (GrSLType)(count); 57 return (GrSLType)(count);
56 58
57 GR_STATIC_ASSERT(kFloat_GrSLType == 1); 59 GR_STATIC_ASSERT(kFloat_GrSLType == 1);
(...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after
211 return kFillBW_GrEffectEdgeType; 213 return kFillBW_GrEffectEdgeType;
212 case kInverseFillAA_GrEffectEdgeType: 214 case kInverseFillAA_GrEffectEdgeType:
213 return kFillAA_GrEffectEdgeType; 215 return kFillAA_GrEffectEdgeType;
214 case kHairlineAA_GrEffectEdgeType: 216 case kHairlineAA_GrEffectEdgeType:
215 SkFAIL("Hairline fill isn't invertible."); 217 SkFAIL("Hairline fill isn't invertible.");
216 } 218 }
217 return kFillAA_GrEffectEdgeType; // suppress warning. 219 return kFillAA_GrEffectEdgeType; // suppress warning.
218 } 220 }
219 221
220 #endif 222 #endif
OLDNEW
« no previous file with comments | « include/gpu/GrTypes.h ('k') | include/gpu/gl/GrGLFunctions.h » ('j') | src/gpu/gl/GrGLCaps.cpp » ('J')

Powered by Google App Engine
This is Rietveld 408576698