Kaleidoscope
AlphaSquare-Effect.h
Go to the documentation of this file.
1 /* -*- mode: c++ -*-
2  * Kaleidoscope-LED-AlphaSquare -- 4x4 pixel LED alphabet
3  * Copyright (C) 2017 Gergely Nagy
4  *
5  * This program is free software: you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation, either version 3 of the License, or
8  * (at your option) any later version.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with this program. If not, see <http://www.gnu.org/licenses/>.
17  */
18 
19 #pragma once
20 
21 #include <Kaleidoscope.h>
23 
24 namespace kaleidoscope {
25 class AlphaSquareEffect : public LEDMode {
26  public:
27  AlphaSquareEffect(void);
28 
29  void begin(void) final;
30  void update(void) final;
31 
32  static uint16_t length;
33  private:
34  static uint32_t end_time_left_, end_time_right_;
35  static Key last_key_left_, last_key_right_;
36  static uint8_t us_;
37 
38  static Key eventHandlerHook(Key key, uint8_t row, uint8_t col, uint8_t key_state);
39 };
40 }
41 
static uint16_t length
Definition: AlphaSquare-Effect.h:32
Definition: hid.cpp:4
void update(void) final
Definition: AlphaSquare-Effect.cpp:39
void begin(void) final
Definition: AlphaSquare-Effect.cpp:32
byte byte col
Definition: TapDance.cpp:229
Definition: key_defs.h:13
Definition: Kaleidoscope-LEDControl.h:11
AlphaSquareEffect(void)
Definition: AlphaSquare-Effect.cpp:28
Definition: AlphaSquare-Effect.h:25
byte row
Definition: TapDance.cpp:229