OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2015 Google Inc. | 2 * Copyright 2015 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 GrGLSLProgramDataManager_DEFINED | 8 #ifndef GrGLSLProgramDataManager_DEFINED |
9 #define GrGLSLProgramDataManager_DEFINED | 9 #define GrGLSLProgramDataManager_DEFINED |
10 | 10 |
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
55 virtual void set4f(UniformHandle, float, float, float, float) const = 0; | 55 virtual void set4f(UniformHandle, float, float, float, float) const = 0; |
56 virtual void set4fv(UniformHandle, int arrayCount, const float v[]) const =
0; | 56 virtual void set4fv(UniformHandle, int arrayCount, const float v[]) const =
0; |
57 // matrices are column-major, the first three upload a single matrix, the la
tter three upload | 57 // matrices are column-major, the first three upload a single matrix, the la
tter three upload |
58 // arrayCount matrices into a uniform array. | 58 // arrayCount matrices into a uniform array. |
59 virtual void setMatrix3f(UniformHandle, const float matrix[]) const = 0; | 59 virtual void setMatrix3f(UniformHandle, const float matrix[]) const = 0; |
60 virtual void setMatrix4f(UniformHandle, const float matrix[]) const = 0; | 60 virtual void setMatrix4f(UniformHandle, const float matrix[]) const = 0; |
61 virtual void setMatrix3fv(UniformHandle, int arrayCount, const float matrice
s[]) const = 0; | 61 virtual void setMatrix3fv(UniformHandle, int arrayCount, const float matrice
s[]) const = 0; |
62 virtual void setMatrix4fv(UniformHandle, int arrayCount, const float matrice
s[]) const = 0; | 62 virtual void setMatrix4fv(UniformHandle, int arrayCount, const float matrice
s[]) const = 0; |
63 | 63 |
64 // convenience method for uploading a SkMatrix to a 3x3 matrix uniform | 64 // convenience method for uploading a SkMatrix to a 3x3 matrix uniform |
65 virtual void setSkMatrix(UniformHandle, const SkMatrix&) const = 0; | 65 void setSkMatrix(UniformHandle, const SkMatrix&) const; |
66 | 66 |
67 // for nvpr only | 67 // for nvpr only |
68 typedef ShaderResourceHandle VaryingHandle; | 68 typedef ShaderResourceHandle VaryingHandle; |
69 virtual void setPathFragmentInputTransform(VaryingHandle u, int components, | 69 virtual void setPathFragmentInputTransform(VaryingHandle u, int components, |
70 const SkMatrix& matrix) const = 0
; | 70 const SkMatrix& matrix) const = 0
; |
71 | 71 |
72 protected: | 72 protected: |
73 GrGLSLProgramDataManager() {} | 73 GrGLSLProgramDataManager() {} |
74 | 74 |
75 private: | 75 private: |
76 | 76 |
77 typedef SkNoncopyable INHERITED; | 77 typedef SkNoncopyable INHERITED; |
78 }; | 78 }; |
79 | 79 |
80 #endif | 80 #endif |
OLD | NEW |