view Gui/timer.c @ 4727:cbef9b843e6d

Fixed a bug with prebuffering which would cause syncloss, someone at sigma should go die for not giving us the damn tech docs =(
author mswitch
date Sat, 16 Feb 2002 13:41:32 +0000
parents d237c5d4b216
children
line wrap: on
line source


#include <signal.h>
#include <time.h>
#include <sys/time.h>

#include "timer.h"

static struct itimerval it;
static struct sigaction sa;

timerTSigHandler timerSigHandler;

void timerSetHandler( timerTSigHandler handler )
{ timerSigHandler=handler; }

void timerInit( void )
{
 sa.sa_handler=timerSigHandler;
 sa.sa_flags=SA_RESTART;
 sigemptyset( &sa.sa_mask );
 sigaction( SIGALRM,&sa,NULL );
 it.it_interval.tv_sec=0;
 it.it_interval.tv_usec=20000;
 it.it_value.tv_sec=0;
 it.it_value.tv_usec=50000;
 setitimer( ITIMER_REAL,&it,NULL );
}

void timerDone( void )
{
 it.it_interval.tv_sec=0;
 it.it_interval.tv_usec=0;
 it.it_value.tv_sec=0;
 it.it_value.tv_usec=0;
 setitimer( ITIMER_REAL,&it,NULL );
}