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

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

Issue 1151603005: Revert of Store context options on caps. (Closed) Base URL: https://skia.googlesource.com/skia.git@onecaps
Patch Set: Created 5 years, 7 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 | « gyp/gpu.gypi ('k') | include/gpu/GrContext.h » ('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 GrCaps_DEFINED 8 #ifndef GrCaps_DEFINED
9 #define GrCaps_DEFINED 9 #define GrCaps_DEFINED
10 10
11 #include "GrTypes.h" 11 #include "GrTypes.h"
12 #include "GrTypesPriv.h" 12 #include "GrTypesPriv.h"
13 #include "GrShaderVar.h" 13 #include "GrShaderVar.h"
14 #include "SkRefCnt.h" 14 #include "SkRefCnt.h"
15 #include "SkString.h" 15 #include "SkString.h"
16 16
17 struct GrContextOptions;
18
19 class GrShaderCaps : public SkRefCnt { 17 class GrShaderCaps : public SkRefCnt {
20 public: 18 public:
21 SK_DECLARE_INST_COUNT(GrShaderCaps) 19 SK_DECLARE_INST_COUNT(GrShaderCaps)
22 20
23 /** Info about shader variable precision within a given shader stage. That i s, this info 21 /** Info about shader variable precision within a given shader stage. That i s, this info
24 is relevant to a float (or vecNf) variable declared with a GrSLPrecision 22 is relevant to a float (or vecNf) variable declared with a GrSLPrecision
25 in a given GrShaderType. The info here is hoisted from the OpenGL spec. */ 23 in a given GrShaderType. The info here is hoisted from the OpenGL spec. */
26 struct PrecisionInfo { 24 struct PrecisionInfo {
27 PrecisionInfo() { 25 PrecisionInfo() {
28 fLogRangeLow = 0; 26 fLogRangeLow = 0;
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
98 typedef SkRefCnt INHERITED; 96 typedef SkRefCnt INHERITED;
99 }; 97 };
100 98
101 /** 99 /**
102 * Represents the capabilities of a GrContext. 100 * Represents the capabilities of a GrContext.
103 */ 101 */
104 class GrCaps : public SkRefCnt { 102 class GrCaps : public SkRefCnt {
105 public: 103 public:
106 SK_DECLARE_INST_COUNT(GrCaps) 104 SK_DECLARE_INST_COUNT(GrCaps)
107 105
108 GrCaps(const GrContextOptions&); 106 GrCaps();
109 107
110 virtual SkString dump() const; 108 virtual SkString dump() const;
111 109
112 GrShaderCaps* shaderCaps() const { return fShaderCaps; } 110 GrShaderCaps* shaderCaps() const { return fShaderCaps; }
113 111
114 bool npotTextureTileSupport() const { return fNPOTTextureTileSupport; } 112 bool npotTextureTileSupport() const { return fNPOTTextureTileSupport; }
115 /** To avoid as-yet-unnecessary complexity we don't allow any partial suppor t of MIP Maps (e.g. 113 /** To avoid as-yet-unnecessary complexity we don't allow any partial suppor t of MIP Maps (e.g.
116 only for POT textures) */ 114 only for POT textures) */
117 bool mipMapSupport() const { return fMipMapSupport; } 115 bool mipMapSupport() const { return fMipMapSupport; }
118 bool twoSidedStencilSupport() const { return fTwoSidedStencilSupport; } 116 bool twoSidedStencilSupport() const { return fTwoSidedStencilSupport; }
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
181 bool isConfigRenderable(GrPixelConfig config, bool withMSAA) const { 179 bool isConfigRenderable(GrPixelConfig config, bool withMSAA) const {
182 SkASSERT(kGrPixelConfigCnt > config); 180 SkASSERT(kGrPixelConfigCnt > config);
183 return fConfigRenderSupport[config][withMSAA]; 181 return fConfigRenderSupport[config][withMSAA];
184 } 182 }
185 183
186 bool isConfigTexturable(GrPixelConfig config) const { 184 bool isConfigTexturable(GrPixelConfig config) const {
187 SkASSERT(kGrPixelConfigCnt > config); 185 SkASSERT(kGrPixelConfigCnt > config);
188 return fConfigTextureSupport[config]; 186 return fConfigTextureSupport[config];
189 } 187 }
190 188
191 bool suppressPrints() const { return fSupressPrints; }
192
193 bool drawPathMasksToCompressedTexturesSupport() const {
194 return fDrawPathMasksToCompressedTextureSupport; }
195
196 protected: 189 protected:
197 SkAutoTUnref<GrShaderCaps> fShaderCaps; 190 SkAutoTUnref<GrShaderCaps> fShaderCaps;
198 191
199 bool fNPOTTextureTileSupport : 1; 192 bool fNPOTTextureTileSupport : 1;
200 bool fMipMapSupport : 1; 193 bool fMipMapSupport : 1;
201 bool fTwoSidedStencilSupport : 1; 194 bool fTwoSidedStencilSupport : 1;
202 bool fStencilWrapOpsSupport : 1; 195 bool fStencilWrapOpsSupport : 1;
203 bool fDiscardRenderTargetSupport : 1; 196 bool fDiscardRenderTargetSupport : 1;
204 bool fReuseScratchTextures : 1; 197 bool fReuseScratchTextures : 1;
205 bool fGpuTracingSupport : 1; 198 bool fGpuTracingSupport : 1;
206 bool fCompressedTexSubImageSupport : 1; 199 bool fCompressedTexSubImageSupport : 1;
207 bool fOversizedStencilSupport : 1; 200 bool fOversizedStencilSupport : 1;
208 bool fTextureBarrierSupport : 1; 201 bool fTextureBarrierSupport : 1;
209 // Driver workaround 202 // Driver workaround
210 bool fUseDrawInsteadOfClear : 1; 203 bool fUseDrawInsteadOfClear : 1;
211 204
212 BlendEquationSupport fBlendEquationSupport; 205 BlendEquationSupport fBlendEquationSupport;
213 uint32_t fMapBufferFlags; 206 uint32_t fMapBufferFlags;
214 207
215 int fMaxRenderTargetSize; 208 int fMaxRenderTargetSize;
216 int fMaxTextureSize; 209 int fMaxTextureSize;
217 int fMaxSampleCount; 210 int fMaxSampleCount;
218 211
219 // The first entry for each config is without msaa and the second is with. 212 // The first entry for each config is without msaa and the second is with.
220 bool fConfigRenderSupport[kGrPixelConfigCnt][2]; 213 bool fConfigRenderSupport[kGrPixelConfigCnt][2];
221 bool fConfigTextureSupport[kGrPixelConfigCnt]; 214 bool fConfigTextureSupport[kGrPixelConfigCnt];
222 215
223 private: 216 private:
224 bool fSupressPrints : 1;
225 bool fDrawPathMasksToCompressedTextureSupport : 1;
226
227 typedef SkRefCnt INHERITED; 217 typedef SkRefCnt INHERITED;
228 }; 218 };
229 219
230 #endif 220 #endif
OLDNEW
« no previous file with comments | « gyp/gpu.gypi ('k') | include/gpu/GrContext.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698