SimGrid
Functions
Sets basic usage
Set: generic set datatype

Functions

void xbt_set_add (xbt_set_t set, xbt_set_elm_t elm, void_f_pvoid_t free_func)
 Add an element to a set.
void xbt_set_remove (xbt_set_t set, xbt_set_elm_t elm)
 Remove an element from a set.
void xbt_set_remove_by_name (xbt_set_t set, const char *key)
 Remove an element from a set providing its name.
xbt_set_elm_t xbt_set_get_by_name_or_null (xbt_set_t set, const char *key)
 Retrieve data by providing its name.
void xbt_set_remove_by_name_ext (xbt_set_t set, const char *key, int key_len)
 Remove an element from a set providing its name and the length of the name.
void xbt_set_remove_by_id (xbt_set_t set, int id)
 Remove an element from a set providing its id.
xbt_set_elm_t xbt_set_get_by_name (xbt_set_t set, const char *key)
 Retrieve data by providing its name.
xbt_set_elm_t xbt_set_get_by_name_ext (xbt_set_t set, const char *key, int key_len)
 Retrieve data by providing its name and the length of the name.
xbt_set_elm_t xbt_set_get_by_id (xbt_set_t set, int id)
 Retrieve data by providing its ID.
unsigned long xbt_set_length (const xbt_set_t set)
 Returns the number of elements in the set.

Function Documentation

void xbt_set_add ( xbt_set_t  set,
xbt_set_elm_t  elm,
void_f_pvoid_t  free_func 
)

Add an element to a set.

Parameters:
setset to populate
elmelement to add.
free_funcHow to add the data

elm->name must be set; if elm->name_len <= 0, it is recomputed. If >0, it's used as is; elm->ID is attributed automatically.

void xbt_set_remove ( xbt_set_t  set,
xbt_set_elm_t  elm 
)

Remove an element from a set.

Parameters:
seta set
elmelement to remove
void xbt_set_remove_by_name ( xbt_set_t  set,
const char *  key 
)

Remove an element from a set providing its name.

Parameters:
seta set
keyname of the element to remove
xbt_set_elm_t xbt_set_get_by_name_or_null ( xbt_set_t  set,
const char *  name 
)

Retrieve data by providing its name.

Parameters:
set
nameName of the searched cell
Returns:
the data you're looking for, returns NULL if not found
void xbt_set_remove_by_name_ext ( xbt_set_t  set,
const char *  key,
int  key_len 
)

Remove an element from a set providing its name and the length of the name.

Parameters:
seta set
keyname of the element to remove
key_lenlength of name
void xbt_set_remove_by_id ( xbt_set_t  set,
int  id 
)

Remove an element from a set providing its id.

Parameters:
seta set
idid of the element to remove
xbt_set_elm_t xbt_set_get_by_name ( xbt_set_t  set,
const char *  name 
)

Retrieve data by providing its name.

Parameters:
set
nameName of the searched cell
Returns:
the data you're looking for
xbt_set_elm_t xbt_set_get_by_name_ext ( xbt_set_t  set,
const char *  name,
int  name_len 
)

Retrieve data by providing its name and the length of the name.

Parameters:
set
nameName of the searched cell
name_lenlength of the name, when strlen cannot be trusted
Returns:
the data you're looking for

This is useful when strlen cannot be trusted because you don't use a char* as name, you weirdo.

xbt_set_elm_t xbt_set_get_by_id ( xbt_set_t  set,
int  id 
)

Retrieve data by providing its ID.

Parameters:
set
idwhat you're looking for
Returns:
the data you're looking for
Warning:
, if the ID does not exists, you're getting into trouble
unsigned long xbt_set_length ( const xbt_set_t  set)

Returns the number of elements in the set.

Parameters:
seta set
Returns:
the number of elements in the set


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