summary refs log tree commit diff stats
path: root/firmware/src/inputs/input.cpp
diff options
context:
space:
mode:
authorChristian Krinitsin <mail@krinitsin.com>2025-03-26 20:47:12 +0100
committerChristian Krinitsin <mail@krinitsin.com>2025-03-26 20:47:12 +0100
commit32a24182ad8cd2fc3a9125cb8f70de3b9c22f9a4 (patch)
treef2d3a9a1696d50ae28e88e9ba94684bf5ffee5d3 /firmware/src/inputs/input.cpp
parent6b3fb653f8b342d8ecfc093a000e9f6fa479c644 (diff)
downloadtetris-console-32a24182ad8cd2fc3a9125cb8f70de3b9c22f9a4.tar.gz
tetris-console-32a24182ad8cd2fc3a9125cb8f70de3b9c22f9a4.zip
add preliminary public apis
Diffstat (limited to 'firmware/src/inputs/input.cpp')
-rw-r--r--firmware/src/inputs/input.cpp69
1 files changed, 69 insertions, 0 deletions
diff --git a/firmware/src/inputs/input.cpp b/firmware/src/inputs/input.cpp
new file mode 100644
index 0000000..6f4109b
--- /dev/null
+++ b/firmware/src/inputs/input.cpp
@@ -0,0 +1,69 @@
+#include "inputs/input.h"
+
+namespace inputs {
+
+Input::Input(
+    uint8_t down_pin,
+    uint8_t up_pin,
+    uint8_t right_pin,
+    uint8_t left_pin,
+    uint8_t a_pin,
+    uint8_t b_pin,
+    uint8_t pause_pin)
+    : down { down_pin }
+    , up { up_pin }
+    , right { right_pin }
+    , left { left_pin }
+    , a { a_pin }
+    , b { b_pin }
+    , pause { pause_pin }
+{
+}
+
+void Input::init()
+{
+    down.init();
+    up.init();
+    left.init();
+    right.init();
+    a.init();
+    b.init();
+    pause.init();
+}
+
+bool Input::down_pressed()
+{
+    return down.is_pressed();
+}
+
+bool Input::up_pressed()
+{
+    return up.is_pressed();
+}
+
+bool Input::left_pressed()
+{
+    return left.is_pressed();
+}
+
+bool Input::right_pressed()
+{
+    return right.is_pressed();
+}
+
+bool Input::a_pressed()
+{
+    return a.is_pressed();
+}
+
+bool Input::b_pressed()
+{
+    return b.is_pressed();
+}
+
+bool Input::pause_pressed()
+{
+    return pause.is_pressed();
+}
+
+}