Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(375)

Side by Side Diff: chrome/browser/android/vr_shell/easing.h

Issue 2335643002: Add VR Shell animation classes and unit test. (Closed)
Patch Set: Add VR Shell animation classes and unit test. Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 // Copyright 2016 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 CHROME_BROWSER_ANDROID_VR_SHELL_EASING_H_
6 #define CHROME_BROWSER_ANDROID_VR_SHELL_EASING_H_
7
8 #include "ui/gfx/geometry/cubic_bezier.h"
9
10 namespace vr_shell {
11
12 enum EasingType {
David Trainor- moved to gerrit 2016/09/14 21:43:29 Any reason to keep these outside the easing namesp
cjgrant 2016/09/16 17:47:08 Done. Also, I removed the EasingType, as Easing i
13 LINEAR = 0,
14 CUBICBEZIER,
15 EASEIN,
16 EASEOUT
17 };
18
19 class Easing {
David Trainor- moved to gerrit 2016/09/14 21:43:30 Should this just be called Interpolator? At least
cjgrant 2016/09/16 17:47:08 It could be, but as per http://www.w3schools.com/c
David Trainor- moved to gerrit 2016/09/16 21:25:44 Not particularly :). Just a suggestion.
20 public:
21 virtual double CalculateValue(double state) = 0;
David Trainor- moved to gerrit 2016/09/14 21:43:30 Should we add a comment specifying the expected in
cjgrant 2016/09/16 17:47:08 Done.
22 virtual ~Easing() {}
23 protected:
David Trainor- moved to gerrit 2016/09/14 21:43:30 new line before protected and private Same for al
cjgrant 2016/09/16 17:47:08 Done.
cjgrant 2016/09/16 17:47:08 Done.
24 Easing() {}
25 private:
26 DISALLOW_COPY_AND_ASSIGN(Easing);
27 };
28
29 namespace easing {
30
31 class CubicBezier : public Easing {
32 public:
33 CubicBezier(double p1x, double p1y, double p2x, double p2y);
34 double CalculateValue(double state) override;
35 private:
David Trainor- moved to gerrit 2016/09/14 21:43:30 I forget if you still need DISALLOW_COPY_AND_ASSIG
cjgrant 2016/09/16 17:47:08 Done.
36 gfx::CubicBezier bezier_;
37 };
38
39 class EaseIn : public Easing {
40 public:
41 explicit EaseIn(double power);
42 double CalculateValue(double state) override;
43 private:
44 double power_;
45 };
46
47 class EaseOut : public Easing {
48 public:
49 explicit EaseOut(double power);
50 double CalculateValue(double state) override;
51 private:
52 double power_;
53 };
54
55 class Linear : public Easing {
56 public:
57 double CalculateValue(double state) override;
58 };
59
60 } // namespace easing
61
62 } // namespace vr_shell
63
64 #endif // CHROME_BROWSER_ANDROID_VR_SHELL_EASING_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698