ia64/xen-unstable

view tools/vnet/vnetd/timer.h @ 6946:e703abaf6e3d

Add behaviour to the remove methods to remove the transaction's path itself. This allows us to write Remove(path) to remove the specified path rather than having to slice the path ourselves.
author emellor@ewan
date Sun Sep 18 14:42:13 2005 +0100 (2005-09-18)
parents 0a4b76b6b5a0
children 71b0f00f6344
line source
1 /*
2 * Copyright (C) 2004 Mike Wray <mike.wray@hp.com>
3 *
4 * This library is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU Lesser General Public License as published by
6 * the Free Software Foundation; either version 2.1 of the License, or
7 * (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public License
15 * along with this library; if not, write to the Free Software
16 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17 */
19 #ifndef _VNET_TIMER_H_
20 #define _VNET_TIMER_H_
22 struct Timer;
24 typedef void TimerFn(struct Timer *);
26 typedef struct Timer {
27 TimerFn *fn;
28 void *data;
29 double expiry;
30 struct Timer *next;
31 } Timer;
33 extern void timer_alarm(void);
34 extern double time_now(void);
35 extern int process_timers(void);
36 extern Timer * Timer_set(double delay, TimerFn *fn, void *data);
37 extern int Timer_cancel(Timer *timer);
39 #endif /* ! _VNET_TIMER_H_ */