aboutsummaryrefslogtreecommitdiffstats
path: root/src/include/delta.h
diff options
context:
space:
mode:
authorgdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2008-10-25 10:35:10 +0000
committergdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2008-10-25 10:35:10 +0000
commit3547c3916175d387a43c6d3a36330550b1d278d5 (patch)
tree4df53f634f4c2923df3c8fac48a3826aa0e24dc2 /src/include/delta.h
parent902470d1c542735b989a727355744a974af43de4 (diff)
downloadChibiOS-3547c3916175d387a43c6d3a36330550b1d278d5.tar.gz
ChibiOS-3547c3916175d387a43c6d3a36330550b1d278d5.tar.bz2
ChibiOS-3547c3916175d387a43c6d3a36330550b1d278d5.zip
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@482 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'src/include/delta.h')
-rw-r--r--src/include/delta.h105
1 files changed, 0 insertions, 105 deletions
diff --git a/src/include/delta.h b/src/include/delta.h
deleted file mode 100644
index 4d1c9ac23..000000000
--- a/src/include/delta.h
+++ /dev/null
@@ -1,105 +0,0 @@
-/*
- ChibiOS/RT - Copyright (C) 2006-2007 Giovanni Di Sirio.
-
- This file is part of ChibiOS/RT.
-
- ChibiOS/RT is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3 of the License, or
- (at your option) any later version.
-
- ChibiOS/RT 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 General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-/**
- * @addtogroup VirtualTimers
- * @{
- */
-
-#ifndef _DELTA_H_
-#define _DELTA_H_
-
-/** Virtual Timer callback function.*/
-typedef void (*vtfunc_t)(void *);
-
-typedef struct VirtualTimer VirtualTimer;
-
-/**
- * Virtual Timer descriptor structure.
- * @extends DeltaList
- */
-struct VirtualTimer {
- /** Next timer in the delta list.*/
- VirtualTimer *vt_next;
- /** Previous timer in the delta list.*/
- VirtualTimer *vt_prev;
- /** Time delta before timeout.*/
- systime_t vt_dtime;
- /** Timer callback function pointer. The pointer is reset to zero after
- the callback is invoked.*/
- vtfunc_t vt_func;
- /** Timer callback function parameter.*/
- void *vt_par;
-};
-
-/**
- * Delta List header.
- * @note The delta list is implemented as a double link bidirectional list in
- * order to make the unlink time constant, the reset of a virtual timer
- * is often used in the code.
- */
-typedef struct {
- /** Next timer in the list (the one that will be triggered next).*/
- VirtualTimer *dl_next;
- /** Last timer in the list.*/
- VirtualTimer *dl_prev;
- /** Not used but it must be set to -1.*/
- systime_t dl_dtime;
- volatile systime_t dl_stime;
-} DeltaList;
-
-extern DeltaList dlist;
-
-#define chVTDoTickI() { \
- dlist.dl_stime++; \
- if (&dlist != (DeltaList *)dlist.dl_next) { \
- VirtualTimer *vtp; \
- \
- --dlist.dl_next->vt_dtime; \
- while (!(vtp = dlist.dl_next)->vt_dtime) { \
- vtfunc_t fn = vtp->vt_func; \
- vtp->vt_func = NULL; \
- (vtp->vt_next->vt_prev = (void *)&dlist)->vt_next = vtp->vt_next; \
- fn(vtp->vt_par); \
- } \
- } \
-}
-
-/** Infinite time specification.*/
-#define TIME_INFINITE 0
-
-/*
- * Virtual Timers APIs.
- */
-#ifdef __cplusplus
-extern "C" {
-#endif
- void chVTInit(void);
- void chVTSetI(VirtualTimer *vtp, systime_t time, vtfunc_t vtfunc, void *par);
- void chVTResetI(VirtualTimer *vtp);
-#ifdef __cplusplus
-}
-#endif
-
-/** Returns TRUE if the speciified timer is armed.*/
-#define chVTIsArmedI(vtp) ((vtp)->vt_func != NULL)
-
-#endif /* _DELTA_H_ */
-
-/** @} */