1 // Copyright 2015 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.
5 #ifndef CC_BLINK_WEB_COMPOSITOR_ANIMATION_TIMELINE_IMPL_H_
6 #define CC_BLINK_WEB_COMPOSITOR_ANIMATION_TIMELINE_IMPL_H_
8 #include "base/memory/ref_counted.h"
9 #include "base/memory/scoped_ptr.h"
10 #include "cc/blink/cc_blink_export.h"
11 #include "third_party/WebKit/public/platform/WebCompositorAnimationTimeline.h"
14 class WebCompositorAnimationPlayerClient
;
18 class AnimationTimeline
;
23 class WebCompositorAnimationTimelineImpl
24 : public blink::WebCompositorAnimationTimeline
{
26 CC_BLINK_EXPORT
explicit WebCompositorAnimationTimelineImpl();
27 virtual ~WebCompositorAnimationTimelineImpl();
29 CC_BLINK_EXPORT
cc::AnimationTimeline
* animation_timeline() const;
31 // blink::WebCompositorAnimationTimeline implementation
32 virtual void playerAttached(
33 const blink::WebCompositorAnimationPlayerClient
& client
);
34 virtual void playerDestroyed(
35 const blink::WebCompositorAnimationPlayerClient
& client
);
38 scoped_refptr
<cc::AnimationTimeline
> animation_timeline_
;
40 DISALLOW_COPY_AND_ASSIGN(WebCompositorAnimationTimelineImpl
);
43 } // namespace cc_blink
45 #endif // CC_BLINK_WEB_COMPOSITOR_ANIMATION_TIMELINE_IMPL_H_