1 // Copyright 2012 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 CC_ANIMATION_ANIMATION_EVENTS_H_ 6 #define CC_ANIMATION_ANIMATION_EVENTS_H_ 7 8 #include <vector> 9 10 #include "cc/animation/animation.h" 11 #include "cc/base/cc_export.h" 12 #include "ui/gfx/transform.h" 13 14 namespace cc { 15 16 struct CC_EXPORT AnimationEvent { 17 enum Type { Started, Finished, PropertyUpdate }; 18 19 AnimationEvent(Type type, 20 int layer_id, 21 int group_id, 22 Animation::TargetProperty target_property, 23 double monotonic_time); 24 25 Type type; 26 int layer_id; 27 int group_id; 28 Animation::TargetProperty target_property; 29 double monotonic_time; 30 bool is_impl_only; 31 float opacity; 32 gfx::Transform transform; 33 }; 34 35 typedef std::vector<AnimationEvent> AnimationEventsVector; 36 37 } // namespace cc 38 39 #endif // CC_ANIMATION_ANIMATION_EVENTS_H_ 40