27 lines
547 B
C++
27 lines
547 B
C++
#include "timer.h"
|
|
|
|
Timer::Timer()
|
|
{
|
|
init_ticks = 0;
|
|
current_ticks = 0;
|
|
}
|
|
|
|
|
|
void Timer::start()
|
|
{
|
|
init_ticks = SDL_GetTicks();
|
|
current_ticks = init_ticks;
|
|
}
|
|
|
|
|
|
int Timer::get_ticks()
|
|
{
|
|
// The odd case that we overflow...
|
|
// If this happens, we basically reset the timer. This isn't the most
|
|
// elegant solution, but it's the best one I see. Nothing should rely
|
|
// on this timer for super-precision as a result
|
|
if (current_ticks < init_ticks) init_ticks = current_ticks;
|
|
|
|
return current_ticks - init_ticks;
|
|
}
|