diff options
Diffstat (limited to 'users/brandonschlack/brandonschlack.h')
| -rw-r--r-- | users/brandonschlack/brandonschlack.h | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/users/brandonschlack/brandonschlack.h b/users/brandonschlack/brandonschlack.h new file mode 100644 index 000000000..d7dbc0ea4 --- /dev/null +++ b/users/brandonschlack/brandonschlack.h | |||
| @@ -0,0 +1,83 @@ | |||
| 1 | /* Copyright 2020 Brandon Schlack | ||
| 2 | * | ||
| 3 | * This program is free software: you can redistribute it and/or modify | ||
| 4 | * it under the terms of the GNU General Public License as published by | ||
| 5 | * the Free Software Foundation, either version 2 of the License, or | ||
| 6 | * (at your option) any later version. | ||
| 7 | * | ||
| 8 | * This program is distributed in the hope that it will be useful, | ||
| 9 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 10 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 11 | * GNU General Public License for more details. | ||
| 12 | * | ||
| 13 | * You should have received a copy of the GNU General Public License | ||
| 14 | * along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
| 15 | */ | ||
| 16 | #pragma once | ||
| 17 | |||
| 18 | #include "quantum.h" | ||
| 19 | #include "version.h" | ||
| 20 | #include "eeprom.h" | ||
| 21 | #include "process_records.h" | ||
| 22 | #ifdef TAP_DANCE_ENABLE | ||
| 23 | # include "tap_dances.h" | ||
| 24 | #endif // TAP_DANCE_ENABLE | ||
| 25 | #if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) | ||
| 26 | # include "rgb_bs.h" | ||
| 27 | #endif | ||
| 28 | |||
| 29 | /* TODO Layer Names */ | ||
| 30 | enum bs_layers { | ||
| 31 | _BASE = 0, | ||
| 32 | _M1 = 1, | ||
| 33 | _M2 = 2, | ||
| 34 | _M3 = 3, | ||
| 35 | _M4 = 4, | ||
| 36 | _FN1 = 5, | ||
| 37 | _M1_FN1 = 6, | ||
| 38 | _M2_FN1 = 7, | ||
| 39 | _M3_FN1 = 8, | ||
| 40 | _M4_FN1 = 9, | ||
| 41 | _FN2 = 10, | ||
| 42 | _M1_FN2 = 11, | ||
| 43 | _M2_FN2 = 12, | ||
| 44 | _M3_FN2 = 13, | ||
| 45 | _M4_FN2 = 14, | ||
| 46 | _ADJUST = 15 // 15: Change keyboard settings | ||
| 47 | }; | ||
| 48 | |||
| 49 | #define _LOWER _FN1 | ||
| 50 | #define _RAISE _FN2 | ||
| 51 | |||
| 52 | /* TODO User EECONFIG */ | ||
| 53 | typedef union { | ||
| 54 | uint32_t raw; | ||
| 55 | struct { | ||
| 56 | bool rgb_layer_change :1; | ||
| 57 | uint8_t rgb_theme :4; | ||
| 58 | }; | ||
| 59 | } user_config_t; | ||
| 60 | extern user_config_t user_config; | ||
| 61 | |||
| 62 | void matrix_init_keymap(void); | ||
| 63 | void keyboard_post_init_keymap(void); | ||
| 64 | void shutdown_keymap(void); | ||
| 65 | void suspend_power_down_keymap(void); | ||
| 66 | void suspend_wakeup_init_keymap(void); | ||
| 67 | void matrix_scan_keymap(void); | ||
| 68 | layer_state_t default_layer_state_set_keymap(layer_state_t state); | ||
| 69 | layer_state_t layer_state_set_keymap(layer_state_t state); | ||
| 70 | bool led_update_keymap(led_t led_state); | ||
| 71 | |||
| 72 | #ifdef STOPLIGHT_LED | ||
| 73 | typedef struct { | ||
| 74 | bool is_active :1; | ||
| 75 | uint8_t index :7; | ||
| 76 | uint16_t timer :16; | ||
| 77 | } stoplight_led_t; | ||
| 78 | |||
| 79 | void led_stoplight_start(void); | ||
| 80 | void led_stoplight_set(pin_t pin); | ||
| 81 | void led_stoplight_end(void); | ||
| 82 | void matrix_scan_led_stoplight(void); | ||
| 83 | #endif | ||
