Index: third_party/WebKit/Source/platform/CompositorFactory.h |
diff --git a/third_party/WebKit/Source/platform/CompositorFactory.h b/third_party/WebKit/Source/platform/CompositorFactory.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..17a15fb31e776ab89b4a6c42d60fd49d95114c60 |
--- /dev/null |
+++ b/third_party/WebKit/Source/platform/CompositorFactory.h |
@@ -0,0 +1,60 @@ |
+// Copyright 2016 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 CompositorFactory_h |
+#define CompositorFactory_h |
+ |
+#include "base/memory/scoped_ptr.h" |
+#include "platform/PlatformExport.h" |
+#include "platform/animation/WebCompositorAnimation.h" |
+#include "platform/animation/WebCompositorAnimationCurve.h" |
+#include "platform/animation/WebScrollOffsetAnimationCurve.h" |
+#include "public/platform/WebFloatPoint.h" |
+ |
+namespace blink { |
+ |
+class WebCompositorAnimationPlayer; |
+class WebCompositorAnimationTimeline; |
+class WebFilterAnimationCurve; |
+class WebFilterOperations; |
+class WebFloatAnimationCurve; |
+class WebTransformAnimationCurve; |
+class WebTransformOperations; |
+ |
+class PLATFORM_EXPORT CompositorFactory { |
+public: |
+ static void initializeDefault(); |
+ static void initializeForTesting(CompositorFactory*); |
+ static void shutdown(); |
+ static CompositorFactory& current(); |
+ |
+ // Animation ---------------------------------------------------- |
+ |
+ virtual WebFilterAnimationCurve* createFilterAnimationCurve() { return nullptr; } |
+ |
+ virtual WebFloatAnimationCurve* createFloatAnimationCurve() { return nullptr; } |
+ |
+ virtual WebScrollOffsetAnimationCurve* createScrollOffsetAnimationCurve( |
+ WebFloatPoint targetValue, |
+ WebCompositorAnimationCurve::TimingFunctionType, |
+ WebScrollOffsetAnimationCurve::ScrollDurationBehavior) { return nullptr; } |
+ |
+ virtual WebTransformAnimationCurve* createTransformAnimationCurve() { return nullptr; } |
+ |
+ virtual WebTransformOperations* createTransformOperations() { return nullptr; } |
+ |
+ virtual WebFilterOperations* createFilterOperations() { return nullptr; } |
+ |
+ virtual WebCompositorAnimation* createAnimation(const WebCompositorAnimationCurve&, WebCompositorAnimation::TargetProperty, int groupId = 0, int animationId = 0) { return nullptr; } |
+ |
+ virtual WebCompositorAnimationPlayer* createAnimationPlayer() { return nullptr; } |
+ |
+ virtual WebCompositorAnimationTimeline* createAnimationTimeline() { return nullptr; } |
+ |
+protected: |
+ virtual ~CompositorFactory() {} |
+}; |
+} |
+ |
+#endif // CompositorFactory_h |