annotate Gui/timer.c @ 4613:8497da33a0d2

updated :noprebuf to emulate the playback used in mplayer 0.60 (with dxr3 patch), this solves alot of issues for ppl who had problems with the new prebuffering code
author mswitch
date Sat, 09 Feb 2002 17:40:33 +0000
parents d237c5d4b216
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1693
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
1
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
2 #include <signal.h>
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
3 #include <time.h>
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
4 #include <sys/time.h>
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
5
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
6 #include "timer.h"
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
7
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
8 static struct itimerval it;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
9 static struct sigaction sa;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
10
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
11 timerTSigHandler timerSigHandler;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
12
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
13 void timerSetHandler( timerTSigHandler handler )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
14 { timerSigHandler=handler; }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
15
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
16 void timerInit( void )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
17 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
18 sa.sa_handler=timerSigHandler;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
19 sa.sa_flags=SA_RESTART;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
20 sigemptyset( &sa.sa_mask );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
21 sigaction( SIGALRM,&sa,NULL );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
22 it.it_interval.tv_sec=0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
23 it.it_interval.tv_usec=20000;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
24 it.it_value.tv_sec=0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
25 it.it_value.tv_usec=50000;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
26 setitimer( ITIMER_REAL,&it,NULL );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
27 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
28
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
29 void timerDone( void )
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
30 {
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
31 it.it_interval.tv_sec=0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
32 it.it_interval.tv_usec=0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
33 it.it_value.tv_sec=0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
34 it.it_value.tv_usec=0;
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
35 setitimer( ITIMER_REAL,&it,NULL );
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
36 }
d237c5d4b216 GUI version n-1
arpi
parents:
diff changeset
37