12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- #ifndef subdiv_h
- #define subdiv_h
- /* --- Include --- */
- #include "constante.h"
- /* --- Constante --- */
- #define MEMEMPTY 0
- #define MEMSET 1
- /* --- Structures --- */
- typedef struct node node;
- struct node{
- int index; //Index dans le tableau mem de subdiv
- int start; //Pos debut (incluse)
- int end; //Pos fin (non incluse)
- int length; //Taille réellement utilisée
- unsigned char type;
- int prev; //Position de noeud d'avant
- int next; //Position du prochain noeud
- };
- typedef struct{
- node mem[MEM_SIZE / 2];
- boolean use[MEM_SIZE / 2];
- }subdiv;
- /* --- Fonctions --- */
- /**
- * Initialise la structure de gestion
- * @param subdiv* Le gestionnaire de mémoire par subdivision
- */
- void ini_subdiv(subdiv*);
- /**
- * Ajoute une donnée dans la mémoire
- * @param subdiv* Le gestionnaire de mémoire par subdivision
- * @param char* La mémoire
- * @param char* La clef
- * @param char* La valeur
- * @return Réussite
- */
- boolean add_data_subdiv(subdiv*, char*, char*, char*);
- /**
- * Ajoute une donnée déjà formatée sour la forme clef=valeur en mémoire
- * @param subdiv* Le gestionnaire de mémoire par subdivision
- * @param char* La mémoire
- * @param char* La donnée
- * @return Réussite
- */
- boolean add_fdata_subdiv(subdiv*, char*, char*); //add formated data
- /**
- * Récupère une donnée dans la mémoire
- * @param subdiv* Le gestionnaire de mémoire par subdivision
- * @param char* La mémoire
- * @param char* La clef
- * @return Réussite
- */
- char* get_data_subdiv(subdiv*, char*, char*);
- /**
- * Supprime une donnée de la mémoire
- * @param subdiv* Le gestionnaire de mémoire par subdivision
- * @param char* La mémoire
- * @param char* La clef
- * @return Réussite
- */
- boolean remove_data_subdiv(subdiv*, char*, char*);
- /**
- * Affiche la répartition de la mémoire
- * @param subdiv* Le gestionnaire de mémoire par subdivision
- */
- void show_subdiv(subdiv*);
- /**
- * Affiche toutes les données de la mémoire
- * @param subdiv* Le gestionnaire de mémoire par subdivision
- * @param char* La mémoire
- */
- void show_data_subdiv(subdiv*, char*);
- #endif
|