SimGrid
Defines | Functions
Direct access to fifo elements
Fifo: generic workqueue

Defines

#define xbt_fifo_foreach(f, i, n, type)
 List iterator asserts and stuff.

Functions

void xbt_fifo_set_item_content (xbt_fifo_item_t, void *)
void * xbt_fifo_get_item_content (xbt_fifo_item_t)
void xbt_fifo_push_item (xbt_fifo_t, xbt_fifo_item_t)
xbt_fifo_item_t xbt_fifo_pop_item (xbt_fifo_t)
void xbt_fifo_unshift_item (xbt_fifo_t, xbt_fifo_item_t)
xbt_fifo_item_t xbt_fifo_shift_item (xbt_fifo_t)
int xbt_fifo_remove (xbt_fifo_t, void *)
int xbt_fifo_remove_all (xbt_fifo_t, void *)
void xbt_fifo_remove_item (xbt_fifo_t, xbt_fifo_item_t)
xbt_fifo_item_t xbt_fifo_get_next_item (xbt_fifo_item_t i)
xbt_fifo_item_t xbt_fifo_get_prev_item (xbt_fifo_item_t i)

Define Documentation

#define xbt_fifo_foreach (   f,
  i,
  n,
  type 
)

List iterator asserts and stuff.

Parameters:
fa list (xbt_fifo_t)
ia bucket (xbt_fifo_item_t)
typea type
nan object of type type.

Iterates over the whole list.


Function Documentation

void xbt_fifo_set_item_content ( xbt_fifo_item_t  i,
void *  v 
)
Parameters:
ia bucket
van object

stores v in i.

void* xbt_fifo_get_item_content ( xbt_fifo_item_t  i)
Parameters:
ia bucket
Returns:
the object stored i.
void xbt_fifo_push_item ( xbt_fifo_t  l,
xbt_fifo_item_t  new 
)

Push a bucket

Parameters:
llist
newbucket

Hook up this bucket at the tail of the list

xbt_fifo_item_t xbt_fifo_pop_item ( xbt_fifo_t  l)

Pop bucket

Parameters:
l
Returns:
the bucket that was at the tail of the list.

Returns NULL if the list was empty.

void xbt_fifo_unshift_item ( xbt_fifo_t  l,
xbt_fifo_item_t  new 
)

Push a bucket

Parameters:
llist
newbucket

Hook up this bucket at the head of the list

xbt_fifo_item_t xbt_fifo_shift_item ( xbt_fifo_t  l)

Shift bucket

Parameters:
l
Returns:
the bucket that was at the head of the list.

Returns NULL if the list was empty.

int xbt_fifo_remove ( xbt_fifo_t  l,
void *  t 
)
Parameters:
l
tan objet

removes the first occurence of t from l.

Warning:
it will not remove duplicates
Returns:
1 if an item was removed and 0 otherwise.
int xbt_fifo_remove_all ( xbt_fifo_t  l,
void *  t 
)
Parameters:
l
tan objet

removes all occurences of t from l.

Returns:
1 if an item was removed and 0 otherwise.
void xbt_fifo_remove_item ( xbt_fifo_t  l,
xbt_fifo_item_t  current 
)
Parameters:
la list
currenta bucket

removes a bucket current from the list l. This function implicitely assumes (and doesn't check!) that this item belongs to this list...

xbt_fifo_item_t xbt_fifo_get_next_item ( xbt_fifo_item_t  i)
Parameters:
ia bucket
Returns:
the bucket that comes next
xbt_fifo_item_t xbt_fifo_get_prev_item ( xbt_fifo_item_t  i)
Parameters:
ia bucket
Returns:
the bucket that is just before i.


Back to the main Simgrid Documentation page The version of Simgrid documented here is v3.6.1.
Documentation of other versions can be found in their respective archive files (directory doc/html).
Generated for SimGridAPI by doxygen