aboutsummaryrefslogtreecommitdiff
path: root/quantum/send_string/send_string.h
diff options
context:
space:
mode:
authorNick Brassel <[email protected]>2025-01-21 08:24:39 +1100
committerGitHub <[email protected]>2025-01-21 08:24:39 +1100
commita6a0dc803908a426c331b698acab663a900c2b10 (patch)
treeeb023e6338fabc4032d0eb13def39a41792d8c37 /quantum/send_string/send_string.h
parent47575d4af16700e2dea8353c446dd4874e38d333 (diff)
downloadqmk_firmware-a6a0dc803908a426c331b698acab663a900c2b10.tar.gz
qmk_firmware-a6a0dc803908a426c331b698acab663a900c2b10.zip
Consolidate send_string implementations. (#24817)
Diffstat (limited to 'quantum/send_string/send_string.h')
-rw-r--r--quantum/send_string/send_string.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/quantum/send_string/send_string.h b/quantum/send_string/send_string.h
index f727ec507d..4f91252075 100644
--- a/quantum/send_string/send_string.h
+++ b/quantum/send_string/send_string.h
@@ -161,4 +161,12 @@ void send_string_with_delay_P(const char *string, uint8_t interval);
*/
#define SEND_STRING_DELAY(string, interval) send_string_with_delay_P(PSTR(string), interval)
+/**
+ * \brief Actual implementation function that iterates and sends the string returned by the getter function.
+ *
+ * The getter assumes that the next byte is available to be read, and returns it. `arg` is passed in and can be whatever
+ * makes most sense for the getter -- each invocation of `getter` must advance its position in the source.
+ */
+void send_string_with_delay_impl(char (*getter)(void *), void *arg, uint8_t interval);
+
/** \} */