aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/SkMipMap.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/SkMipMap.h')
-rw-r--r--src/core/SkMipMap.h15
1 files changed, 9 insertions, 6 deletions
diff --git a/src/core/SkMipMap.h b/src/core/SkMipMap.h
index 0f31a9f703..f3425cbeaa 100644
--- a/src/core/SkMipMap.h
+++ b/src/core/SkMipMap.h
@@ -28,12 +28,15 @@ typedef SkDiscardableMemory* (*SkDiscardableFactoryProc)(size_t bytes);
*/
class SkMipMap : public SkCachedData {
public:
- static SkMipMap* Build(const SkPixmap& src, SkSourceGammaTreatment, SkDiscardableFactoryProc);
- static SkMipMap* Build(const SkBitmap& src, SkSourceGammaTreatment, SkDiscardableFactoryProc);
-
- static SkSourceGammaTreatment DeduceTreatment(const SkShader::ContextRec& rec) {
- return (SkShader::ContextRec::kPMColor_DstType == rec.fPreferredDstType) ?
- SkSourceGammaTreatment::kIgnore : SkSourceGammaTreatment::kRespect;
+ static SkMipMap* Build(const SkPixmap& src, SkDestinationSurfaceColorMode,
+ SkDiscardableFactoryProc);
+ static SkMipMap* Build(const SkBitmap& src, SkDestinationSurfaceColorMode,
+ SkDiscardableFactoryProc);
+
+ static SkDestinationSurfaceColorMode DeduceColorMode(const SkShader::ContextRec& rec) {
+ return (SkShader::ContextRec::kPMColor_DstType == rec.fPreferredDstType)
+ ? SkDestinationSurfaceColorMode::kLegacy
+ : SkDestinationSurfaceColorMode::kGammaAndColorSpaceAware;
}
// Determines how many levels a SkMipMap will have without creating that mipmap.