esp32-sk6812/include/Animation/AnimationController.h

24 lines
450 B
C++

#pragma once
#include <memory>
#include "Animation.h"
class AnimationController
{
public:
AnimationController(Fader *fader);
void changeAnimation(std::unique_ptr<Animation> anim, bool transition = true);
void loop(void);
void restart(void);
private:
Fader *m_fader;
std::unique_ptr<Animation> m_animation;
std::unique_ptr<Animation> m_nextAnimation;
uint64_t m_frame;
};