diff --git a/functions/change_slowly.h b/functions/change_slowly.h index 04095252a..0a2d50820 100644 --- a/functions/change_slowly.h +++ b/functions/change_slowly.h @@ -9,7 +9,7 @@ class BladeBase; template -class ChangeSlowly { +class ChangeSlowlySVF { public: void run(BladeBase* blade) { f_.run(blade); @@ -31,6 +31,7 @@ class ChangeSlowly { } } int getInteger(int led) { return value_; } + int calculate(BladeBase* blade) { return value_; } private: PONUA SVFWrapper f_; PONUA SVFWrapper speed_; @@ -38,4 +39,11 @@ class ChangeSlowly { int value_; }; +// optimized specialization +template +class SingleValueAdapter> : public ChangeSlowlySVF {}; + +template +using ChangeSlowly = SingleValueAdapter>; + #endif