Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ladislas/review/hugo/feature/Update all led animations #678

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
38 changes: 19 additions & 19 deletions libs/LedKit/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -12,32 +12,32 @@ target_include_directories(LedKit

target_sources(LedKit
PRIVATE
# source/animations/AfraidBlue.cpp
# source/animations/AfraidRed.cpp
# source/animations/AfraidRedBlue.cpp
# source/animations/Amazed.cpp
# source/animations/Angry.cpp
# source/animations/AngryShort.cpp
source/animations/AfraidBlue.cpp
source/animations/AfraidRed.cpp
source/animations/AfraidRedBlue.cpp
source/animations/Amazed.cpp
source/animations/Angry.cpp
source/animations/AngryShort.cpp
source/animations/BlinkGreen.cpp
# source/animations/Bubbles.cpp
# source/animations/Disgusted.cpp
source/animations/Bubbles.cpp
source/animations/Disgusted.cpp
source/animations/Fire.cpp
# source/animations/Fly.cpp
# source/animations/Happy.cpp
source/animations/Fly.cpp
source/animations/Happy.cpp
source/LedKit.cpp
source/animations/Rainbow.cpp
# source/animations/Sad.cpp
# source/animations/SadCry.cpp
# source/animations/Sick.cpp
# source/animations/Singing.cpp
source/animations/Sad.cpp
source/animations/SadCry.cpp
source/animations/Sick.cpp
source/animations/Singing.cpp
source/animations/Sleeping.cpp
# source/animations/Sneeze.cpp
source/animations/Sneeze.cpp
source/animations/SpinBlink.cpp
source/animations/Sprinkles.cpp
# source/animations/Underwater.cpp
# source/animations/WakeUp.cpp
# source/animations/Wink.cpp
# source/animations/Yawn.cpp
source/animations/Underwater.cpp
source/animations/WakeUp.cpp
source/animations/Wink.cpp
source/animations/Yawn.cpp
)

target_link_libraries(LedKit
Expand Down
50 changes: 44 additions & 6 deletions libs/LedKit/include/LedKit.h
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,31 @@

#include "ColorKit.h"
#include "LEDAnimation.h"
#include "animations/AfraidBlue.h"
#include "animations/AfraidRed.h"
#include "animations/AfraidRedBlue.h"
#include "animations/Amazed.h"
#include "animations/Angry.h"
#include "animations/AngryShort.h"
#include "animations/BlinkGreen.h"
#include "animations/Bubbles.h"
#include "animations/Disgusted.h"
#include "animations/Fire.h"
#include "animations/Fly.h"
#include "animations/Happy.h"
#include "animations/Rainbow.h"
#include "animations/Sad.h"
#include "animations/SadCry.h"
#include "animations/Sick.h"
#include "animations/Singing.h"
#include "animations/Sleeping.h"
#include "animations/Sneeze.h"
#include "animations/SpinBlink.h"
#include "animations/Sprinkles.h"
#include "animations/Underwater.h"
#include "animations/WakeUp.h"
#include "animations/Wink.h"
#include "animations/Yawn.h"
#include "interface/drivers/EventFlags.h"

namespace leka {
Expand All @@ -38,12 +57,31 @@ class LedKit
void runAnimation();

struct animation {
static inline auto sleeping = led::animation::Sleeping {};
static inline auto blink_green = led::animation::BlinkGreen {};
static inline auto spin_blink = led::animation::SpinBlink {};
static inline auto fire = led::animation::Fire {};
static inline auto sprinkles = led::animation::Sprinkles {};
static inline auto rainbow = led::animation::Rainbow {};
static inline auto afraid_blue = led::animation::AfraidBlue {};
static inline auto afraid_red = led::animation::AfraidRed {};
static inline auto afraid_red_blue = led::animation::AfraidRedBlue {};
static inline auto amazed = led::animation::Amazed {};
static inline auto angry = led::animation::Angry {};
static inline auto angry_short = led::animation::AngryShort {};
static inline auto blink_green = led::animation::BlinkGreen {};
static inline auto bubbles = led::animation::Bubbles {};
static inline auto disgusted = led::animation::Disgusted {};
static inline auto fire = led::animation::Fire {};
static inline auto fly = led::animation::Fly {};
static inline auto happy = led::animation::Happy {};
static inline auto rainbow = led::animation::Rainbow {};
static inline auto sad = led::animation::Sad {};
static inline auto sad_cry = led::animation::SadCry {};
static inline auto sick = led::animation::Sick {};
static inline auto singing = led::animation::Singing {};
static inline auto sleeping = led::animation::Sleeping {};
static inline auto sneeze = led::animation::Sneeze {};
static inline auto spin_blink = led::animation::SpinBlink {};
static inline auto sprinkles = led::animation::Sprinkles {};
static inline auto underwater = led::animation::Underwater {};
static inline auto wake_up = led::animation::WakeUp {};
static inline auto wink = led::animation::Wink {};
static inline auto yawn = led::animation::Yawn {};
};

struct flags {
Expand Down
14 changes: 9 additions & 5 deletions libs/LedKit/include/animations/AfraidBlue.h
Original file line number Diff line number Diff line change
Expand Up @@ -31,17 +31,21 @@ namespace leka::led::animation {
class AfraidBlue : public interface::LEDAnimation
{
public:
explicit AfraidBlue(interface::LED &ears, interface::LED &belt) : _ears(ears), _belt(belt) {}
explicit AfraidBlue() = default;

void start() final;
void run() final;
void stop() final;

void setLeds(interface::LED &ears, interface::LED &belt) final;
auto isRunning() -> bool final;

private:
interface::LED &_ears;
interface::LED &_belt;
uint8_t _step = 0;
uint8_t _stage = 0;
interface::LED *_ears = nullptr;
interface::LED *_belt = nullptr;
bool _running = false;
uint8_t _step = 0;
uint8_t _stage = 0;

void stage0();
void stage1();
Expand Down
14 changes: 9 additions & 5 deletions libs/LedKit/include/animations/AfraidRed.h
Original file line number Diff line number Diff line change
Expand Up @@ -31,17 +31,21 @@ namespace leka::led::animation {
class AfraidRed : public interface::LEDAnimation
{
public:
explicit AfraidRed(interface::LED &ears, interface::LED &belt) : _ears(ears), _belt(belt) {}
explicit AfraidRed() = default;

void start() final;
void run() final;
void stop() final;

void setLeds(interface::LED &ears, interface::LED &belt) final;
auto isRunning() -> bool final;

private:
interface::LED &_ears;
interface::LED &_belt;
uint8_t _step = 0;
uint8_t _stage = 0;
interface::LED *_ears = nullptr;
interface::LED *_belt = nullptr;
bool _running = false;
uint8_t _step = 0;
uint8_t _stage = 0;

void stage0();
void stage1();
Expand Down
14 changes: 9 additions & 5 deletions libs/LedKit/include/animations/AfraidRedBlue.h
Original file line number Diff line number Diff line change
Expand Up @@ -30,17 +30,21 @@ namespace leka::led::animation {
class AfraidRedBlue : public interface::LEDAnimation
{
public:
explicit AfraidRedBlue(interface::LED &ears, interface::LED &belt) : _ears(ears), _belt(belt) {}
explicit AfraidRedBlue() = default;

void start() final;
void run() final;
void stop() final;

void setLeds(interface::LED &ears, interface::LED &belt) final;
auto isRunning() -> bool final;

private:
interface::LED &_ears;
interface::LED &_belt;
uint8_t _step = 0;
uint8_t _stage = 0;
interface::LED *_ears = nullptr;
interface::LED *_belt = nullptr;
bool _running = false;
uint8_t _step = 0;
uint8_t _stage = 0;

void stage0();
void stage1();
Expand Down
14 changes: 9 additions & 5 deletions libs/LedKit/include/animations/Amazed.h
Original file line number Diff line number Diff line change
Expand Up @@ -34,17 +34,21 @@ namespace leka::led::animation {
class Amazed : public interface::LEDAnimation
{
public:
explicit Amazed(interface::LED &ears, interface::LED &belt) : _ears(ears), _belt(belt) {}
explicit Amazed() = default;

void start() final;
void run() final;
void stop() final;

void setLeds(interface::LED &ears, interface::LED &belt) final;
auto isRunning() -> bool final;

private:
interface::LED &_ears;
interface::LED &_belt;
uint8_t _step = 0;
uint8_t _stage = 0;
interface::LED *_ears = nullptr;
interface::LED *_belt = nullptr;
bool _running = false;
uint8_t _step = 0;
uint8_t _stage = 0;

void stage0();
void stage1();
Expand Down
14 changes: 9 additions & 5 deletions libs/LedKit/include/animations/Angry.h
Original file line number Diff line number Diff line change
Expand Up @@ -37,17 +37,21 @@ namespace leka::led::animation {
class Angry : public interface::LEDAnimation
{
public:
explicit Angry(interface::LED &ears, interface::LED &belt) : _ears(ears), _belt(belt) {}
explicit Angry() = default;

void start() final;
void run() final;
void stop() final;

void setLeds(interface::LED &ears, interface::LED &belt) final;
auto isRunning() -> bool final;

private:
interface::LED &_ears;
interface::LED &_belt;
uint8_t _step = 0;
uint8_t _stage = 0;
interface::LED *_ears = nullptr;
interface::LED *_belt = nullptr;
bool _running = false;
uint8_t _step = 0;
uint8_t _stage = 0;

void stage0();
void stage1();
Expand Down
14 changes: 9 additions & 5 deletions libs/LedKit/include/animations/AngryShort.h
Original file line number Diff line number Diff line change
Expand Up @@ -38,17 +38,21 @@ namespace leka::led::animation {
class AngryShort : public interface::LEDAnimation
{
public:
explicit AngryShort(interface::LED &ears, interface::LED &belt) : _ears(ears), _belt(belt) {}
explicit AngryShort() = default;

void start() final;
void run() final;
void stop() final;

void setLeds(interface::LED &ears, interface::LED &belt) final;
auto isRunning() -> bool final;

private:
interface::LED &_ears;
interface::LED &_belt;
uint8_t _step = 0;
uint8_t _stage = 0;
interface::LED *_ears = nullptr;
interface::LED *_belt = nullptr;
bool _running = false;
uint8_t _step = 0;
uint8_t _stage = 0;

void stage0();
void stage1();
Expand Down
10 changes: 7 additions & 3 deletions libs/LedKit/include/animations/Bubbles.h
Original file line number Diff line number Diff line change
Expand Up @@ -34,15 +34,19 @@ namespace leka::led::animation {
class Bubbles : public interface::LEDAnimation
{
public:
explicit Bubbles(interface::LED &ears, interface::LED &belt) : _ears(ears), _belt(belt) {}
explicit Bubbles() = default;

void start() final;
void run() final;
void stop() final;

void setLeds(interface::LED &ears, interface::LED &belt) final;
auto isRunning() -> bool final;

private:
interface::LED &_ears;
interface::LED &_belt;
interface::LED *_ears = nullptr;
interface::LED *_belt = nullptr;
bool _running = false;
uint8_t _step = 0;
uint8_t _stage = 0;
uint8_t _bubble_number = 0;
Expand Down
14 changes: 9 additions & 5 deletions libs/LedKit/include/animations/Disgusted.h
Original file line number Diff line number Diff line change
Expand Up @@ -13,17 +13,21 @@ namespace leka::led::animation {
class Disgusted : public interface::LEDAnimation
{
public:
explicit Disgusted(interface::LED &ears, interface::LED &belt) : _ears(ears), _belt(belt) {}
explicit Disgusted() = default;

void start() final;
void run() final;
void stop() final;

void setLeds(interface::LED &ears, interface::LED &belt) final;
auto isRunning() -> bool final;

private:
interface::LED &_ears;
interface::LED &_belt;
uint8_t _step = 0;
uint8_t _stage = 0;
interface::LED *_ears = nullptr;
interface::LED *_belt = nullptr;
bool _running = false;
uint8_t _step = 0;
uint8_t _stage = 0;

void stage0();
void stage1();
Expand Down
14 changes: 9 additions & 5 deletions libs/LedKit/include/animations/Fly.h
Original file line number Diff line number Diff line change
Expand Up @@ -33,17 +33,21 @@ namespace leka::led::animation {
class Fly : public interface::LEDAnimation
{
public:
explicit Fly(interface::LED &ears, interface::LED &belt) : _ears(ears), _belt(belt) {}
explicit Fly() = default;

void start() final;
void run() final;
void stop() final;

void setLeds(interface::LED &ears, interface::LED &belt) final;
auto isRunning() -> bool final;

private:
interface::LED &_ears;
interface::LED &_belt;
uint8_t _step = 0;
uint8_t _stage = 0;
interface::LED *_ears = nullptr;
interface::LED *_belt = nullptr;
bool _running = false;
uint8_t _step = 0;
uint8_t _stage = 0;

void stage0();
void stage1();
Expand Down
14 changes: 9 additions & 5 deletions libs/LedKit/include/animations/Happy.h
Original file line number Diff line number Diff line change
Expand Up @@ -38,17 +38,21 @@ namespace leka::led::animation {
class Happy : public interface::LEDAnimation
{
public:
explicit Happy(interface::LED &ears, interface::LED &belt) : _ears(ears), _belt(belt) {}
explicit Happy() = default;

void start() final;
void run() final;
void stop() final;

void setLeds(interface::LED &ears, interface::LED &belt) final;
auto isRunning() -> bool final;

private:
interface::LED &_ears;
interface::LED &_belt;
uint8_t _step = 0;
uint8_t _stage = 0;
interface::LED *_ears = nullptr;
interface::LED *_belt = nullptr;
bool _running = false;
uint8_t _step = 0;
uint8_t _stage = 0;

void stage0();
void stage1();
Expand Down
Loading