| Index: include/gpu/GrTypesPriv.h
|
| diff --git a/include/gpu/GrTypesPriv.h b/include/gpu/GrTypesPriv.h
|
| index 39386f0140a7253fa0289172a5b09cfd4113b23a..0115a6bb2a62a6bb6997eba7b0688bc011d8b794 100644
|
| --- a/include/gpu/GrTypesPriv.h
|
| +++ b/include/gpu/GrTypesPriv.h
|
| @@ -71,6 +71,48 @@ enum GrSLPrecision {
|
|
|
| static const int kGrSLPrecisionCount = kLast_GrSLPrecision + 1;
|
|
|
| +static inline GrSLPrecision GrPixelConfigPrecision(GrPixelConfig config) {
|
| + static const GrSLPrecision precisions[] = {
|
| + kLow_GrSLPrecision, // kUnknown_GrPixelConfig
|
| + kLow_GrSLPrecision, // kAlpha_8_GrPixelConfig
|
| + kLow_GrSLPrecision, // kIndex_8_GrPixelConfig
|
| + kLow_GrSLPrecision, // kRGB_565_GrPixelConfig
|
| + kLow_GrSLPrecision, // kRGBA_4444_GrPixelConfig
|
| + kLow_GrSLPrecision, // kRGBA_8888_GrPixelConfig
|
| + kLow_GrSLPrecision, // kBGRA_8888_GrPixelConfig
|
| + kLow_GrSLPrecision, // kSRGBA_8888_GrPixelConfig
|
| + kLow_GrSLPrecision, // kSBGRA_8888_GrPixelConfig
|
| + kLow_GrSLPrecision, // kETC1_GrPixelConfig
|
| + kLow_GrSLPrecision, // kLATC_GrPixelConfig
|
| + kLow_GrSLPrecision, // kR11_EAC_GrPixelConfig
|
| + kLow_GrSLPrecision, // kASTC_12x12_GrPixelConfig
|
| + kHigh_GrSLPrecision, // kRGBA_float_GrPixelConfig
|
| + kMedium_GrSLPrecision, // kAlpha_half_GrPixelConfig
|
| + kMedium_GrSLPrecision, // kRGBA_half_GrPixelConfig
|
| + };
|
| +
|
| + SkASSERT(config >= 0 && config <= kLast_GrPixelConfig);
|
| + return precisions[config];
|
| +
|
| + GR_STATIC_ASSERT(0 == kUnknown_GrPixelConfig);
|
| + GR_STATIC_ASSERT(1 == kAlpha_8_GrPixelConfig);
|
| + GR_STATIC_ASSERT(2 == kIndex_8_GrPixelConfig);
|
| + GR_STATIC_ASSERT(3 == kRGB_565_GrPixelConfig);
|
| + GR_STATIC_ASSERT(4 == kRGBA_4444_GrPixelConfig);
|
| + GR_STATIC_ASSERT(5 == kRGBA_8888_GrPixelConfig);
|
| + GR_STATIC_ASSERT(6 == kBGRA_8888_GrPixelConfig);
|
| + GR_STATIC_ASSERT(7 == kSRGBA_8888_GrPixelConfig);
|
| + GR_STATIC_ASSERT(8 == kSBGRA_8888_GrPixelConfig);
|
| + GR_STATIC_ASSERT(9 == kETC1_GrPixelConfig);
|
| + GR_STATIC_ASSERT(10 == kLATC_GrPixelConfig);
|
| + GR_STATIC_ASSERT(11 == kR11_EAC_GrPixelConfig);
|
| + GR_STATIC_ASSERT(12 == kASTC_12x12_GrPixelConfig);
|
| + GR_STATIC_ASSERT(13 == kRGBA_float_GrPixelConfig);
|
| + GR_STATIC_ASSERT(14 == kAlpha_half_GrPixelConfig);
|
| + GR_STATIC_ASSERT(15 == kRGBA_half_GrPixelConfig);
|
| + GR_STATIC_ASSERT(SK_ARRAY_COUNT(precisions) == kGrPixelConfigCnt);
|
| +}
|
| +
|
| /**
|
| * Gets the vector size of the SLType. Returns -1 for void, matrices, and samplers.
|
| */
|
|
|