summaryrefslogtreecommitdiffstats
path: root/src/com/android/gallery3d/filtershow/filters/ImageFilter.java
blob: 3d96a33ed49fa2f9dc0c7b657a3e22c86b887c9b (plain)
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
36
37
38
39

package com.android.gallery3d.filtershow.filters;

import android.graphics.Bitmap;

public class ImageFilter {

    protected int mParameter = 0;

    public String name() {
        return "Original";
    }

    // TODO: maybe use clone instead?
    public ImageFilter copy() {
        ImageFilter filter = new ImageFilter();
        filter.setParameter(mParameter);
        return filter;
    }

    public void apply(Bitmap bitmap) {
        // do nothing here, subclasses will implement filtering here
    }

    public void setParameter(int value) {
        mParameter = value;
    }

    public boolean same(ImageFilter filter) {
        if (!filter.name().equalsIgnoreCase(name())) {
            return false;
        }
        return true;
    }

    native protected void nativeApplyGradientFilter(Bitmap bitmap, int w, int h,
            int[] redGradient, int[] greenGradient, int[] blueGradient);

}