summaryrefslogtreecommitdiff
path: root/core/src/cpp/fps_counter.h
diff options
context:
space:
mode:
authorNikita Kostovsky <nikita@kostovsky.me>2025-12-23 15:28:05 +0100
committerNikita Kostovsky <nikita@kostovsky.me>2025-12-23 15:28:05 +0100
commitc055eeef6d41269d11b2ddf7f9aba6f8867da65d (patch)
treedcd9baaec93c50a8ab49656be86ea248c17421fd /core/src/cpp/fps_counter.h
initial commitHEADmaster
Diffstat (limited to 'core/src/cpp/fps_counter.h')
-rw-r--r--core/src/cpp/fps_counter.h31
1 files changed, 31 insertions, 0 deletions
diff --git a/core/src/cpp/fps_counter.h b/core/src/cpp/fps_counter.h
new file mode 100644
index 0000000..6ac289e
--- /dev/null
+++ b/core/src/cpp/fps_counter.h
@@ -0,0 +1,31 @@
+#pragma once
+
+#include "sprite.h"
+
+struct FPS_Counter {
+ explicit FPS_Counter(SDL_Renderer* renderer);
+
+ void draw();
+
+ /*!
+ * \brief fps_cur - the FPS readings are updated once in a while; fps_cur is
+ * the number of draw() calls since the last reading
+ */
+ int fps_cur{0};
+ /*!
+ * \brief fps_prev - and here is the last fps reading
+ */
+ int fps_prev{0};
+ /*!
+ * \brief timestamp - last time fps_prev was updated
+ */
+ TimeStamp timestamp{Clock::now()};
+ /*!
+ * \brief renderer - draw here
+ */
+ SDL_Renderer* renderer{nullptr};
+ /*!
+ * \brief numbers - "font" file
+ */
+ const Sprite numbers;
+};