|
@@ -1,14 +1,14 @@
|
|
/**
|
|
/**
|
|
* Copyright (c) 2006-2009 LOVE Development Team
|
|
* Copyright (c) 2006-2009 LOVE Development Team
|
|
-*
|
|
|
|
|
|
+*
|
|
* This software is provided 'as-is', without any express or implied
|
|
* This software is provided 'as-is', without any express or implied
|
|
* warranty. In no event will the authors be held liable for any damages
|
|
* warranty. In no event will the authors be held liable for any damages
|
|
* arising from the use of this software.
|
|
* arising from the use of this software.
|
|
-*
|
|
|
|
|
|
+*
|
|
* Permission is granted to anyone to use this software for any purpose,
|
|
* Permission is granted to anyone to use this software for any purpose,
|
|
* including commercial applications, and to alter it and redistribute it
|
|
* including commercial applications, and to alter it and redistribute it
|
|
* freely, subject to the following restrictions:
|
|
* freely, subject to the following restrictions:
|
|
-*
|
|
|
|
|
|
+*
|
|
* 1. The origin of this software must not be misrepresented; you must not
|
|
* 1. The origin of this software must not be misrepresented; you must not
|
|
* claim that you wrote the original software. If you use this software
|
|
* claim that you wrote the original software. If you use this software
|
|
* in a product, an acknowledgment in the product documentation would be
|
|
* in a product, an acknowledgment in the product documentation would be
|
|
@@ -24,6 +24,12 @@
|
|
// SDL
|
|
// SDL
|
|
#include <SDL.h>
|
|
#include <SDL.h>
|
|
|
|
|
|
|
|
+#ifdef LOVE_WINDOWS
|
|
|
|
+ #include <time.h>
|
|
|
|
+#else
|
|
|
|
+ #include <sys/time.h>
|
|
|
|
+#endif
|
|
|
|
+
|
|
// LOVE
|
|
// LOVE
|
|
#include <common/Module.h>
|
|
#include <common/Module.h>
|
|
|
|
|
|
@@ -43,7 +49,7 @@ namespace sdl
|
|
|
|
|
|
// Timing vars for benchmarking.
|
|
// Timing vars for benchmarking.
|
|
Uint32 time_init;
|
|
Uint32 time_init;
|
|
-
|
|
|
|
|
|
+
|
|
// Frame delta vars.
|
|
// Frame delta vars.
|
|
Uint32 currTime;
|
|
Uint32 currTime;
|
|
Uint32 prevTime;
|
|
Uint32 prevTime;
|
|
@@ -78,9 +84,9 @@ namespace sdl
|
|
* @return Always returns "love.timer.sdl".
|
|
* @return Always returns "love.timer.sdl".
|
|
**/
|
|
**/
|
|
const char * getName() const;
|
|
const char * getName() const;
|
|
-
|
|
|
|
|
|
+
|
|
/**
|
|
/**
|
|
- * Measures the time between this call and the previous call,
|
|
|
|
|
|
+ * Measures the time between this call and the previous call,
|
|
* and updates internal values accordinly.
|
|
* and updates internal values accordinly.
|
|
**/
|
|
**/
|
|
void step();
|
|
void step();
|
|
@@ -101,7 +107,7 @@ namespace sdl
|
|
/**
|
|
/**
|
|
* Gets the average FPS over the last second. Beucase the value is only updated
|
|
* Gets the average FPS over the last second. Beucase the value is only updated
|
|
* once per second, it does not look erratic when displayed on screen.
|
|
* once per second, it does not look erratic when displayed on screen.
|
|
- * @return The "current" FPS.
|
|
|
|
|
|
+ * @return The "current" FPS.
|
|
**/
|
|
**/
|
|
float getFPS() const;
|
|
float getFPS() const;
|
|
|
|
|
|
@@ -112,6 +118,13 @@ namespace sdl
|
|
**/
|
|
**/
|
|
float getTime() const;
|
|
float getTime() const;
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
+ * Gets the amount of time since the Epoch. Useful for timing too because
|
|
|
|
+ * it is accurate to the microsecond.
|
|
|
|
+ * @return The time (in seconds) since the Epoch.
|
|
|
|
+ **/
|
|
|
|
+ float getMicroTime() const;
|
|
|
|
+
|
|
}; // Timer
|
|
}; // Timer
|
|
|
|
|
|
} // sdl
|
|
} // sdl
|