summaryrefslogtreecommitdiffstats
path: root/tmk_core/common/debounce.h
diff options
context:
space:
mode:
Diffstat (limited to 'tmk_core/common/debounce.h')
-rw-r--r--tmk_core/common/debounce.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/tmk_core/common/debounce.h b/tmk_core/common/debounce.h
new file mode 100644
index 000000000..fe3effab3
--- /dev/null
+++ b/tmk_core/common/debounce.h
@@ -0,0 +1,21 @@
+#ifndef DEBOUNCE_H
+#define DEBOUNCE_H
+#include <stdbool.h>
+#include <stdint.h>
+#include "matrix.h"
+#ifdef __cplusplus
+extern "C" {
+#endif
+ /* called to initialize any data stores your implementation has*/
+ void matrix_debounce_init(void);
+ /* call this every keyboard_task to debounce the matrix*/
+ void matrix_debounce(void);
+ /* matrix state on row */
+ matrix_row_t matrix_debounce_get_row(uint8_t row);
+ /* whether a switch is on */
+ bool matrix_debounce_is_on(uint8_t row, uint8_t col);
+
+#ifdef __cplusplus
+}
+#endif
+#endif