SimGrid  3.9.90
Versatile Simulation of Distributed Systems
 All Data Structures Functions Variables Typedefs Enumerations Enumerator Groups Pages

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. More...
 
void xbt_set_remove (xbt_set_t set, xbt_set_elm_t elm)
 Remove an element from a set. More...
 
void xbt_set_remove_by_name (xbt_set_t set, const char *key)
 Remove an element from a set providing its name. More...
 
xbt_set_elm_t xbt_set_get_by_name_or_null (xbt_set_t set, const char *key)
 Retrieve data by providing its name. More...
 
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. More...
 
void xbt_set_remove_by_id (xbt_set_t set, int id)
 Remove an element from a set providing its id. More...
 
xbt_set_elm_t xbt_set_get_by_name (xbt_set_t set, const char *key)
 Retrieve data by providing its name. More...
 
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. More...
 
xbt_set_elm_t xbt_set_get_by_id (xbt_set_t set, int id)
 Retrieve data by providing its ID. More...
 
unsigned long xbt_set_length (const xbt_set_t set)
 Returns the number of elements in the set. More...
 

Detailed Description

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 free 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