Skip to content
This repository has been archived by the owner on Feb 11, 2021. It is now read-only.

Latest commit

 

History

History
99 lines (81 loc) · 2.77 KB

SDL_timer.h

File metadata and controls

99 lines (81 loc) · 2.77 KB
 
Apr 26, 2001
Apr 26, 2001
1
2
/*
SDL - Simple DirectMedia Layer
Jan 24, 2010
Jan 24, 2010
3
Copyright (C) 1997-2010 Sam Lantinga
Apr 26, 2001
Apr 26, 2001
4
5
This library is free software; you can redistribute it and/or
Feb 1, 2006
Feb 1, 2006
6
modify it under the terms of the GNU Lesser General Public
Apr 26, 2001
Apr 26, 2001
7
License as published by the Free Software Foundation; either
Feb 1, 2006
Feb 1, 2006
8
version 2.1 of the License, or (at your option) any later version.
Apr 26, 2001
Apr 26, 2001
9
10
11
12
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Feb 1, 2006
Feb 1, 2006
13
Lesser General Public License for more details.
Apr 26, 2001
Apr 26, 2001
14
Feb 1, 2006
Feb 1, 2006
15
16
17
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Apr 26, 2001
Apr 26, 2001
18
19
Sam Lantinga
Dec 14, 2001
Dec 14, 2001
20
slouken@libsdl.org
Apr 26, 2001
Apr 26, 2001
21
22
23
24
25
*/
#ifndef _SDL_timer_h
#define _SDL_timer_h
Jul 10, 2006
Jul 10, 2006
26
/**
Oct 19, 2009
Oct 19, 2009
27
28
29
* \file SDL_timer.h
*
* Header for the SDL time management routines.
Jul 10, 2006
Jul 10, 2006
30
*/
Apr 26, 2001
Apr 26, 2001
31
Feb 10, 2006
Feb 10, 2006
32
#include "SDL_stdinc.h"
Feb 10, 2006
Feb 10, 2006
33
#include "SDL_error.h"
Apr 26, 2001
Apr 26, 2001
34
35
36
37
#include "begin_code.h"
/* Set up for C function definitions, even when using C++ */
#ifdef __cplusplus
Jul 10, 2006
Jul 10, 2006
38
/* *INDENT-OFF* */
Apr 26, 2001
Apr 26, 2001
39
extern "C" {
Jul 10, 2006
Jul 10, 2006
40
/* *INDENT-ON* */
Apr 26, 2001
Apr 26, 2001
41
42
#endif
Oct 19, 2009
Oct 19, 2009
43
/**
Jan 27, 2011
Jan 27, 2011
44
* \brief Get the number of milliseconds since the SDL library initialization.
Oct 19, 2009
Oct 19, 2009
45
*
Jan 27, 2011
Jan 27, 2011
46
* \note This value wraps if the program runs for more than ~49 days.
Jul 10, 2006
Jul 10, 2006
47
*/
Apr 11, 2002
Apr 11, 2002
48
extern DECLSPEC Uint32 SDLCALL SDL_GetTicks(void);
Apr 26, 2001
Apr 26, 2001
49
Oct 19, 2009
Oct 19, 2009
50
/**
Jan 27, 2011
Jan 27, 2011
51
* \brief Wait a specified number of milliseconds before returning.
Oct 19, 2009
Oct 19, 2009
52
*/
Apr 11, 2002
Apr 11, 2002
53
extern DECLSPEC void SDLCALL SDL_Delay(Uint32 ms);
Apr 26, 2001
Apr 26, 2001
54
Oct 19, 2009
Oct 19, 2009
55
56
57
58
59
60
61
/**
* Function prototype for the timer callback function.
*
* The callback function is passed the current timer interval and returns
* the next timer interval. If the returned value is the same as the one
* passed in, the periodic alarm continues, otherwise a new alarm is
* scheduled. If the callback returns 0, the periodic alarm is cancelled.
Apr 26, 2001
Apr 26, 2001
62
*/
Jan 27, 2011
Jan 27, 2011
63
typedef Uint32 (SDLCALL * SDL_TimerCallback) (Uint32 interval, void *param);
Apr 26, 2001
Apr 26, 2001
64
Oct 19, 2009
Oct 19, 2009
65
/**
Jan 27, 2011
Jan 27, 2011
66
* Definition of the timer ID type.
Oct 19, 2009
Oct 19, 2009
67
*/
Jan 27, 2011
Jan 27, 2011
68
typedef int SDL_TimerID;
Apr 26, 2001
Apr 26, 2001
69
Oct 19, 2009
Oct 19, 2009
70
/**
Jan 27, 2011
Jan 27, 2011
71
72
73
* \brief Add a new timer to the pool of timers already running.
*
* \return A timer ID, or NULL when an error occurs.
Apr 26, 2001
Apr 26, 2001
74
*/
Jul 10, 2006
Jul 10, 2006
75
extern DECLSPEC SDL_TimerID SDLCALL SDL_AddTimer(Uint32 interval,
Jan 27, 2011
Jan 27, 2011
76
77
SDL_TimerCallback callback,
void *param);
Apr 26, 2001
Apr 26, 2001
78
Oct 19, 2009
Oct 19, 2009
79
/**
Jan 27, 2011
Jan 27, 2011
80
81
82
83
84
* \brief Remove a timer knowing its ID.
*
* \return A boolean value indicating success or failure.
*
* \warning It is not safe to remove a timer multiple times.
Apr 26, 2001
Apr 26, 2001
85
*/
Apr 11, 2002
Apr 11, 2002
86
extern DECLSPEC SDL_bool SDLCALL SDL_RemoveTimer(SDL_TimerID t);
Apr 26, 2001
Apr 26, 2001
87
Oct 19, 2009
Oct 19, 2009
88
Apr 26, 2001
Apr 26, 2001
89
90
/* Ends C function definitions when using C++ */
#ifdef __cplusplus
Jul 10, 2006
Jul 10, 2006
91
/* *INDENT-OFF* */
Apr 26, 2001
Apr 26, 2001
92
}
Jul 10, 2006
Jul 10, 2006
93
/* *INDENT-ON* */
Apr 26, 2001
Apr 26, 2001
94
95
96
97
#endif
#include "close_code.h"
#endif /* _SDL_timer_h */
Jul 10, 2006
Jul 10, 2006
98
99
/* vi: set ts=4 sw=4 expandtab: */