00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #include "sdlmm_config.h"
00022
00023 #include <SDL.h>
00024 #include "sdlmm_timer.h"
00025
00026
00027 namespace SDLmm {
00028 bool Timer::Init() {
00029 Uint32 wasinit = SDL_WasInit(SDL_INIT_EVERYTHING);
00030 if(!wasinit) {
00031 return SDL_Init(SDL_INIT_TIMER) == 0;
00032 } else if(!(wasinit & SDL_INIT_TIMER)) {
00033 return SDL_InitSubSystem(SDL_INIT_TIMER) == 0;
00034 }
00035 return true;
00036 }
00037
00038 void Timer::Quit() {
00039 if(SDL_WasInit(SDL_INIT_TIMER)) {
00040 SDL_QuitSubSystem(SDL_INIT_TIMER);
00041 }
00042 }
00043
00044 Timer::Ticks Timer::GetTicks() {
00045 return SDL_GetTicks();
00046 }
00047
00048 void Timer::Mark() {
00049 Ticks NewTick = GetTicks();
00050 m_Elapsed = NewTick - m_Tick;
00051 m_Tick = NewTick;
00052 }
00053
00054
00055 }
00056
00057