Mattéo Delabre
e915bd3080
Renommage name -> value, frequency -> count dans HufTree
...
Initialisation de value à -1 lorsque aucune valeur
2016-11-20 15:57:15 +01:00
Mattéo Delabre
fdbdeb1756
Support du fichier vide
...
Utilisation des effectifs au lieu des fréquences pour éviter
les divisions par 0. Ne pas vider le tampon s'il est déjà vide.
Représentation par un arbre vide si aucun caractère.
2016-11-20 14:33:55 +01:00
Mattéo Delabre
e013dca1bc
Utilisation des int 64 dans la décompression
2016-11-20 01:54:46 +01:00
Mattéo Delabre
deb22164d4
Support de la décompression
2016-11-20 01:49:11 +01:00
Mattéo Delabre
ef8d547f6b
Ajout d'une note pour gérer la fin inattendue du fichier
2016-11-20 01:48:32 +01:00
Mattéo Delabre
b9b9e35115
Utilisation d'entiers 64 pour le stockage de la taille
2016-11-20 01:40:24 +01:00
Mattéo Delabre
16266d3f9a
Commente l'algorithme de compression dans compress.c
2016-11-20 01:30:50 +01:00
Mattéo Delabre
68817286ea
Corrections pour la détection de l'EOF
2016-11-20 01:29:24 +01:00
Mattéo Delabre
7d5599d80a
Le programme n'accepte plus stdin pour entrée
...
(Incompatible avec le fait que l'algo. de Huffman doive
lire l'entrée en deux passes)
2016-11-19 21:41:05 +01:00
Mattéo Delabre
0bddeb367c
Ajouter les statistiques de compression dans compress
2016-11-19 21:40:37 +01:00
Mattéo Delabre
ec235ddea7
MàJ de display pour fonctionner avec le nouveau HufTree
2016-11-19 21:40:02 +01:00
Mattéo Delabre
9576b371ce
Modification du type HufTree et implémentation lecture arbre
...
Utilisation de WriteBuffer et ReadBuffer et le type HufTree
n'est plus une structure mais un typedef vers HufVertex*
2016-11-19 21:38:56 +01:00
Mattéo Delabre
e19860e544
Rajoute le compteur d'écritures dans le WriteBuffer
2016-11-19 21:36:31 +01:00
Mattéo Delabre
fbc2e4730d
Ajout d'un texte "normal" pour tester le taux de compression
2016-11-19 15:55:06 +01:00
Mattéo Delabre
77ac3d3d4c
Ajout du pendant ReadBuffer pour lire bit par bit
2016-11-19 15:53:43 +01:00
Mattéo Delabre
aa63afb9d8
S'assure que les informations de débogage vont dans stderr
2016-11-19 14:58:55 +01:00
Mattéo Delabre
bd0c0afd89
Ajout d'un compteur d'octets écrits dans les tampons
2016-11-19 14:58:05 +01:00
Mattéo Delabre
f8f9ae667e
Ajout des infos de contact & de version
2016-10-28 16:44:23 +02:00
Mattéo Delabre
deb614c5da
Correction des inclusions nettoyées
2016-10-28 16:44:05 +02:00
Mattéo Delabre
05302b0f96
Nettoyage des en-têtes et réorganisation
2016-10-28 16:35:50 +02:00
Mattéo Delabre
f5522c4036
Amélioration de l'interface de la ligne de commande
2016-10-28 16:27:25 +02:00
Mattéo Delabre
69f64a3fc5
Correction d'un bug avec le fichier tous les caractères
...
(Stockage du nom avec un entier au lieu d'un char)
2016-10-27 18:49:41 +02:00
Mattéo Delabre
07b9a19930
Nettoyage des anciens en-têtes
2016-10-27 18:20:57 +02:00
Mattéo Delabre
d647fc5452
Encodage du fichier compressé
2016-10-27 18:20:18 +02:00
Mattéo Delabre
948f73027b
Ajout de la fonction pour sérialiser les arbres
2016-10-27 18:19:44 +02:00
Mattéo Delabre
24f66c415e
Ajout du fichier de test contenant tous les caractères
2016-10-27 15:37:06 +02:00
Mattéo Delabre
e67cccce22
Ajout d'une structure tampon
2016-10-27 15:36:51 +02:00
Mattéo Delabre
f1819526ed
Ignorer le dossier out/
2016-10-27 15:36:29 +02:00
Mattéo Delabre
a4955a4283
Correction des flags dans l'éditeur
2016-10-25 06:53:22 +02:00
Mattéo Delabre
61f65d0aef
Réorganisation du code & du makefile
2016-10-25 06:51:07 +02:00
Mattéo Delabre
7871866a68
Ajout de la configuration de l'éditeur
2016-10-25 06:50:56 +02:00
Mattéo Delabre
457f797334
Ajout d'un script pour générer de gros fichiers
2016-10-22 19:08:39 +02:00
Mattéo Delabre
3aef7806cd
Amélioration de l'affichage verbeux sur +eurs fichiers
2016-10-22 19:01:48 +02:00
Mattéo Delabre
6cea8e8db5
Ajout d'un fichier long & un fichier avec 1 seul type de caract.
...
* Fichier long -> test de consommation mémoire
* Fichier 1 caractère -> algo non-fonctionnel (a besoin d'au
moins 2 sommets)
2016-10-22 14:09:51 +02:00
Mattéo Delabre
c0de61b95a
Correction de la position des étoiles de pointeurs
2016-10-22 10:56:13 +02:00
Mattéo Delabre
f7378d4707
Correction des indentations (tabulations -> espaces)
2016-10-22 10:51:27 +02:00
Mattéo Delabre
16e6a0c5ca
Affiche la longueur moyenne de codage dans le verbeux
2016-10-22 03:58:53 +02:00
Mattéo Delabre
9840b3624f
Affichage d'une erreur si fichier non ouvrable
2016-10-22 03:58:34 +02:00
Mattéo Delabre
e372723d62
Ajout d'un fichier vide dans les fichiers de test
2016-10-22 03:58:18 +02:00
Mattéo Delabre
07babd3027
Utilisation de -V/--verbose pour l'affichage verbeux
2016-10-22 03:02:52 +02:00
Mattéo Delabre
2b3162cd66
Accepte les options via Argp
2016-10-22 02:56:35 +02:00
Mattéo Delabre
c142d06464
Correction warning car oubli d'enlever paramètre printf
2016-10-22 02:56:20 +02:00
Mattéo Delabre
979d9faa6e
Renommage du programme en `huffman`
2016-10-22 02:55:02 +02:00
Mattéo Delabre
5fc433cf56
Restructuration de la sortie verbeuse
2016-10-22 01:09:46 +02:00
Mattéo Delabre
59b20e9321
Ajout de fonctions permettant la gestion de la sortie verbeuse
2016-10-22 01:08:56 +02:00
Mattéo Delabre
b3d7c1a32e
Réorganisation du code en modules
...
* Extraction des fonctions spécifiques à
l'arbre dans huftree.h/.c
* Extraction de la routine de compression
dans compress.h/.c
* Déplacement des fonctions d'affichage dans
display.h/.c
* Isolement des constantes dans common.h
2016-10-21 19:50:04 +02:00
Mattéo Delabre
4b19376b1b
Ajout de fichiers de test supplémentaires
2016-10-21 19:46:59 +02:00
Mattéo Delabre
4f3abde7a6
Ajout gitignore
2016-10-19 09:54:41 +02:00
Mattéo Delabre
1bedf2120e
Double-chaînage de l'arbre
2016-10-12 12:57:57 +02:00
Mattéo Delabre
8ce897ce33
Implantation de l'algorithme de construction de l'arbre
...
Ajout d'un programme principal de test
2016-10-12 12:28:38 +02:00