pitrix/include/effect_sines.h
Fabian Schlenz 382631d7d7 Effect#loop now gets the time since the last run of the loop in ms. This enables
the effects to show animations that stay fluid independent of the current frame rate.
2019-10-01 06:29:32 +02:00

34 lines
614 B
C++

#pragma once
#include "prototypes.h"
#include "functions.h"
#include "Effect.h"
class SinesEffectSinus {
private:
uint8_t _value;
uint8_t _frequency;
uint8_t _amplitude;
uint8_t _x;
uint8_t _step;
Window* _window;
CRGB _color;
public:
SinesEffectSinus(Window* w);
void loop(uint16_t ms);
};
class SinesEffect : public Effect {
private:
SinesEffectSinus* _sinus[EFFECT_SINES_COUNT];
uint8_t _step = 0;
public:
SinesEffect();
~SinesEffect();
boolean supports_window = true;
boolean can_be_shown_with_clock();
void loop(uint16_t ms);
String get_name() override { return "sines"; }
};