diff --git a/Makefile b/Makefile index 56ba96f..ea96ee8 100644 --- a/Makefile +++ b/Makefile @@ -26,7 +26,6 @@ $(OUT)$(PROG): $(OBJECTS) $(CC) $^ $(CFLAGS) -o $@ # Générer les fichiers objets pour chaque source -$(OUT)common.o: $(SRC)common.c $(INC)common.h $(OUT)buffer.o: $(SRC)buffer.c $(INC)buffer.h $(OUT)compress.o: $(SRC)compress.c $(INC)compress.h $(INC)common.h \ $(INC)display.h diff --git a/inc/common.h b/inc/common.h index b155b16..22736ac 100644 --- a/inc/common.h +++ b/inc/common.h @@ -1,26 +1,3 @@ -#ifndef __IN303_COMMON_H__ -#define __IN303_COMMON_H__ - #define TRUE 1 #define FALSE 0 #define NUM_CHARS 256 - -/** - * Écrire sur la sortie standard à la manière de printf, - * seulement si le mode verbeux est actif - */ -void printVerbose(const char* format, ...); - -/** - * Active ou désactive l'affichage des messages verbeux - * (mode verbeux). Si activé, `printVerbose` écrit sur - * la sortie standard. Sinon, `printVerbose` n'a pas d'effet - */ -void setVerbose(int); - -/** - * Renvoie l'état du mode verbeux - */ -int isVerbose(); - -#endif diff --git a/inc/compress.h b/inc/compress.h index c58fcea..78e89d8 100644 --- a/inc/compress.h +++ b/inc/compress.h @@ -1,7 +1,6 @@ #ifndef __IN303_COMPRESS_H__ #define __IN303_COMPRESS_H__ -#include "huftree.h" #include void compress(FILE* source, FILE* dest); diff --git a/inc/display.h b/inc/display.h index dcbd4bb..0827cb8 100644 --- a/inc/display.h +++ b/inc/display.h @@ -1,9 +1,28 @@ #ifndef __IN303_DISPLAY_H__ #define __IN303_DISPLAY_H__ -#include "huftree.h" #include +typedef struct HufTree HufTree; + +/** + * Écrire sur la sortie standard à la manière de printf, + * seulement si le mode verbeux est actif + */ +void printVerbose(const char* format, ...); + +/** + * Active ou désactive l'affichage des messages verbeux + * (mode verbeux). Si activé, `printVerbose` écrit sur + * la sortie standard. Sinon, `printVerbose` n'a pas d'effet + */ +void setVerbose(int); + +/** + * Renvoie l'état du mode verbeux + */ +int isVerbose(); + /** * Afficher sur la sortie standard l'arbre passé * en paramètre diff --git a/inc/huftree.h b/inc/huftree.h index ca579f3..ff14644 100644 --- a/inc/huftree.h +++ b/inc/huftree.h @@ -2,9 +2,10 @@ #define __IN303_HUFTREE_H__ #include -#include "buffer.h" #include +typedef struct Buffer Buffer; + /** * Représente un des sommets d'un arbre de Huffman */ diff --git a/src/common.c b/src/common.c deleted file mode 100644 index 92e19ab..0000000 --- a/src/common.c +++ /dev/null @@ -1,23 +0,0 @@ -#include "common.h" -#include -#include - -static int is_verbose = FALSE; - -void printVerbose(const char* format, ...) { - if (is_verbose) { - va_list args_list; - - va_start(args_list, format); - vprintf(format, args_list); - va_end(args_list); - } -} - -void setVerbose(int flag) { - is_verbose = flag; -} - -int isVerbose() { - return is_verbose; -} diff --git a/src/display.c b/src/display.c index 3f71249..caf9fb8 100644 --- a/src/display.c +++ b/src/display.c @@ -1,5 +1,7 @@ #include "display.h" #include "common.h" +#include "huftree.h" +#include #include #include #include @@ -22,6 +24,26 @@ static void _printVertex(HufVertex, wchar_t*, int); */ static char _safeChar(char input); +static int is_verbose = FALSE; + +void printVerbose(const char* format, ...) { + if (is_verbose) { + va_list args_list; + + va_start(args_list, format); + vprintf(format, args_list); + va_end(args_list); + } +} + +void setVerbose(int flag) { + is_verbose = flag; +} + +int isVerbose() { + return is_verbose; +} + void printTree(HufTree tree) { // Allocation d'un tampon suffisamment grand pour contenir // les indentations des sommets les plus profonds de l'arbre