OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2012 Google Inc. | 2 * Copyright 2012 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 | 8 |
9 #ifndef GrGLCaps_DEFINED | 9 #ifndef GrGLCaps_DEFINED |
10 #define GrGLCaps_DEFINED | 10 #define GrGLCaps_DEFINED |
(...skipping 246 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
257 kLATC_LATCAlias, | 257 kLATC_LATCAlias, |
258 kRGTC_LATCAlias, | 258 kRGTC_LATCAlias, |
259 k3DC_LATCAlias | 259 k3DC_LATCAlias |
260 }; | 260 }; |
261 | 261 |
262 LATCAlias latcAlias() const { return fLATCAlias; } | 262 LATCAlias latcAlias() const { return fLATCAlias; } |
263 | 263 |
264 GrGLSLCaps* glslCaps() const { return reinterpret_cast<GrGLSLCaps*>(fShaderC
aps.get()); } | 264 GrGLSLCaps* glslCaps() const { return reinterpret_cast<GrGLSLCaps*>(fShaderC
aps.get()); } |
265 | 265 |
266 private: | 266 private: |
267 void init(const GrGLContextInfo& ctxInfo, const GrGLInterface* glInterface); | 267 void init(const GrContextOptions&, const GrGLContextInfo&, const GrGLInterfa
ce*); |
268 | 268 |
269 /** | 269 /** |
270 * Maintains a bit per GrPixelConfig. It is used to avoid redundantly | 270 * Maintains a bit per GrPixelConfig. It is used to avoid redundantly |
271 * performing glCheckFrameBufferStatus for the same config. | 271 * performing glCheckFrameBufferStatus for the same config. |
272 */ | 272 */ |
273 struct VerifiedColorConfigs { | 273 struct VerifiedColorConfigs { |
274 VerifiedColorConfigs() { | 274 VerifiedColorConfigs() { |
275 this->reset(); | 275 this->reset(); |
276 } | 276 } |
277 | 277 |
(...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
421 } | 421 } |
422 | 422 |
423 GrGLSLGeneration generation() const { return fGLSLGeneration; } | 423 GrGLSLGeneration generation() const { return fGLSLGeneration; } |
424 | 424 |
425 /** | 425 /** |
426 * Returns a string containing the caps info. | 426 * Returns a string containing the caps info. |
427 */ | 427 */ |
428 SkString dump() const override; | 428 SkString dump() const override; |
429 | 429 |
430 private: | 430 private: |
431 void init(const GrGLContextInfo&, const GrGLInterface*, const GrGLCaps&); | |
432 | |
433 // Must be called after fGeometryShaderSupport is initialized. | 431 // Must be called after fGeometryShaderSupport is initialized. |
434 void initShaderPrecisionTable(const GrGLContextInfo&, const GrGLInterface*); | 432 void initShaderPrecisionTable(const GrGLContextInfo&, const GrGLInterface*); |
435 | 433 |
436 GrGLSLGeneration fGLSLGeneration; | 434 GrGLSLGeneration fGLSLGeneration; |
437 | 435 |
438 bool fDropsTileOnZeroDivide : 1; | 436 bool fDropsTileOnZeroDivide : 1; |
439 bool fFBFetchSupport : 1; | 437 bool fFBFetchSupport : 1; |
440 bool fFBFetchNeedsCustomOutput : 1; | 438 bool fFBFetchNeedsCustomOutput : 1; |
441 | 439 |
442 const char* fFBFetchColorName; | 440 const char* fFBFetchColorName; |
443 const char* fFBFetchExtensionString; | 441 const char* fFBFetchExtensionString; |
444 | 442 |
445 AdvBlendEqInteraction fAdvBlendEqInteraction; | 443 AdvBlendEqInteraction fAdvBlendEqInteraction; |
446 | 444 |
| 445 friend class GrGLCaps; // For initialization. |
| 446 |
447 typedef GrShaderCaps INHERITED; | 447 typedef GrShaderCaps INHERITED; |
448 }; | 448 }; |
449 | 449 |
450 | 450 |
451 #endif | 451 #endif |
OLD | NEW |