1376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen/*
2376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen * Copyright (C) 2015 The Android Open Source Project
3376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen *
4376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen * Licensed under the Apache License, Version 2.0 (the "License");
5376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen * you may not use this file except in compliance with the License.
6376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen * You may obtain a copy of the License at
7376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen *
8376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen *   http://www.apache.org/licenses/LICENSE-2.0
9376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen *
10376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen * Unless required by applicable law or agreed to in writing, software
11376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen * distributed under the License is distributed on an "AS IS" BASIS,
12376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen * See the License for the specific language governing permissions and
14376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen * limitations under the License.
15376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen */
16376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen
17376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassenpackage android.support.v4.view.animation;
18376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen
19376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassenimport android.graphics.Path;
20376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassenimport android.view.animation.Interpolator;
21376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassenimport android.view.animation.PathInterpolator;
22376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen
23376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen/**
24376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen * API 21+ implementation for path interpolator compatibility.
25376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen */
26376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassenclass PathInterpolatorCompatApi21  {
27376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen
28376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen    private PathInterpolatorCompatApi21() {
29376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen        // prevent instantiation
30376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen    }
31376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen
32376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen    public static Interpolator create(Path path) {
33376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen        return new PathInterpolator(path);
34376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen    }
35376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen
36376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen    public static Interpolator create(float controlX, float controlY) {
37376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen        return new PathInterpolator(controlX, controlY);
38376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen    }
39376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen
40376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen    public static Interpolator create(float controlX1, float controlY1,
41376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen            float controlX2, float controlY2) {
42376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen        return new PathInterpolator(controlX1, controlY1, controlX2, controlY2);
43376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen    }
44376f90c159c74a267a5b5e13a5d71273980a72dfJustin Klaassen}
45