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 "cc/output/filter_operations.h" 13#include "ui/gfx/transform.h" 14 15namespace cc { 16 17struct CC_EXPORT AnimationEvent { 18 enum Type { Started, Finished, Aborted, PropertyUpdate }; 19 20 AnimationEvent(Type type, 21 int layer_id, 22 int group_id, 23 Animation::TargetProperty target_property, 24 base::TimeTicks monotonic_time); 25 26 Type type; 27 int layer_id; 28 int group_id; 29 Animation::TargetProperty target_property; 30 base::TimeTicks monotonic_time; 31 bool is_impl_only; 32 float opacity; 33 gfx::Transform transform; 34 FilterOperations filters; 35}; 36 37typedef std::vector<AnimationEvent> AnimationEventsVector; 38 39} // namespace cc 40 41#endif // CC_ANIMATION_ANIMATION_EVENTS_H_ 42