# HG changeset patch # User Matti Hamalainen # Date 1350419479 -10800 # Node ID 9875c65029af7547b4817f503ecc5f93f7a5ec41 # Parent 38e10b5f4e0920b2a9b09f62d462fe7e7f77ad93 Work towards re-entrancy. diff -r 38e10b5f4e09 -r 9875c65029af dmengine.c --- a/dmengine.c Tue Oct 16 23:16:42 2012 +0300 +++ b/dmengine.c Tue Oct 16 23:31:19 2012 +0300 @@ -235,3 +235,35 @@ JSS_UNLOCK(eng->plr); } #endif + + +int engineGetTick(DMEngineData *engine) +{ + return (engine->frameTime - engine->startTime) + engine->adjustTime; +} + + +float engineGetTimeDT(DMEngineData *engine) +{ + return (float) engineGetTick(engine) / 1000.0f; +} + + +int engineGetTimeDTi(DMEngineData *engine) +{ + return (float) engineGetTick(engine) / 1000; +} + + +int engineGetTime(DMEngineData *engine, int t) +{ + return engineGetTick(engine) - (1000 * t); +} + + +int engineGetDT(DMEngineData *engine, int t) +{ + return engineGetTime(engine, t) / 1000; +} + + diff -r 38e10b5f4e09 -r 9875c65029af dmengine.h --- a/dmengine.h Tue Oct 16 23:16:42 2012 +0300 +++ b/dmengine.h Tue Oct 16 23:31:19 2012 +0300 @@ -20,10 +20,7 @@ #endif -struct DMEngineData; - - -typedef struct +typedef struct DMEngineData { DMResourceLib *resources; @@ -76,6 +73,8 @@ return DMERR_INIT_FAIL; \ } while (0) +#define engineFindResource(eng, name) dmres_find((eng)->resources, name) + int engineClassifier(DMResource *res); void * engineGetResource(DMEngineData *eng, const char *name); diff -r 38e10b5f4e09 -r 9875c65029af dmsimple.c --- a/dmsimple.c Tue Oct 16 23:16:42 2012 +0300 +++ b/dmsimple.c Tue Oct 16 23:31:19 2012 +0300 @@ -50,36 +50,6 @@ } -int engineGetTick() -{ - return (engine.frameTime - engine.startTime) + engine.adjustTime; -} - - -float engineGetTimeDT() -{ - return (float) engineGetTick() / 1000.0f; -} - - -int engineGetTimeDTi() -{ - return (float) engineGetTick() / 1000; -} - - -int engineGetTime(int t) -{ - return engineGetTick() - (1000 * t); -} - - -int engineGetDT(int t) -{ - return engineGetTime(t) / 1000; -} - - static void engineAudioCallback(void *userdata, Uint8 *stream, int len) { (void) userdata; @@ -400,7 +370,7 @@ if (engine.pauseFlag != engine.paused) { engine.paused = engine.pauseFlag; - engine.pauseTime = engineGetTick(); + engine.pauseTime = engineGetTick(&engine); } if (engine.paused)