1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- /* StarPU --- Runtime system for heterogeneous multicore architectures.
- *
- * Copyright (C) 2010-2017 CNRS
- * Copyright (C) 2009-2011,2014,2016 Université de Bordeaux
- * Copyright (C) 2011,2012 Inria
- *
- * StarPU is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2.1 of the License, or (at
- * your option) any later version.
- *
- * StarPU 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 Lesser General Public License in COPYING.LGPL for more details.
- */
- /*! \defgroup API_Task_Lists Task Lists
- \struct starpu_task_list
- Stores a double-chained list of tasks
- \ingroup API_Task_Lists
- \var struct starpu_task *starpu_task_list::head
- head of the list
- \var struct starpu_task *starpu_task_list::tail
- tail of the list
- \fn void starpu_task_list_init(struct starpu_task_list *list)
- \ingroup API_Task_Lists
- Initialize a list structure
- \fn void starpu_task_list_push_front(struct starpu_task_list *list, struct starpu_task *task)
- \ingroup API_Task_Lists
- Push \p task at the front of \p list
- \fn void starpu_task_list_push_back(struct starpu_task_list *list, struct starpu_task *task)
- \ingroup API_Task_Lists
- Push \p task at the back of \p list
- \fn struct starpu_task *starpu_task_list_front(const struct starpu_task_list *list)
- \ingroup API_Task_Lists
- Get the front of \p list (without removing it)
- \fn struct starpu_task *starpu_task_list_back(const struct starpu_task_list *list)
- \ingroup API_Task_Lists
- Get the back of \p list (without removing it)
- \fn int starpu_task_list_empty(const struct starpu_task_list *list)
- \ingroup API_Task_Lists
- Test if \p list is empty
- \fn void starpu_task_list_erase(struct starpu_task_list *list, struct starpu_task *task)
- \ingroup API_Task_Lists
- Remove \p task from \p list
- \fn struct starpu_task *starpu_task_list_pop_front(struct starpu_task_list *list)
- \ingroup API_Task_Lists
- Remove the element at the front of \p list
- \fn struct starpu_task *starpu_task_list_pop_back(struct starpu_task_list *list)
- \ingroup API_Task_Lists
- Remove the element at the back of \p list
- \fn struct starpu_task *starpu_task_list_begin(const struct starpu_task_list *list)
- \ingroup API_Task_Lists
- Get the first task of \p list.
- \fn struct starpu_task *starpu_task_list_end(const struct starpu_task_list *list)
- \ingroup API_Task_Lists
- Get the end of \p list.
- \fn struct starpu_task *starpu_task_list_next(const struct starpu_task *task)
- \ingroup API_Task_Lists
- Get the next task of \p list. This is not erase-safe.
- \fn int starpu_task_list_ismember(const struct starpu_task_list *list, const struct starpu_task *look)
- \ingroup API_Task_Lists
- Test whether the given task \p look is contained in the \p list.
- */
|