update tp-huffman
This commit is contained in:
59
tp-huffman/huffcomp.c
Normal file
59
tp-huffman/huffcomp.c
Normal file
@@ -0,0 +1,59 @@
|
||||
/************************************/
|
||||
/** Codage de Huffman: Compression **/
|
||||
/************************************/
|
||||
|
||||
#include "huffcomp.h"
|
||||
|
||||
/**********************************/
|
||||
/* Fonctions manipulant les codes */
|
||||
/**********************************/
|
||||
|
||||
/* Construction du tableau des codes à partir de l'arbre de Huffman */
|
||||
huffcode **create_huffdict(huffnode *tree) {
|
||||
// À écrire
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/* Suppression du tableau de code */
|
||||
void delete_huffdict(huffcode **dict) {
|
||||
// À écrire
|
||||
}
|
||||
|
||||
/***********************************************/
|
||||
/** Fonction pour la compression d'un fichier **/
|
||||
/***********************************************/
|
||||
|
||||
/* Écriture d'un unsigned int sur 4 octets dans un fichier */
|
||||
void write_size(FILE *output, unsigned int size) {
|
||||
// À écrire
|
||||
}
|
||||
|
||||
/* Insertion d'un code à droite d'un tuyau servant de tampon */
|
||||
void insert_code_in_buffer(dequeue *buffer, huffcode *code) {
|
||||
// À écrire
|
||||
}
|
||||
|
||||
/* Calcule l'octet correspondant aux 8 derniers éléments d'un tuyau servant de
|
||||
* tampon */
|
||||
int buffer_to_byte(dequeue *buffer) {
|
||||
// À écrire
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* Procédure de compression */
|
||||
void compress_file(FILE *in, FILE *out) {
|
||||
/* Phase 1: calcul de la taille de l'arbre et du dictionnaire à partir du
|
||||
* fichier source */
|
||||
|
||||
// À écrire
|
||||
|
||||
/* Phase 2: écriture de la taille du fichier original */
|
||||
|
||||
// À écrire
|
||||
|
||||
/* Phase 3: écriture de l'arbre en représentation préfixe */
|
||||
|
||||
// À écrire
|
||||
|
||||
/* Phase 4: écriture du codage */
|
||||
}
|
||||
Reference in New Issue
Block a user