Overte C++ Documentation
FadeTiming.h
1 //
2 // Created by HifiExperiments on 6/15/25
3 // Copyright 2025 Overte e.V.
4 //
5 // Distributed under the Apache License, Version 2.0.
6 // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
7 //
8 
9 #ifndef hifi_FadeTiming_h
10 #define hifi_FadeTiming_h
11 
12 #include "QString"
13 
14 /*@jsdoc
15  * <p>Different time curves to control fading.</p>
16  * <table>
17  * <thead>
18  * <tr><th>Value</th><th>Description</th></tr>
19  * </thead>
20  * <tbody>
21  * <tr><td><code>"linear"</code></td><td>A linear curve.</td></tr>
22  * <tr><td><code>"easeIn"</code></td><td>An ease in curve.</td></tr>
23  * <tr><td><code>"easeOut"</code></td><td>An ease out curve.</td></tr>
24  * <tr><td><code>"easeInOut"</code></td><td>An ease in/out curve.</td></tr>
25  * </tbody>
26  * </table>
27  * @typedef {string} FadeTiming
28  */
29 
30 enum class FadeTiming : uint8_t {
31  LINEAR = 0,
32  EASE_IN,
33  EASE_OUT,
34  EASE_IN_OUT,
35 
36  TIMING_COUNT,
37 };
38 
39 class FadeTimingHelpers {
40 public:
41  static QString getNameForFadeTiming(FadeTiming timing);
42 };
43 
44 #endif // hifi_FadeTiming_h