| OLD | NEW |
| 1 | 1 |
| 2 /* | 2 /* |
| 3 * Copyright 2006 The Android Open Source Project | 3 * Copyright 2006 The Android Open Source Project |
| 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 | 8 |
| 9 | 9 |
| 10 #include "SkXfermode.h" | 10 #include "SkXfermode.h" |
| (...skipping 1220 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1231 int mode = rand->nextRangeU(SkXfermode::kLastCoeffMode + 1, SkXfermode::kLas
tSeparableMode); | 1231 int mode = rand->nextRangeU(SkXfermode::kLastCoeffMode + 1, SkXfermode::kLas
tSeparableMode); |
| 1232 | 1232 |
| 1233 return SkNEW_ARGS(XferEffect, (static_cast<SkXfermode::Mode>(mode), NULL)); | 1233 return SkNEW_ARGS(XferEffect, (static_cast<SkXfermode::Mode>(mode), NULL)); |
| 1234 } | 1234 } |
| 1235 | 1235 |
| 1236 #endif | 1236 #endif |
| 1237 | 1237 |
| 1238 /////////////////////////////////////////////////////////////////////////////// | 1238 /////////////////////////////////////////////////////////////////////////////// |
| 1239 /////////////////////////////////////////////////////////////////////////////// | 1239 /////////////////////////////////////////////////////////////////////////////// |
| 1240 | 1240 |
| 1241 #ifdef SK_SUPPORT_LEGACY_DEEPFLATTENING |
| 1241 SkProcCoeffXfermode::SkProcCoeffXfermode(SkReadBuffer& buffer) : INHERITED(buffe
r) { | 1242 SkProcCoeffXfermode::SkProcCoeffXfermode(SkReadBuffer& buffer) : INHERITED(buffe
r) { |
| 1242 uint32_t mode32 = buffer.read32() % SK_ARRAY_COUNT(gProcCoeffs); | 1243 uint32_t mode32 = buffer.read32() % SK_ARRAY_COUNT(gProcCoeffs); |
| 1243 if (mode32 >= SK_ARRAY_COUNT(gProcCoeffs)) { | 1244 if (mode32 >= SK_ARRAY_COUNT(gProcCoeffs)) { |
| 1244 // out of range, just set to something harmless | 1245 // out of range, just set to something harmless |
| 1245 mode32 = SkXfermode::kSrcOut_Mode; | 1246 mode32 = SkXfermode::kSrcOut_Mode; |
| 1246 } | 1247 } |
| 1247 fMode = (SkXfermode::Mode)mode32; | 1248 fMode = (SkXfermode::Mode)mode32; |
| 1248 | 1249 |
| 1249 const ProcCoeff& rec = gProcCoeffs[fMode]; | 1250 const ProcCoeff& rec = gProcCoeffs[fMode]; |
| 1250 fProc = rec.fProc; | 1251 fProc = rec.fProc; |
| 1251 // these may be valid, or may be CANNOT_USE_COEFF | 1252 // these may be valid, or may be CANNOT_USE_COEFF |
| 1252 fSrcCoeff = rec.fSC; | 1253 fSrcCoeff = rec.fSC; |
| 1253 fDstCoeff = rec.fDC; | 1254 fDstCoeff = rec.fDC; |
| 1254 } | 1255 } |
| 1256 #endif |
| 1255 | 1257 |
| 1256 bool SkProcCoeffXfermode::asMode(Mode* mode) const { | 1258 bool SkProcCoeffXfermode::asMode(Mode* mode) const { |
| 1257 if (mode) { | 1259 if (mode) { |
| 1258 *mode = fMode; | 1260 *mode = fMode; |
| 1259 } | 1261 } |
| 1260 return true; | 1262 return true; |
| 1261 } | 1263 } |
| 1262 | 1264 |
| 1263 bool SkProcCoeffXfermode::asCoeff(Coeff* sc, Coeff* dc) const { | 1265 bool SkProcCoeffXfermode::asCoeff(Coeff* sc, Coeff* dc) const { |
| 1264 if (CANNOT_USE_COEFF == fSrcCoeff) { | 1266 if (CANNOT_USE_COEFF == fSrcCoeff) { |
| (...skipping 689 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1954 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkSrcXfermode) | 1956 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkSrcXfermode) |
| 1955 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkDstInXfermode) | 1957 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkDstInXfermode) |
| 1956 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkDstOutXfermode) | 1958 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkDstOutXfermode) |
| 1957 #if !SK_ARM_NEON_IS_NONE | 1959 #if !SK_ARM_NEON_IS_NONE |
| 1958 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkNEONProcCoeffXfermode) | 1960 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkNEONProcCoeffXfermode) |
| 1959 #endif | 1961 #endif |
| 1960 #if defined(SK_CPU_X86) && !defined(SK_BUILD_FOR_IOS) | 1962 #if defined(SK_CPU_X86) && !defined(SK_BUILD_FOR_IOS) |
| 1961 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkSSE2ProcCoeffXfermode) | 1963 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkSSE2ProcCoeffXfermode) |
| 1962 #endif | 1964 #endif |
| 1963 SK_DEFINE_FLATTENABLE_REGISTRAR_GROUP_END | 1965 SK_DEFINE_FLATTENABLE_REGISTRAR_GROUP_END |
| OLD | NEW |