OLD | NEW |
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 "GrBlend.h" | 13 #include "GrBlend.h" |
14 #include "GrShaderVar.h" | 14 #include "GrShaderVar.h" |
15 #include "SkRefCnt.h" | 15 #include "SkRefCnt.h" |
16 #include "SkString.h" | 16 #include "SkString.h" |
17 | 17 |
18 struct GrContextOptions; | 18 struct GrContextOptions; |
19 | 19 |
20 class GrShaderCaps : public SkRefCnt { | 20 class GrShaderCaps : public SkRefCnt { |
21 public: | 21 public: |
22 SK_DECLARE_INST_COUNT(GrShaderCaps) | |
23 | |
24 /** Info about shader variable precision within a given shader stage. That i
s, this info | 22 /** Info about shader variable precision within a given shader stage. That i
s, this info |
25 is relevant to a float (or vecNf) variable declared with a GrSLPrecision | 23 is relevant to a float (or vecNf) variable declared with a GrSLPrecision |
26 in a given GrShaderType. The info here is hoisted from the OpenGL spec.
*/ | 24 in a given GrShaderType. The info here is hoisted from the OpenGL spec.
*/ |
27 struct PrecisionInfo { | 25 struct PrecisionInfo { |
28 PrecisionInfo() { | 26 PrecisionInfo() { |
29 fLogRangeLow = 0; | 27 fLogRangeLow = 0; |
30 fLogRangeHigh = 0; | 28 fLogRangeHigh = 0; |
31 fBits = 0; | 29 fBits = 0; |
32 } | 30 } |
33 | 31 |
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
101 | 99 |
102 private: | 100 private: |
103 typedef SkRefCnt INHERITED; | 101 typedef SkRefCnt INHERITED; |
104 }; | 102 }; |
105 | 103 |
106 /** | 104 /** |
107 * Represents the capabilities of a GrContext. | 105 * Represents the capabilities of a GrContext. |
108 */ | 106 */ |
109 class GrCaps : public SkRefCnt { | 107 class GrCaps : public SkRefCnt { |
110 public: | 108 public: |
111 SK_DECLARE_INST_COUNT(GrCaps) | 109 |
112 | 110 |
113 GrCaps(const GrContextOptions&); | 111 GrCaps(const GrContextOptions&); |
114 | 112 |
115 virtual SkString dump() const; | 113 virtual SkString dump() const; |
116 | 114 |
117 GrShaderCaps* shaderCaps() const { return fShaderCaps; } | 115 GrShaderCaps* shaderCaps() const { return fShaderCaps; } |
118 | 116 |
119 bool npotTextureTileSupport() const { return fNPOTTextureTileSupport; } | 117 bool npotTextureTileSupport() const { return fNPOTTextureTileSupport; } |
120 /** To avoid as-yet-unnecessary complexity we don't allow any partial suppor
t of MIP Maps (e.g. | 118 /** To avoid as-yet-unnecessary complexity we don't allow any partial suppor
t of MIP Maps (e.g. |
121 only for POT textures) */ | 119 only for POT textures) */ |
(...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
257 bool fConfigTextureSupport[kGrPixelConfigCnt]; | 255 bool fConfigTextureSupport[kGrPixelConfigCnt]; |
258 | 256 |
259 private: | 257 private: |
260 bool fSupressPrints : 1; | 258 bool fSupressPrints : 1; |
261 bool fDrawPathMasksToCompressedTextureSupport : 1; | 259 bool fDrawPathMasksToCompressedTextureSupport : 1; |
262 | 260 |
263 typedef SkRefCnt INHERITED; | 261 typedef SkRefCnt INHERITED; |
264 }; | 262 }; |
265 | 263 |
266 #endif | 264 #endif |
OLD | NEW |