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

Side by Side Diff: src/gpu/GrDrawTargetCaps.h

Issue 1019303005: Remove unused HWAA flag and uniqueID field from GrDrawTargetCaps. (Closed) Base URL: https://chromium.googlesource.com/skia@contextHacking
Patch Set: Created 5 years, 9 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/GrDrawTarget.cpp ('k') | src/gpu/gl/GrGLCaps.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 /* 2 /*
3 * Copyright 2013 Google Inc. 3 * Copyright 2013 Google Inc.
4 * 4 *
5 * Use of this source code is governed by a BSD-style license that can be 5 * Use of this source code is governed by a BSD-style license that can be
6 * found in the LICENSE file. 6 * found in the LICENSE file.
7 */ 7 */
8 #ifndef GrDrawTargetCaps_DEFINED 8 #ifndef GrDrawTargetCaps_DEFINED
9 #define GrDrawTargetCaps_DEFINED 9 #define GrDrawTargetCaps_DEFINED
10 10
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
49 """ 49 """
50 If the smallest representable value greater than 1 is 1 + e, the n fBits will 50 If the smallest representable value greater than 1 is 1 + e, the n fBits will
51 contain floor(log2(e)), and every value in the range [2^fLogRang eLow, 51 contain floor(log2(e)), and every value in the range [2^fLogRang eLow,
52 2^fLogRangeHigh] can be represented to at least one part in 2^fB its. 52 2^fLogRangeHigh] can be represented to at least one part in 2^fB its.
53 """ 53 """
54 */ 54 */
55 int fBits; 55 int fBits;
56 }; 56 };
57 57
58 58
59 GrDrawTargetCaps() : fUniqueID(CreateUniqueID()) { 59 GrDrawTargetCaps() {
60 this->reset(); 60 this->reset();
61 } 61 }
62 GrDrawTargetCaps(const GrDrawTargetCaps& other) : INHERITED(), fUniqueID(Cre ateUniqueID()) { 62 GrDrawTargetCaps(const GrDrawTargetCaps& other) : INHERITED() {
63 *this = other; 63 *this = other;
64 } 64 }
65 GrDrawTargetCaps& operator= (const GrDrawTargetCaps&); 65 GrDrawTargetCaps& operator= (const GrDrawTargetCaps&);
66 66
67 virtual void reset(); 67 virtual void reset();
68 virtual SkString dump() const; 68 virtual SkString dump() const;
69 69
70 bool npotTextureTileSupport() const { return fNPOTTextureTileSupport; } 70 bool npotTextureTileSupport() const { return fNPOTTextureTileSupport; }
71 /** To avoid as-yet-unnecessary complexity we don't allow any partial suppor t of MIP Maps (e.g. 71 /** To avoid as-yet-unnecessary complexity we don't allow any partial suppor t of MIP Maps (e.g.
72 only for POT textures) */ 72 only for POT textures) */
73 bool mipMapSupport() const { return fMipMapSupport; } 73 bool mipMapSupport() const { return fMipMapSupport; }
74 bool twoSidedStencilSupport() const { return fTwoSidedStencilSupport; } 74 bool twoSidedStencilSupport() const { return fTwoSidedStencilSupport; }
75 bool stencilWrapOpsSupport() const { return fStencilWrapOpsSupport; } 75 bool stencilWrapOpsSupport() const { return fStencilWrapOpsSupport; }
76 bool hwAALineSupport() const { return fHWAALineSupport; }
77 bool shaderDerivativeSupport() const { return fShaderDerivativeSupport; } 76 bool shaderDerivativeSupport() const { return fShaderDerivativeSupport; }
78 bool geometryShaderSupport() const { return fGeometryShaderSupport; } 77 bool geometryShaderSupport() const { return fGeometryShaderSupport; }
79 bool dualSourceBlendingSupport() const { return fDualSourceBlendingSupport; } 78 bool dualSourceBlendingSupport() const { return fDualSourceBlendingSupport; }
80 bool pathRenderingSupport() const { return fPathRenderingSupport; } 79 bool pathRenderingSupport() const { return fPathRenderingSupport; }
81 bool dstReadInShaderSupport() const { return fDstReadInShaderSupport; } 80 bool dstReadInShaderSupport() const { return fDstReadInShaderSupport; }
82 bool discardRenderTargetSupport() const { return fDiscardRenderTargetSupport ; } 81 bool discardRenderTargetSupport() const { return fDiscardRenderTargetSupport ; }
83 #if GR_FORCE_GPU_TRACE_DEBUGGING 82 #if GR_FORCE_GPU_TRACE_DEBUGGING
84 bool gpuTracingSupport() const { return true; } 83 bool gpuTracingSupport() const { return true; }
85 #else 84 #else
86 bool gpuTracingSupport() const { return fGpuTracingSupport; } 85 bool gpuTracingSupport() const { return fGpuTracingSupport; }
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
136 return fFloatPrecisions[shaderType][precision]; 135 return fFloatPrecisions[shaderType][precision];
137 }; 136 };
138 137
139 /** 138 /**
140 * Is there any difference between the float shader variable precision types ? If this is true 139 * Is there any difference between the float shader variable precision types ? If this is true
141 * then unless the shader type is not supported, any call to getFloatShaderP recisionInfo() would 140 * then unless the shader type is not supported, any call to getFloatShaderP recisionInfo() would
142 * report the same info for all precisions in all shader types. 141 * report the same info for all precisions in all shader types.
143 */ 142 */
144 bool floatPrecisionVaries() const { return fShaderPrecisionVaries; } 143 bool floatPrecisionVaries() const { return fShaderPrecisionVaries; }
145 144
146 /**
147 * Gets an id that is unique for this GrDrawTargetCaps object. It is static in that it does
148 * not change when the content of the GrDrawTargetCaps object changes. This will never return
149 * 0.
150 */
151 uint32_t getUniqueID() const { return fUniqueID; }
152
153 protected: 145 protected:
154 bool fNPOTTextureTileSupport : 1; 146 bool fNPOTTextureTileSupport : 1;
155 bool fMipMapSupport : 1; 147 bool fMipMapSupport : 1;
156 bool fTwoSidedStencilSupport : 1; 148 bool fTwoSidedStencilSupport : 1;
157 bool fStencilWrapOpsSupport : 1; 149 bool fStencilWrapOpsSupport : 1;
158 bool fHWAALineSupport : 1;
159 bool fShaderDerivativeSupport : 1; 150 bool fShaderDerivativeSupport : 1;
160 bool fGeometryShaderSupport : 1; 151 bool fGeometryShaderSupport : 1;
161 bool fDualSourceBlendingSupport : 1; 152 bool fDualSourceBlendingSupport : 1;
162 bool fPathRenderingSupport : 1; 153 bool fPathRenderingSupport : 1;
163 bool fDstReadInShaderSupport : 1; 154 bool fDstReadInShaderSupport : 1;
164 bool fDiscardRenderTargetSupport : 1; 155 bool fDiscardRenderTargetSupport : 1;
165 bool fReuseScratchTextures : 1; 156 bool fReuseScratchTextures : 1;
166 bool fGpuTracingSupport : 1; 157 bool fGpuTracingSupport : 1;
167 bool fCompressedTexSubImageSupport : 1; 158 bool fCompressedTexSubImageSupport : 1;
168 bool fOversizedStencilSupport : 1; 159 bool fOversizedStencilSupport : 1;
169 // Driver workaround 160 // Driver workaround
170 bool fUseDrawInsteadOfClear : 1; 161 bool fUseDrawInsteadOfClear : 1;
171 162
172 uint32_t fMapBufferFlags; 163 uint32_t fMapBufferFlags;
173 164
174 int fMaxRenderTargetSize; 165 int fMaxRenderTargetSize;
175 int fMaxTextureSize; 166 int fMaxTextureSize;
176 int fMaxSampleCount; 167 int fMaxSampleCount;
177 168
178 // The first entry for each config is without msaa and the second is with. 169 // The first entry for each config is without msaa and the second is with.
179 bool fConfigRenderSupport[kGrPixelConfigCnt][2]; 170 bool fConfigRenderSupport[kGrPixelConfigCnt][2];
180 bool fConfigTextureSupport[kGrPixelConfigCnt]; 171 bool fConfigTextureSupport[kGrPixelConfigCnt];
181 172
182 bool fShaderPrecisionVaries; 173 bool fShaderPrecisionVaries;
183 PrecisionInfo fFloatPrecisions[kGrShaderTypeCount][kGrSLPrecisionCount]; 174 PrecisionInfo fFloatPrecisions[kGrShaderTypeCount][kGrSLPrecisionCount];
184 175
185 private: 176 private:
186 static uint32_t CreateUniqueID();
187
188 const uint32_t fUniqueID;
189
190 typedef SkRefCnt INHERITED; 177 typedef SkRefCnt INHERITED;
191 }; 178 };
192 179
193 #endif 180 #endif
OLDNEW
« no previous file with comments | « src/gpu/GrDrawTarget.cpp ('k') | src/gpu/gl/GrGLCaps.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698