aboutsummaryrefslogtreecommitdiff
path: root/quantum/rgb_matrix.h
diff options
context:
space:
mode:
authorXScorpion2 <rcalt2vt@gmail.com>2019-07-16 02:40:43 -0500
committerskullydazed <skullydazed@users.noreply.github.com>2019-07-16 00:40:43 -0700
commite2dfb787da2a2ba88e0e074b396a2b988e10eccf (patch)
tree28a4cb615cdec55697f054be9c8f7bb59db67e50 /quantum/rgb_matrix.h
parent72df7b4c191399c7835527b730647e079b6683ff (diff)
downloadqmk_firmware-e2dfb787da2a2ba88e0e074b396a2b988e10eccf.tar.gz
qmk_firmware-e2dfb787da2a2ba88e0e074b396a2b988e10eccf.zip
Adding rgb matrix speed into eeprom storage. (#5965)
Zeroing out spd in eeconfig_init_quantum Switched to block read & update Update tmk_core/common/eeconfig.h Co-Authored-By: Drashna Jaelre <drashna@live.com> Fixing init compile error Update eeconfig.c Dead / Missing API cleanup alignment
Diffstat (limited to 'quantum/rgb_matrix.h')
-rw-r--r--quantum/rgb_matrix.h39
1 files changed, 9 insertions, 30 deletions
diff --git a/quantum/rgb_matrix.h b/quantum/rgb_matrix.h
index 96a8b7662..749926822 100644
--- a/quantum/rgb_matrix.h
+++ b/quantum/rgb_matrix.h
@@ -56,12 +56,6 @@
56 56
57#define RGB_MATRIX_TEST_LED_FLAGS() if (!HAS_ANY_FLAGS(g_led_config.flags[i], params->flags)) continue 57#define RGB_MATRIX_TEST_LED_FLAGS() if (!HAS_ANY_FLAGS(g_led_config.flags[i], params->flags)) continue
58 58
59typedef struct
60{
61 HSV color;
62 uint8_t index;
63} rgb_indicator;
64
65enum rgb_matrix_effects { 59enum rgb_matrix_effects {
66 RGB_MATRIX_NONE = 0, 60 RGB_MATRIX_NONE = 0,
67 61
@@ -87,11 +81,18 @@ enum rgb_matrix_effects {
87 RGB_MATRIX_EFFECT_MAX 81 RGB_MATRIX_EFFECT_MAX
88}; 82};
89 83
84void eeconfig_update_rgb_matrix_default(void);
85
86uint8_t rgb_matrix_map_row_column_to_led_kb(uint8_t row, uint8_t column, uint8_t *led_i);
90uint8_t rgb_matrix_map_row_column_to_led( uint8_t row, uint8_t column, uint8_t *led_i); 87uint8_t rgb_matrix_map_row_column_to_led( uint8_t row, uint8_t column, uint8_t *led_i);
91 88
92void rgb_matrix_set_color( int index, uint8_t red, uint8_t green, uint8_t blue ); 89void rgb_matrix_set_color( int index, uint8_t red, uint8_t green, uint8_t blue );
93void rgb_matrix_set_color_all( uint8_t red, uint8_t green, uint8_t blue ); 90void rgb_matrix_set_color_all( uint8_t red, uint8_t green, uint8_t blue );
94 91
92bool process_rgb_matrix(uint16_t keycode, keyrecord_t *record);
93
94void rgb_matrix_task(void);
95
95// This runs after another backlight effect and replaces 96// This runs after another backlight effect and replaces
96// colors already set 97// colors already set
97void rgb_matrix_indicators(void); 98void rgb_matrix_indicators(void);
@@ -99,37 +100,14 @@ void rgb_matrix_indicators_kb(void);
99void rgb_matrix_indicators_user(void); 100void rgb_matrix_indicators_user(void);
100 101
101void rgb_matrix_init(void); 102void rgb_matrix_init(void);
102void rgb_matrix_setup_drivers(void);
103 103
104void rgb_matrix_set_suspend_state(bool state); 104void rgb_matrix_set_suspend_state(bool state);
105void rgb_matrix_set_indicator_state(uint8_t state);
106
107
108void rgb_matrix_task(void);
109
110// This should not be called from an interrupt
111// (eg. from a timer interrupt).
112// Call this while idle (in between matrix scans).
113// If the buffer is dirty, it will update the driver with the buffer.
114void rgb_matrix_update_pwm_buffers(void);
115
116bool process_rgb_matrix(uint16_t keycode, keyrecord_t *record);
117
118void rgb_matrix_increase(void);
119void rgb_matrix_decrease(void);
120
121// void *backlight_get_key_color_eeprom_address(uint8_t led);
122// void backlight_get_key_color( uint8_t led, HSV *hsv );
123// void backlight_set_key_color( uint8_t row, uint8_t column, HSV hsv );
124
125void rgb_matrix_toggle(void); 105void rgb_matrix_toggle(void);
126void rgb_matrix_enable(void); 106void rgb_matrix_enable(void);
127void rgb_matrix_enable_noeeprom(void); 107void rgb_matrix_enable_noeeprom(void);
128void rgb_matrix_disable(void); 108void rgb_matrix_disable(void);
129void rgb_matrix_disable_noeeprom(void); 109void rgb_matrix_disable_noeeprom(void);
130void rgb_matrix_step(void); 110void rgb_matrix_step(void);
131void rgb_matrix_sethsv(uint16_t hue, uint8_t sat, uint8_t val);
132void rgb_matrix_sethsv_noeeprom(uint16_t hue, uint8_t sat, uint8_t val);
133void rgb_matrix_step_reverse(void); 111void rgb_matrix_step_reverse(void);
134void rgb_matrix_increase_hue(void); 112void rgb_matrix_increase_hue(void);
135void rgb_matrix_decrease_hue(void); 113void rgb_matrix_decrease_hue(void);
@@ -144,6 +122,8 @@ void rgb_matrix_set_flags(led_flags_t flags);
144void rgb_matrix_mode(uint8_t mode); 122void rgb_matrix_mode(uint8_t mode);
145void rgb_matrix_mode_noeeprom(uint8_t mode); 123void rgb_matrix_mode_noeeprom(uint8_t mode);
146uint8_t rgb_matrix_get_mode(void); 124uint8_t rgb_matrix_get_mode(void);
125void rgb_matrix_sethsv(uint16_t hue, uint8_t sat, uint8_t val);
126void rgb_matrix_sethsv_noeeprom(uint16_t hue, uint8_t sat, uint8_t val);
147 127
148#ifndef RGBLIGHT_ENABLE 128#ifndef RGBLIGHT_ENABLE
149#define rgblight_toggle() rgb_matrix_toggle() 129#define rgblight_toggle() rgb_matrix_toggle()
@@ -166,7 +146,6 @@ uint8_t rgb_matrix_get_mode(void);
166#define rgblight_mode(mode) rgb_matrix_mode(mode) 146#define rgblight_mode(mode) rgb_matrix_mode(mode)
167#define rgblight_mode_noeeprom(mode) rgb_matrix_mode_noeeprom(mode) 147#define rgblight_mode_noeeprom(mode) rgb_matrix_mode_noeeprom(mode)
168#define rgblight_get_mode() rgb_matrix_get_mode() 148#define rgblight_get_mode() rgb_matrix_get_mode()
169
170#endif 149#endif
171 150
172typedef struct { 151typedef struct {