aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorFinlay Davidson <finlay.davidson@coderclass.nl>2023-03-16 21:49:44 +0100
committerRiku Isokoski <riksu9000@gmail.com>2023-03-27 22:12:32 +0000
commit47931f41d579371c9c78ae7061317bf28848db2f (patch)
treea7f2668f902c4c71cac56035b5f6fbf67919cb7b /src
parent2ba8b179679aa92be46ac7688542b68f2695e04d (diff)
staticstack: Move to src/utility
Diffstat (limited to 'src')
-rw-r--r--src/StaticStack.h43
-rw-r--r--src/displayapp/DisplayApp.h6
-rw-r--r--src/utility/StaticStack.h47
3 files changed, 50 insertions, 46 deletions
diff --git a/src/StaticStack.h b/src/StaticStack.h
deleted file mode 100644
index 598febce..00000000
--- a/src/StaticStack.h
+++ /dev/null
@@ -1,43 +0,0 @@
-#include <array>
-#include <cstddef>
-
-template <typename T, size_t N>
-class StaticStack {
-public:
- T Pop();
- void Push(T element);
- void Reset();
- T Top();
-
-private:
- std::array<T, N> elementArray;
- // Number of elements in stack, points to the next empty slot
- size_t stackPointer = 0;
-};
-
-// Returns random data when popping from empty array.
-template <typename T, size_t N>
-T StaticStack<T, N>::Pop() {
- if (stackPointer > 0) {
- stackPointer--;
- }
- return elementArray[stackPointer];
-}
-
-template <typename T, size_t N>
-void StaticStack<T, N>::Push(T element) {
- if (stackPointer < elementArray.size()) {
- elementArray[stackPointer] = element;
- stackPointer++;
- }
-}
-
-template <typename T, size_t N>
-void StaticStack<T, N>::Reset() {
- stackPointer = 0;
-}
-
-template <typename T, size_t N>
-T StaticStack<T, N>::Top() {
- return elementArray[stackPointer - 1];
-}
diff --git a/src/displayapp/DisplayApp.h b/src/displayapp/DisplayApp.h
index 58df99c0..28d29cd4 100644
--- a/src/displayapp/DisplayApp.h
+++ b/src/displayapp/DisplayApp.h
@@ -19,7 +19,7 @@
#include "displayapp/Messages.h"
#include "BootErrors.h"
-#include "StaticStack.h"
+#include "utility/StaticStack.h"
namespace Pinetime {
@@ -126,8 +126,8 @@ namespace Pinetime {
void ApplyBrightness();
static constexpr size_t returnAppStackSize = 10;
- StaticStack<Apps, returnAppStackSize> returnAppStack;
- StaticStack<FullRefreshDirections, returnAppStackSize> appStackDirections;
+ Utility::StaticStack<Apps, returnAppStackSize> returnAppStack;
+ Utility::StaticStack<FullRefreshDirections, returnAppStackSize> appStackDirections;
bool isDimmed = false;
};
diff --git a/src/utility/StaticStack.h b/src/utility/StaticStack.h
new file mode 100644
index 00000000..40df9354
--- /dev/null
+++ b/src/utility/StaticStack.h
@@ -0,0 +1,47 @@
+#include <array>
+#include <cstddef>
+
+namespace Pinetime {
+ namespace Utility {
+ template <typename T, size_t N>
+ class StaticStack {
+ public:
+ T Pop();
+ void Push(T element);
+ void Reset();
+ T Top();
+
+ private:
+ std::array<T, N> elementArray;
+ // Number of elements in stack, points to the next empty slot
+ size_t stackPointer = 0;
+ };
+
+ // Returns random data when popping from empty array.
+ template <typename T, size_t N>
+ T StaticStack<T, N>::Pop() {
+ if (stackPointer > 0) {
+ stackPointer--;
+ }
+ return elementArray[stackPointer];
+ }
+
+ template <typename T, size_t N>
+ void StaticStack<T, N>::Push(T element) {
+ if (stackPointer < elementArray.size()) {
+ elementArray[stackPointer] = element;
+ stackPointer++;
+ }
+ }
+
+ template <typename T, size_t N>
+ void StaticStack<T, N>::Reset() {
+ stackPointer = 0;
+ }
+
+ template <typename T, size_t N>
+ T StaticStack<T, N>::Top() {
+ return elementArray[stackPointer - 1];
+ }
+ }
+}