task_lists.doxy 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. /*
  2. * This file is part of the StarPU Handbook.
  3. * Copyright (C) 2009--2011 Universit@'e de Bordeaux
  4. * Copyright (C) 2010, 2011, 2012, 2013, 2014, 2016 CNRS
  5. * Copyright (C) 2011, 2012 INRIA
  6. * See the file version.doxy for copying conditions.
  7. */
  8. /*! \defgroup API_Task_Lists Task Lists
  9. \struct starpu_task_list
  10. Stores a double-chained list of tasks
  11. \ingroup API_Task_Lists
  12. \var struct starpu_task *starpu_task_list::head
  13. head of the list
  14. \var struct starpu_task *starpu_task_list::tail
  15. tail of the list
  16. \fn void starpu_task_list_init(struct starpu_task_list *list)
  17. \ingroup API_Task_Lists
  18. Initialize a list structure
  19. \fn void starpu_task_list_push_front(struct starpu_task_list *list, struct starpu_task *task)
  20. \ingroup API_Task_Lists
  21. Push \p task at the front of \p list
  22. \fn void starpu_task_list_push_back(struct starpu_task_list *list, struct starpu_task *task)
  23. \ingroup API_Task_Lists
  24. Push \p task at the back of \p list
  25. \fn struct starpu_task *starpu_task_list_front(struct starpu_task_list *list)
  26. \ingroup API_Task_Lists
  27. Get the front of \p list (without removing it)
  28. \fn struct starpu_task *starpu_task_list_back(struct starpu_task_list *list)
  29. \ingroup API_Task_Lists
  30. Get the back of \p list (without removing it)
  31. \fn int starpu_task_list_empty(struct starpu_task_list *list)
  32. \ingroup API_Task_Lists
  33. Test if \p list is empty
  34. \fn void starpu_task_list_erase(struct starpu_task_list *list, struct starpu_task *task)
  35. \ingroup API_Task_Lists
  36. Remove \p task from \p list
  37. \fn struct starpu_task *starpu_task_list_pop_front(struct starpu_task_list *list)
  38. \ingroup API_Task_Lists
  39. Remove the element at the front of \p list
  40. \fn struct starpu_task *starpu_task_list_pop_back(struct starpu_task_list *list)
  41. \ingroup API_Task_Lists
  42. Remove the element at the back of \p list
  43. \fn struct starpu_task *starpu_task_list_begin(struct starpu_task_list *list)
  44. \ingroup API_Task_Lists
  45. Get the first task of \p list.
  46. \fn struct starpu_task *starpu_task_list_end(struct starpu_task_list *list)
  47. \ingroup API_Task_Lists
  48. Get the end of \p list.
  49. \fn struct starpu_task *starpu_task_list_next(struct starpu_task *task)
  50. \ingroup API_Task_Lists
  51. Get the next task of \p list. This is not erase-safe.
  52. \fn int starpu_task_list_ismember(struct starpu_task_list *list, struct starpu_task *look)
  53. \ingroup API_Task_Lists
  54. Test whether the given task \p look is contained in the \p list.
  55. */