libin103 1.4
Bibliothèque de structures de données en C
|
File (FIFO) générique contenant des valeurs de type void* Plus de détails...
Aller au code source de ce fichier.
Définitions de type | |
typedef generic_list_t | generic_queue_t |
Type de données pour représenter une file générique contenant des valeurs de type void* | |
Fonctions | |
void | generic_queue_init (generic_queue_t *queue, int(*compare)(const void *key1, const void *key2), void *(*build)(const void *data), void(*destroy)(void *data)) |
Initialisation d'une nouvelle file générique contenant des valeurs de type void* | |
void | generic_queue_destroy (generic_queue_t *queue) |
Destruction d'une file. | |
int | generic_queue_enqueue (generic_queue_t *queue, const void *data) |
Ajouter un élément de type void* dans la file. | |
int | generic_queue_dequeue (generic_queue_t *queue, void **data) |
Supprime un élément de type void* dans la file. | |
void * | generic_queue_peek (generic_queue_t *queue) |
Récupère la valeur de type void* le plus ancien de la file. | |
int | generic_queue_size (generic_queue_t *queue) |
Accesseur sur la taille d'une file. | |
File (FIFO) générique contenant des valeurs de type void*
typedef generic_list_t generic_queue_t |
Type de données pour représenter une file générique contenant des valeurs de type void*
Une file est une liste chaînée gérée de manière adéquate: insertion en tête et suppression en queue.
int generic_queue_dequeue | ( | generic_queue_t * | queue, |
void ** | data ) |
Supprime un élément de type void* dans la file.
Etant donné un pointeur vers une file (représentée par une liste chaînée), supprime l'élément le plus ancien de la file.
queue | est un pointeur vers la structure de données generic_queue_t |
@pram data un pointeur sur type void* qui permet de récupérer la valeur de l'élément supprimer de la file
void generic_queue_destroy | ( | generic_queue_t * | queue | ) |
Destruction d'une file.
Utilise la fonction de destruction des listes chaînées pour parcourir la liste et détruire tous les éléments de la file.
queue | est un pointeur vers la structure de données des piles generic_queue_t |
int generic_queue_enqueue | ( | generic_queue_t * | queue, |
const void * | data ) |
Ajouter un élément de type void* dans la file.
Etant donné un pointeur vers une file (représentée par une liste chaînée) et une valeur de type void*, ajoute un nouvel élément à la file avec cette valeur.
queue | est un pointeur vers la structure de données generic_queue_t |
@pram data une valeur de type void* à ajouter à la file
void generic_queue_init | ( | generic_queue_t * | queue, |
int(*)(const void *key1, const void *key2) | compare, | ||
void *(*)(const void *data) | build, | ||
void(*)(void *data) | destroy ) |
Initialisation d'une nouvelle file générique contenant des valeurs de type void*
Utilise la fonction d'initalisation des listes chaînée pour mettre à zéro la taille et à NULL les pointeurs vers le premier et le dernier élément de la liste, i.e., de la file. Cette fonction nécessite une fonction de comparaison des éléments de la file, une fonction de construction d'un élément de la file et une fonction de destruction des éléments de la file.
queue | est un pointeur vers la structure de données des files generic_queue_t |
compare | fonction permettant la comparaison de deux éléments de la file |
build | fonction permettant la construction d'une valeur de la file |
destroy | fonction permettant la destruction d'une valeur de la file |
void * generic_queue_peek | ( | generic_queue_t * | queue | ) |
Récupère la valeur de type void* le plus ancien de la file.
Etant donné un pointeur vers une file (représentée par une liste chaînée), récupère la valeur de l'élément le plus ancien de la file sans le supprimer.
queue | est un pointeur vers la structure de données generic_queue_t |
int generic_queue_size | ( | generic_queue_t * | queue | ) |
Accesseur sur la taille d'une file.
Etant donné un pointeur vers une file (représentée par une liste chaînée), retourne la valeur du champ size
queue | est un pointeur vers la structure de données generic_queue_t |