pitrix/include/prototypes.h
Fabian Schlenz a6af2829ee Better and more SimpleEffects.
* Calculations are done using doubles for much easier code.
* Binary flags instead of boolean variables for configuration.
* New effects sineline, barbershop and zigzag.
2020-11-06 22:33:37 +00:00

36 lines
627 B
C++

#pragma once
#include <Arduino.h>
#include "my_fastled.h"
extern uint8_t baseHue;
extern char hostname[30];
extern uint16_t frame;
extern unsigned long timer;
typedef struct {
uint8_t width;
uint8_t height;
const uint8_t *data;
bool (*isCharAllowed)(const char);
uint16_t (*getCharPosition)(const char);
} Font;
typedef struct Vector {
double x1;
double x2;
} Vector;
typedef struct Matrix {
double a11;
double a12;
double a21;
double a22;
} Matrix;
typedef struct {
uint16_t x;
uint16_t y;
} Coords;
typedef std::function<double(double, uint16_t, uint8_t, uint8_t)> simple_effect_t;