ppsspp/Common/TimeUtil.h

36 lines
925 B
C
Raw Normal View History

2012-03-24 22:39:19 +00:00
#pragma once
// http://linux.die.net/man/3/clock_gettime
// This time implementation caches the time for max performance (call time_now() as much as you like).
// You need to call time_update() once per frame (or whenever you need the correct time right now).
void time_update();
// Seconds.
double time_now_d();
2012-03-31 09:16:13 +00:00
// Uncached time. Slower than the above cached time functions. Does not update cached time, call time_update for that.
2012-03-24 22:39:19 +00:00
double real_time_now();
int time_now_ms();
2012-03-31 09:16:13 +00:00
// Sleep. Does not necessarily have millisecond granularity, especially on Windows.
2012-03-24 22:39:19 +00:00
void sleep_ms(int ms);
// Can be sprinkled around the code to make sure that thing don't take
// unexpectedly long. What that means is up to you.
class LoggingDeadline {
public:
LoggingDeadline(const char *name, int deadline_in_ms);
~LoggingDeadline();
bool End();
private:
const char *name_;
bool endCalled_;
double totalTime_;
double endTime_;
};