X-Git-Url: http://git.pk910.de/?p=NeonServV5.git;a=blobdiff_plain;f=src%2Ftimeq.h;h=6f5546e4c8cdfc101c5e44abfddd0b5566ed4df3;hp=0a0694827de2fc08cf1a8a633cb1a838462d128c;hb=HEAD;hpb=0f1dc61921eef1db8e404a5a82372e2d1cd55daa diff --git a/src/timeq.h b/src/timeq.h index 0a06948..6f5546e 100644 --- a/src/timeq.h +++ b/src/timeq.h @@ -1,3 +1,19 @@ +/* timeq.h - NeonServ v5.6 + * Copyright (C) 2011-2012 Philipp Kreil (pk910) + * + * This program 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. + * + * This program 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 . + */ #ifndef _timeq_h #define _timeq_h @@ -6,20 +22,26 @@ #define TIMEQ_CALLBACK(NAME) void NAME(UNUSED_ARG(void *data)) typedef TIMEQ_CALLBACK(timeq_callback_t); +struct IODescriptor; + struct timeq_entry { + struct IODescriptor *iofd; char *name; - time_t execute; + int module_id; timeq_callback_t *callback; void *data; - struct timeq_entry *next; + struct timeq_entry *prev, *next; }; -void timeq_tick(); -struct timeq_entry* timeq_add(int seconds, timeq_callback_t *callback, void *data); -struct timeq_entry* timeq_add_name(char *name, int seconds, timeq_callback_t *callback, void *data); -int timeq_del(struct timeq_entry* entry); -int timeq_del_name(char *name); -int timeq_name_exists(char *name); - -#endif \ No newline at end of file +#ifndef DND_FUNCTIONS +/* MODULAR ACCESSIBLE */ struct timeq_entry* timeq_add(int seconds, int module_id, timeq_callback_t *callback, void *data); +/* MODULAR ACCESSIBLE */ struct timeq_entry* timeq_uadd(int useconds, int module_id, timeq_callback_t *callback, void *data); +/* MODULAR ACCESSIBLE */ struct timeq_entry* timeq_add_name(char *name, int seconds, int module_id, timeq_callback_t *callback, void *data); +/* MODULAR ACCESSIBLE */ struct timeq_entry* timeq_uadd_name(char *name, int useconds, int module_id, timeq_callback_t *callback, void *data); +/* MODULAR ACCESSIBLE */ int timeq_del(struct timeq_entry* entry); +/* MODULAR ACCESSIBLE */ int timeq_del_name(char *name); +/* MODULAR ACCESSIBLE */ int timeq_name_exists(char *name); +void unregister_module_timers(int module_id); +#endif +#endif