Files
rez_demo/sources/GL_STUFF/UTILS/ClockIterator.cpp
beno bbede61723 updated makefile for supporting different target architectures
use "ARCH=arch_name make"

restructured project folder, implementations and headers together under sources/
2026-03-16 00:10:52 +01:00

29 lines
577 B
C++
Executable File

#include "ClockIterator.hpp"
#include <stdexcept>
ClockIterator::ClockIterator(unsigned int loopMillis) {
if(loopMillis == 0)
throw std::invalid_argument("ClockIterator: loop period must be greater than zero");
reset();
max = loopMillis;
}
void ClockIterator::reset() {
counter = 0;
}
unsigned int ClockIterator::step(unsigned int millis) {
counter += millis;
unsigned int res = counter / max;
counter %= max;
return res;
}
float ClockIterator::getPercentage() {
return (100.0f * counter) / max;
}
unsigned int ClockIterator::getPosition() {
return counter;
}