summaryrefslogtreecommitdiffstats
path: root/cc/animation_events.h
blob: 5cfd36a4ff6e5f810ff91a62f4e1d75ebb8ba705 (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
// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef CCAnimationEvents_h
#define CCAnimationEvents_h

#include <vector>

#include "cc/active_animation.h"

namespace cc {

struct AnimationEvent {
    enum Type { Started, Finished };

    AnimationEvent(Type type, int layerId, int groupId, ActiveAnimation::TargetProperty targetProperty, double monotonicTime)
        : type(type)
        , layerId(layerId)
        , groupId(groupId)
        , targetProperty(targetProperty)
        , monotonicTime(monotonicTime)
    {
    }

    Type type;
    int layerId;
    int groupId;
    ActiveAnimation::TargetProperty targetProperty;
    double monotonicTime;
};

typedef std::vector<AnimationEvent> AnimationEventsVector;

}  // namespace cc

#endif // CCAnimationEvents_h