summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2024-01-28 11:43:52 +0100
committerAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2024-01-28 11:43:52 +0100
commit9d28424271c58060cce4abfdf3cabaa737c0b59d (patch)
tree34fba9156e7ab2ee515447a2fa0d0869cf9ca0d7
parentd46d86e60409c45af63428de7f7cc0940a0f12dc (diff)
Timer: Refactor.
Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
-rw-r--r--Private/KernelKit/Timer.hpp79
1 files changed, 39 insertions, 40 deletions
diff --git a/Private/KernelKit/Timer.hpp b/Private/KernelKit/Timer.hpp
index 6e694ceb..057b4212 100644
--- a/Private/KernelKit/Timer.hpp
+++ b/Private/KernelKit/Timer.hpp
@@ -9,61 +9,60 @@
#pragma once
-#include <CompilerKit/Compiler.hpp>
#include <ArchKit/Arch.hpp>
+#include <CompilerKit/Compiler.hpp>
#include <NewKit/ErrorID.hpp>
namespace hCore
{
- class HardwareTimer;
- class HardwareTimerInterface;
+class HardwareTimer;
+class HardwareTimerInterface;
- class HardwareTimerInterface
- {
- public:
- HardwareTimerInterface() = default;
- virtual ~HardwareTimerInterface() = default;
-
- public:
- HCORE_COPY_DEFAULT(HardwareTimerInterface);
+class HardwareTimerInterface
+{
+ public:
+ /// @brief Default constructor
+ HardwareTimerInterface() = default;
+ virtual ~HardwareTimerInterface() = default;
- public:
- virtual Int32 Wait() noexcept;
+ public:
+ HCORE_COPY_DEFAULT(HardwareTimerInterface);
- };
+ public:
+ virtual Int32 Wait() noexcept;
+};
- class HardwareTimer final : public HardwareTimerInterface
- {
- public:
- explicit HardwareTimer(Int64 seconds);
- ~HardwareTimer() override;
+class HardwareTimer final : public HardwareTimerInterface
+{
+ public:
+ explicit HardwareTimer(Int64 seconds);
+ ~HardwareTimer() override;
- public:
- HCORE_COPY_DEFAULT(HardwareTimer);
+ public:
+ HCORE_COPY_DEFAULT(HardwareTimer);
- public:
- Int32 Wait() noexcept override;
+ public:
+ Int32 Wait() noexcept override;
- public:
- IntPtr* fDigitalTimer{ nullptr };
- Int64 fWaitFor{ 0 };
+ public:
+ IntPtr *fDigitalTimer{nullptr};
+ Int64 fWaitFor{0};
+};
- };
+inline Int64 Seconds(Int64 time)
+{
+ if (time < 0)
+ return 0;
- inline Int64 Seconds(Int64 time)
- {
- if (time < 0)
- return 0;
+ return 1000 / time;
+}
- return 1000 / time;
- }
-
- inline Int64 Milliseconds(Int64 time)
- {
- if (time < 0)
- return 0;
+inline Int64 Milliseconds(Int64 time)
+{
+ if (time < 0)
+ return 0;
- return 1000 / Seconds(time);
- }
+ return 1000 / Seconds(time);
}
+} // namespace hCore