#include <iostream>
#include <time.h>
using namespace std;
class CTimer
{
time_t _last;
CTimer() { _last = time( NULL ); }
CTimer(const CTimer &);
CTimer& operator=(const CTimer&);
~CTimer()
{}
public:
static CTimer& getInstance(){
static CTimer instance;
return instance;
}
float getDelta(){
time_t now = time( NULL );
float delta = (float)(now - _last);
return delta;
}
//should be called at the beginning of rendering function
void update(){
_last = time( NULL );
}
};
int main()
{
cout<<"ok";
int vel = 4;
int posX = (vel * CTimer::getInstance().getDelta());
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dGltZS5oPiAgCnVzaW5nIG5hbWVzcGFjZSBzdGQ7ICAgICAgCgpjbGFzcyBDVGltZXIKewogICAgdGltZV90IF9sYXN0OwogICAgQ1RpbWVyKCkgeyBfbGFzdCA9IHRpbWUoIE5VTEwgKTsgfQogICAgQ1RpbWVyKGNvbnN0IENUaW1lciAmKTsKICAgIENUaW1lciYgb3BlcmF0b3I9KGNvbnN0IENUaW1lciYpOwogICAgfkNUaW1lcigpCgl7fQpwdWJsaWM6CiAgICBzdGF0aWMgQ1RpbWVyJiBnZXRJbnN0YW5jZSgpeyAgICAgICAgCiAgICAgICAgc3RhdGljIENUaW1lciBpbnN0YW5jZTsKICAgICAgICByZXR1cm4gaW5zdGFuY2U7CiAgICB9CgogICAgZmxvYXQgZ2V0RGVsdGEoKXsKICAgICAgICB0aW1lX3Qgbm93ID0gdGltZSggTlVMTCApOwogICAgICAgIGZsb2F0IGRlbHRhID0gKGZsb2F0KShub3cgLSBfbGFzdCk7ICAgICAKICAgICAgICByZXR1cm4gZGVsdGE7CiAgICB9CiAgICAvL3Nob3VsZCBiZSBjYWxsZWQgYXQgdGhlIGJlZ2lubmluZyBvZiByZW5kZXJpbmcgZnVuY3Rpb24KICAgIHZvaWQgdXBkYXRlKCl7CiAgICAgICAgX2xhc3QgPSB0aW1lKCBOVUxMICk7CiAgICB9Cn07CgppbnQgbWFpbigpCnsKY291dDw8Im9rIjsKaW50IHZlbCA9IDQ7CmludCBwb3NYID0gKHZlbCAqIENUaW1lcjo6Z2V0SW5zdGFuY2UoKS5nZXREZWx0YSgpKTsKcmV0dXJuIDA7Cn0=