117d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen/*
217d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen * Copyright (C) 2014 The Android Open Source Project
317d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen *
417d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen * Licensed under the Apache License, Version 2.0 (the "License");
517d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen * you may not use this file except in compliance with the License.
617d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen * You may obtain a copy of the License at
717d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen *
817d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen *      http://www.apache.org/licenses/LICENSE-2.0
917d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen *
1017d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen * Unless required by applicable law or agreed to in writing, software
1117d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen * distributed under the License is distributed on an "AS IS" BASIS,
1217d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1317d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen * See the License for the specific language governing permissions and
1417d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen * limitations under the License.
1517d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen */
1617d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen
1717d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chenpackage com.android.internal.view.animation;
1817d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen
1917d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen/**
2017d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen * Static utility class for constructing native interpolators to keep the
2117d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen * JNI simpler
2217d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen */
2317d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chenpublic final class NativeInterpolatorFactoryHelper {
2417d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen    private NativeInterpolatorFactoryHelper() {}
2517d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen
2617d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen    public static native long createAccelerateDecelerateInterpolator();
2717d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen    public static native long createAccelerateInterpolator(float factor);
2817d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen    public static native long createAnticipateInterpolator(float tension);
2917d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen    public static native long createAnticipateOvershootInterpolator(float tension);
3017d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen    public static native long createBounceInterpolator();
3117d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen    public static native long createCycleInterpolator(float cycles);
3217d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen    public static native long createDecelerateInterpolator(float factor);
3317d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen    public static native long createLinearInterpolator();
3417d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen    public static native long createOvershootInterpolator(float tension);
3517d47989ee53c9e54f250d29a343ba949edf0ff9Yao Chen    public static native long createLutInterpolator(float[] values);
36}
37