/* Cesar project {{{ * * Copyright (C) 2008 Spidcom * * <<>> * * }}} */ /** * \file lib/src/init.c * \brief Init module. * \ingroup lib * */ #include "common/std.h" #include "lib/init.h" static init_list_t *init_lists[INIT_LIST_NB]; void init_register (int list, init_list_t *module) { dbg_assert (list < INIT_LIST_NB); dbg_assert (module); module->next = init_lists[list]; init_lists[list] = module; } void init_exec (int list) { dbg_assert (list < INIT_LIST_NB); init_list_t *ptr = init_lists[list]; while (ptr) { ptr->init_function (); ptr = ptr->next; } }