SkColorFilter* SkColorMatrixFilterRowMajor255::newComposed(const SkColorFilter* innerFilter) const { SkScalar innerMatrix[20]; if (innerFilter->asColorMatrix(innerMatrix) && !needs_clamping(innerMatrix)) { SkScalar concat[20]; set_concat(concat, fMatrix, innerMatrix); return new SkColorMatrixFilterRowMajor255(concat); } return nullptr; }
sk_sp<SkColorFilter> SkColorMatrixFilterRowMajor255::makeComposed(sk_sp<SkColorFilter> innerFilter) const { SkScalar innerMatrix[20]; if (innerFilter->asColorMatrix(innerMatrix) && !needs_clamping(innerMatrix)) { SkScalar concat[20]; set_concat(concat, fMatrix, innerMatrix); return sk_make_sp<SkColorMatrixFilterRowMajor255>(concat); } return nullptr; }