Time, Mr. Freeman?

This commit is contained in:
2023-11-17 12:27:18 -06:00
parent 490da9d0c1
commit 5901b9e07c
10 changed files with 105 additions and 3 deletions

View File

@ -0,0 +1,9 @@
# Copyright (c) 2022 Dominic Masters
#
# This software is released under the MIT License.
# https://opensource.org/licenses/MIT
target_sources(${DAWN_TARGET_NAME}
PRIVATE
ITimeManager.cpp
)

View File

@ -0,0 +1,17 @@
// Copyright (c) 2023 Dominic Masters
//
// This software is released under the MIT License.
// https://opensource.org/licenses/MIT
#include "ITimeManager.hpp"
using namespace Dawn;
void ITimeManager::tick(float_t delta) {
this->delta = delta;
this->time += delta;
}
ITimeManager::~ITimeManager() {
}

View File

@ -0,0 +1,34 @@
// Copyright (c) 2023 Dominic Masters
//
// This software is released under the MIT License.
// https://opensource.org/licenses/MIT
#pragma once
#include "dawnlibs.hpp"
namespace Dawn {
class ITimeManager {
public:
float_t delta = 0.016f;
float_t time = 0.016f;
/**
* Ticks / updates the time management system.
*
* @param delta Time delta in seconds.
*/
void tick(float_t delta);
/**
* Returns the real world time epoch.
*
* @return Epoch time in milliseconds.
*/
virtual int64_t getRealTime() = 0;
/**
* Cleans up the time manager.
*/
virtual ~ITimeManager();
};
}