1 |
/* |
/* |
2 |
* Copyright (c) 2017 Christian Schoenebeck |
* Copyright (c) 2017 - 2019 Christian Schoenebeck |
3 |
* |
* |
4 |
* http://www.linuxsampler.org |
* http://www.linuxsampler.org |
5 |
* |
* |
31 |
public: |
public: |
32 |
Fade() : EaseInEaseOut() { |
Fade() : EaseInEaseOut() { |
33 |
curveType = DEFAULT_FADE_CURVE; |
curveType = DEFAULT_FADE_CURVE; |
34 |
|
Final = false; |
35 |
} |
} |
36 |
|
|
37 |
/** |
/** |
91 |
return value; |
return value; |
92 |
} |
} |
93 |
|
|
94 |
|
inline void setFinal(bool b) { |
95 |
|
Final = b; |
96 |
|
} |
97 |
|
|
98 |
|
template<typename T> |
99 |
|
inline void applyTo(T& dst) { |
100 |
|
if (Final) |
101 |
|
dst = currentValue(); |
102 |
|
else |
103 |
|
dst *= currentValue(); |
104 |
|
} |
105 |
|
|
106 |
private: |
private: |
107 |
fade_curve_t curveType; |
fade_curve_t curveType; |
108 |
|
bool Final; |
109 |
}; |
}; |
110 |
|
|
111 |
} // namespace LinuxSampler |
} // namespace LinuxSampler |