ppsspp/base/timeutil.h

37 lines
943 B
C++

#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.
float time_now();
double time_now_d();
// Uncached time. Slower than the above cached time functions. Does not update cached time, call time_update for that.
double real_time_now();
int time_now_ms();
// Sleep. Does not necessarily have millisecond granularity, especially on Windows.
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_;
};