liyujie
2025-08-28 786ff4f4ca2374bdd9177f2e24b503d43e7a3b93
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
/*
 * Copyright 2016 Google Inc.
 *
 * Use of this source code is governed by a BSD-style license that can be
 * found in the LICENSE file.
 */
 
#ifndef SkArithmeticImageFilter_DEFINED
#define SkArithmeticImageFilter_DEFINED
 
#include "SkImageFilter.h"
 
struct ArithmeticFPInputs {
    ArithmeticFPInputs() {
        memset(this, 0, sizeof(*this));
    }
 
    float k[4];
    bool enforcePMColor;
};
 
class SK_API SkArithmeticImageFilter {
public:
    static sk_sp<SkImageFilter> Make(float k1, float k2, float k3, float k4, bool enforcePMColor,
                                     sk_sp<SkImageFilter> background,
                                     sk_sp<SkImageFilter> foreground,
                                     const SkImageFilter::CropRect* cropRect);
 
    static void RegisterFlattenables();
 
private:
    SkArithmeticImageFilter();  // can't instantiate
};
 
#endif