16a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang/*
26a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang * Copyright (C) 2010 The Android Open Source Project
36a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang *
46a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang * Licensed under the Apache License, Version 2.0 (the "License");
56a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang * you may not use this file except in compliance with the License.
66a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang * You may obtain a copy of the License at
76a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang *
86a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang *      http://www.apache.org/licenses/LICENSE-2.0
96a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang *
106a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang * Unless required by applicable law or agreed to in writing, software
116a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang * distributed under the License is distributed on an "AS IS" BASIS,
126a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
136a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang * See the License for the specific language governing permissions and
146a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang * limitations under the License.
156a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang */
166a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang
176a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huangpackage com.android.gallery3d.photoeditor.filters;
186a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang
196a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huangimport android.media.effect.Effect;
206a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huangimport android.media.effect.EffectFactory;
216a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang
226a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huangimport com.android.gallery3d.photoeditor.Photo;
236a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang
246a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang/**
256a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang * Auto-fix filter applied to the image.
266a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang */
27738e82e163f90e1fe7aeef8bd153dc7763631f30Yuli Huangpublic class AutoFixFilter extends AbstractScaleFilter {
286a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang
29738e82e163f90e1fe7aeef8bd153dc7763631f30Yuli Huang    public static final Creator<AutoFixFilter> CREATOR = creatorOf(AutoFixFilter.class);
306a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang
316a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang    @Override
32c7e39d12860adf99a12c6b47e9aaa9d7ae098307Yuli Huang    public void process(Photo src, Photo dst) {
33c7e39d12860adf99a12c6b47e9aaa9d7ae098307Yuli Huang        Effect effect = getEffect(EffectFactory.EFFECT_AUTOFIX);
346a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang        effect.setParameter("scale", scale);
356a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang        effect.apply(src.texture(), src.width(), src.height(), dst.texture());
366a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang    }
376a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang}
38