1// Copyright 2014 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef WebCompositorAnimationCurve_h
6#define WebCompositorAnimationCurve_h
7
8#define WEB_SCROLL_OFFSET_ANIMATION_CURVE_IS_DEFINED 1
9
10namespace blink {
11
12class WebCompositorAnimationCurve {
13public:
14    virtual ~WebCompositorAnimationCurve() { }
15
16    enum TimingFunctionType {
17        TimingFunctionTypeEase,
18        TimingFunctionTypeEaseIn,
19        TimingFunctionTypeEaseOut,
20        TimingFunctionTypeEaseInOut,
21        TimingFunctionTypeLinear
22    };
23
24    enum AnimationCurveType {
25        AnimationCurveTypeFilter,
26        AnimationCurveTypeFloat,
27        AnimationCurveTypeScrollOffset,
28        AnimationCurveTypeTransform,
29    };
30
31    virtual AnimationCurveType type() const = 0;
32};
33
34} // namespace blink
35
36#endif // WebCompositorAnimationCurve_h
37