21 #ifndef _AVRIO_VECTOR_H_ 22 #define _AVRIO_VECTOR_H_ 24 #include <avrio/defs.h> 44 typedef void * (*vVectorElmtNew) (void);
60 typedef const void * (*pvVectorElmtKey) (
const void * element);
int iVectorFindFirstIndex(const xVector *vector, const void *key)
Chercher l'index du premier élément correspondant à une clé
int iVectorAppend(xVector *vector, void *data)
Ajout en fin de tableau.
int iVectorReplace(xVector *vector, int index, void *data)
Modifie l'élément pointé par une case.
int iVectorInitSearch(xVector *vector, pvVectorElmtKey fkey, iVectorElmtMatch fmatch)
Initialise les fonctions de recherche.
void *(* vVectorElmtNew)(void)
Fonction qui retourne un élément alloué avec une valeur par défaut.
const void *(* pvVectorElmtKey)(const void *element)
Retourne la clé d'un élément.
int iVectorResize(xVector *vector, int new_size)
Modifie la taille.
void(* vVectorElmtDestroy)(void *data)
Fonction qui libère la mémoire allouée à une donnée de le vecteur.
int iVectorInit(xVector *vector, int growth, vVectorElmtNew fnew, vVectorElmtDestroy fdestroy)
Initialise un tableau dynamique.
int iVectorSize(const xVector *vector)
Taille du tableau en nombre d'éléments.
int(* iVectorElmtMatch)(const void *key1, const void *key2)
Fonction de comparaison de 2 clés.
void * pvVectorGet(const xVector *vector, int index)
Pointeur sur l'élément.
int iVectorClear(xVector *vector)
Vide un tableau dynamique.
int iVectorRemove(xVector *vector, int index)
Retire un élément.
void * pvVectorFindFirst(const xVector *vector, const void *key)
Chercher le premier élément correspondant à une clé
void vVectorDestroy(xVector *vector)
Destruction d'un tableau dynamique.