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

Side by Side Diff: src/gpu/gl/GrGLProgramDesc.h

Issue 22850006: Replace uses of GrAssert by SkASSERT. (Closed) Base URL: https://skia.googlecode.com/svn/trunk
Patch Set: rebase Created 7 years, 4 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 | Annotate | Revision Log
« no previous file with comments | « src/gpu/gl/GrGLProgram.cpp ('k') | src/gpu/gl/GrGLProgramDesc.cpp » ('j') | 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 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 GrGLProgramDesc_DEFINED 8 #ifndef GrGLProgramDesc_DEFINED
9 #define GrGLProgramDesc_DEFINED 9 #define GrGLProgramDesc_DEFINED
10 10
(...skipping 12 matching lines...) Expand all
23 of this is GL-specific. There is the generation of GrGLEffect::EffectKeys an d the dst-read part 23 of this is GL-specific. There is the generation of GrGLEffect::EffectKeys an d the dst-read part
24 of the key set by GrGLShaderBuilder. If the interfaces that set those portio ns were abstracted 24 of the key set by GrGLShaderBuilder. If the interfaces that set those portio ns were abstracted
25 to be API-neutral then so could this class. */ 25 to be API-neutral then so could this class. */
26 class GrGLProgramDesc { 26 class GrGLProgramDesc {
27 public: 27 public:
28 GrGLProgramDesc() : fInitialized(false) {} 28 GrGLProgramDesc() : fInitialized(false) {}
29 GrGLProgramDesc(const GrGLProgramDesc& desc) { *this = desc; } 29 GrGLProgramDesc(const GrGLProgramDesc& desc) { *this = desc; }
30 30
31 // Returns this as a uint32_t array to be used as a key in the program cache . 31 // Returns this as a uint32_t array to be used as a key in the program cache .
32 const uint32_t* asKey() const { 32 const uint32_t* asKey() const {
33 GrAssert(fInitialized); 33 SkASSERT(fInitialized);
34 return reinterpret_cast<const uint32_t*>(fKey.get()); 34 return reinterpret_cast<const uint32_t*>(fKey.get());
35 } 35 }
36 36
37 // Gets the number of bytes in asKey(). It will be a 4-byte aligned value. W hen comparing two 37 // Gets the number of bytes in asKey(). It will be a 4-byte aligned value. W hen comparing two
38 // keys the size of either key can be used with memcmp() since the lengths t hemselves begin the 38 // keys the size of either key can be used with memcmp() since the lengths t hemselves begin the
39 // keys and thus the memcmp will exit early if the keys are of different len gths. 39 // keys and thus the memcmp will exit early if the keys are of different len gths.
40 uint32_t keyLength() const { return *this->atOffset<uint32_t, kLengthOffset> (); } 40 uint32_t keyLength() const { return *this->atOffset<uint32_t, kLengthOffset> (); }
41 41
42 // Gets the a checksum of the key. Can be used as a hash value for a fast lo okup in a cache. 42 // Gets the a checksum of the key. Can be used as a hash value for a fast lo okup in a cache.
43 uint32_t getChecksum() const { return *this->atOffset<uint32_t, kChecksumOff set>(); } 43 uint32_t getChecksum() const { return *this->atOffset<uint32_t, kChecksumOff set>(); }
(...skipping 20 matching lines...) Expand all
64 GrDrawState::BlendOptFlags, 64 GrDrawState::BlendOptFlags,
65 GrBlendCoeff srcCoeff, 65 GrBlendCoeff srcCoeff,
66 GrBlendCoeff dstCoeff, 66 GrBlendCoeff dstCoeff,
67 const GrGpuGL* gpu, 67 const GrGpuGL* gpu,
68 const GrDeviceCoordTexture* dstCopy, 68 const GrDeviceCoordTexture* dstCopy,
69 SkTArray<const GrEffectStage*, true>* outColorStages, 69 SkTArray<const GrEffectStage*, true>* outColorStages,
70 SkTArray<const GrEffectStage*, true>* outCoverageStages, 70 SkTArray<const GrEffectStage*, true>* outCoverageStages,
71 GrGLProgramDesc* outDesc); 71 GrGLProgramDesc* outDesc);
72 72
73 int numColorEffects() const { 73 int numColorEffects() const {
74 GrAssert(fInitialized); 74 SkASSERT(fInitialized);
75 return this->getHeader().fColorEffectCnt; 75 return this->getHeader().fColorEffectCnt;
76 } 76 }
77 77
78 int numCoverageEffects() const { 78 int numCoverageEffects() const {
79 GrAssert(fInitialized); 79 SkASSERT(fInitialized);
80 return this->getHeader().fCoverageEffectCnt; 80 return this->getHeader().fCoverageEffectCnt;
81 } 81 }
82 82
83 int numTotalEffects() const { return this->numColorEffects() + this->numCove rageEffects(); } 83 int numTotalEffects() const { return this->numColorEffects() + this->numCove rageEffects(); }
84 84
85 GrGLProgramDesc& operator= (const GrGLProgramDesc& other); 85 GrGLProgramDesc& operator= (const GrGLProgramDesc& other);
86 86
87 bool operator== (const GrGLProgramDesc& other) const { 87 bool operator== (const GrGLProgramDesc& other) const {
88 GrAssert(fInitialized && other.fInitialized); 88 SkASSERT(fInitialized && other.fInitialized);
89 // The length is masked as a hint to the compiler that the address will be 4 byte aligned. 89 // The length is masked as a hint to the compiler that the address will be 4 byte aligned.
90 return 0 == memcmp(this->asKey(), other.asKey(), this->keyLength() & ~0x 3); 90 return 0 == memcmp(this->asKey(), other.asKey(), this->keyLength() & ~0x 3);
91 } 91 }
92 92
93 bool operator!= (const GrGLProgramDesc& other) const { 93 bool operator!= (const GrGLProgramDesc& other) const {
94 return !(*this == other); 94 return !(*this == other);
95 } 95 }
96 96
97 static bool Less(const GrGLProgramDesc& a, const GrGLProgramDesc& b) { 97 static bool Less(const GrGLProgramDesc& a, const GrGLProgramDesc& b) {
98 return memcmp(a.asKey(), b.asKey(), a.keyLength() & ~0x3) < 0; 98 return memcmp(a.asKey(), b.asKey(), a.keyLength() & ~0x3) < 0;
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after
212 SkAutoSMalloc<kPreAllocSize> fKey; 212 SkAutoSMalloc<kPreAllocSize> fKey;
213 bool fInitialized; 213 bool fInitialized;
214 214
215 // GrGLProgram and GrGLShaderBuilder read the private fields to generate cod e. TODO: Move all 215 // GrGLProgram and GrGLShaderBuilder read the private fields to generate cod e. TODO: Move all
216 // code generation to GrGLShaderBuilder (and maybe add getters rather than f riending). 216 // code generation to GrGLShaderBuilder (and maybe add getters rather than f riending).
217 friend class GrGLProgram; 217 friend class GrGLProgram;
218 friend class GrGLShaderBuilder; 218 friend class GrGLShaderBuilder;
219 }; 219 };
220 220
221 #endif 221 #endif
OLDNEW
« no previous file with comments | « src/gpu/gl/GrGLProgram.cpp ('k') | src/gpu/gl/GrGLProgramDesc.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698