Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

sdl::time(3pm) [debian man page]

pods::SDL::Time(3pm)					User Contributed Perl Documentation				      pods::SDL::Time(3pm)

NAME
SDL::Time - An SDL Perl extension for managing timers CATEGORY
Core SYNOPSIS
use warnings; use strict; use threads; use threads::shared; use SDL::Time; package foo; use SDL ':all'; SDL::init(SDL_INIT_TIMER); my $tick :shared = 0; sub ticker { $tick++; warn $tick; return 100; } package main; my $id = SDL::Time::add_timer(100, 'foo::ticker'); sleep(2); SDL::Time::remove_timer($id); METHODS
add_timer my $id = SDL::Timer::add_timer( $ms_interval, $callback ); This runs in a separate thread and a cloned Perl thread. "threads" and "threads::shared" must be used to share any variables the timer uses. The $callback function, specified with a string of the function's name, will be called after the milliseconds of $interval have elapsed. The actual delay may be longer than specified depending on the underlying OS. The callback function is passed the current timer interval as well as the $interval parameter and should return the next timer interval. If the return value from the callback is 0, the timer is cancelled; otherwise, the timer will continue to run. The timer callback function may run in a different thread to your main program, so it shouldn't call any functions from within itself. You may call SDL::push_event, however. "SDL::Time::add_timer" returns the identifier value of the generated timer or undef on error. Note: You must initialize ("SDL::init") the timer subsystem to use this function. remove_timer SDL::Timer::remove_timer( $id ); The other way to cancel a timer is to use "SDL::Time::remove_timer" on the $id of a timer. This ID is the return value of the "SDL::Time::add_timer" function. "SDL::Time::remove_timer" returns 0 on success or "-1" on error. AUTHORS
See "AUTHORS" in SDL. perl v5.14.2 2012-05-28 pods::SDL::Time(3pm)

Check Out this Related Man Page

SDL_AddTimer(3) 						 SDL API Reference						   SDL_AddTimer(3)

NAME
SDL_AddTimer- Add a timer which will call a callback after the specified number of milliseconds has elapsed. SYNOPSIS
#include "SDL.h" SDL_TimerID SDL_AddTimer(Uint32 interval, SDL_NewTimerCallback callback, void *param); CALLBACK
/* type definition for the "new" timer callback function */ typedef Uint32 (*SDL_NewTimerCallback)(Uint32 interval, void *param); DESCRIPTION
Adds a callback function to be run after the specified number of milliseconds has elapsed. The callback function is passed the current timer interval and the user supplied parameter from the SDL_AddTimer call and returns the next timer interval. If the returned value from the callback is the same as the one passed in, the periodic alarm continues, otherwise a new alarm is scheduled. To cancel a currently running timer call SDL_RemoveTimer with the timer ID returned from SDL_AddTimer. The timer callback function may run in a different thread than your main program, and so shouldn't call any functions from within itself. You may always call SDL_PushEvent, however. The granularity of the timer is platform-dependent, but you should count on it being at least 10 ms as this is the most common number. This means that if you request a 16 ms timer, your callback will run approximately 20 ms later on an unloaded system. If you wanted to set a flag signaling a frame update at 30 frames per second (every 33 ms), you might set a timer for 30 ms (see example below). If you use this function, you need to pass SDL_INIT_TIMER to SDL_Init. RETURN VALUE
Returns an ID value for the added timer or NULL if there was an error. EXAMPLES
my_timer_id = SDL_AddTimer((33/10)*10, my_callbackfunc, my_callback_param); SEE ALSO
SDL_RemoveTimer, SDL_PushEvent SDL
Tue 11 Sep 2001, 23:01 SDL_AddTimer(3)
Man Page