From 98baf20860831957285a6d2acca1680bae15124f Mon Sep 17 00:00:00 2001 From: uvok Date: Sat, 2 Aug 2025 18:56:34 +0200 Subject: Prepare having a display indicator --- include/badge/ble.h | 15 +++++++++++++-- include/badge/display.h | 2 ++ include/badge/indicator.h | 11 +++++++++++ 3 files changed, 26 insertions(+), 2 deletions(-) create mode 100644 include/badge/indicator.h (limited to 'include/badge') diff --git a/include/badge/ble.h b/include/badge/ble.h index 231b103..27b4749 100644 --- a/include/badge/ble.h +++ b/include/badge/ble.h @@ -1,13 +1,24 @@ #pragma once +#include "indicator.h" #include namespace de::uvok::badge { + enum class BleActionType + { + None, + Template, + Indicator + }; + typedef struct { - bool has_data; - uint8_t new_template; + BleActionType action_type; + union { + uint8_t new_template; + DisplayIndicator new_indicator; + }; } ble_poll_result_t; void ble_init(void); diff --git a/include/badge/display.h b/include/badge/display.h index 567eef5..d78c899 100644 --- a/include/badge/display.h +++ b/include/badge/display.h @@ -1,5 +1,6 @@ #pragma once +#include "indicator.h" #include namespace de::uvok::badge @@ -13,4 +14,5 @@ namespace de::uvok::badge uint8_t display_prev(void); uint8_t display_refresh(void); void display_direct(uint8_t num); + void display_indicator(DisplayIndicator); } // namespace de::uvok::badge diff --git a/include/badge/indicator.h b/include/badge/indicator.h new file mode 100644 index 0000000..033a186 --- /dev/null +++ b/include/badge/indicator.h @@ -0,0 +1,11 @@ +#pragma once + +namespace de::uvok::badge +{ + enum class DisplayIndicator + { + None, + Advertising, + Connected + }; +} // namespace de::uvok::badge -- cgit v1.2.3