-extern unsigned int st_pause_ticks, st_pause_count;
-
-/// Time a game is running. (Non-pause mode, etc.)
-unsigned int st_get_ticks(void);
-
-void st_pause_ticks_init(void);
-void st_pause_ticks_start(void);
-void st_pause_ticks_stop(void);
-bool st_pause_ticks_started(void);
-
-/// Timer
-/** This class can be used as stop watch
- for example. It's also possible to calculate
- frames per seconds and things like that with it.
- It's a general timing class, but it
- can esspecially be used together with st_get_ticks(). */
-class Timer
-{
- public:
- unsigned int period;
- unsigned int time;
- unsigned int (*get_ticks) (void);
-
- public:
- Timer();
-
- /// Initialize the timer.
- /** @Param st_ticks: If true internally st_get_ticks() is used, else SDL_GetTicks() is used. */
- void init(bool st_ticks);
-
- /// Start the timer with the given period (in ms).
- void start(unsigned int period);
-
- /// Stop the timer.
- void stop();
-
- /// Check if the timer is started and within its period.
- /** If one of these requirements isn't the case the timer
- is automatically reseted. */
- int check();
-
- /// Is the timer started?
- int started();
-
- /// Get time left until the last timing period is finished.
- /** The returned value can be negative. */
- int get_left();
-
- /// Get the gone time, since last timer start.
- /** The returned value can be negative. */
- int get_gone();
-
- /// Write the timer value to a file (For save games in example).
- void fwrite(FILE* fi);
- /// Read a timer value from a file (From save games in example).
- void fread(FILE* fi);
-};
+#include <cstdlib>
+
+namespace SuperTux
+ {
+
+ class Ticks
+ {
+ public:
+ /// Time a game is running. (Non-pause mode, etc.)
+ static unsigned int get();
+
+ static void pause_init();
+ static void pause_start();
+ static void pause_stop();
+ static bool pause_started();
+
+ private:
+ static unsigned int pause_ticks;
+ static unsigned int pause_count;
+
+ };
+
+ /// Timer
+ /** This class can be used as stop watch
+ for example. It's also possible to calculate
+ frames per seconds and things like that with it.
+ It's a general timing class, but it
+ can esspecially be used together with Ticks::get(). */
+ class Timer
+ {
+ public:
+ unsigned int period;
+ unsigned int time;
+ unsigned int (*get_ticks) (void);
+
+ public:
+ Timer();
+
+ /// Initialize the timer.
+ /** @param st_ticks: If true internally Ticks::get() is used, else SDL_GetTicks() is used. */
+ void init(bool game_ticks);
+
+ /// Start the timer with the given period (in ms).
+ void start(unsigned int period);
+
+ /// Stop the timer.
+ void stop();
+
+ /// Check if the timer is started and within its period.
+ /** If one of these requirements isn't the case the timer
+ is automatically reseted. */
+ int check();
+
+ /// Is the timer started?
+ int started();
+
+ /// Get time left until the last timing period is finished.
+ /** The returned value can be negative. */
+ int get_left();
+
+ /// Get the gone time, since last timer start.
+ /** The returned value can be negative. */
+ int get_gone();
+
+ /// Write the timer value to a file (For save games in example).
+ void fwrite(FILE* fi);
+ /// Read a timer value from a file (From save games in example).
+ void fread(FILE* fi);
+ };
+
+} //namespace SuperTux