+\layout Standard
+
+Si bien no ahondaremos en detalles de implementación que pueden observarse
+ en la documentación generada por doxygen que acompaña este informe, pasamos
+ a presentar la interfaz a través de la cual el usuario podrá utilizar este
+ compresor.
+ Antes, es necesario comentar que el estado del compresor, se mantiene a
+ través de una estructura definida como
+\series bold
+HUFF_STATE
+\series default
+, en la cual se especificarán cosas tales como si el compresor actua sobre
+ archivos o chunks de datos, si es un huffman canonico o standard, archivo
+ a comprimir, archivo destino, etc.
+\layout Paragraph
+
+
+\series medium
+El compresor y/o descompresor Huffman Estático, será inicializado y desinicializ
+ado utilizando las rutinas:
+\layout Itemize
+
+
+\family typewriter
+\noun on
+HUFF_STATE *shuff_init_encoder_byfile(char *inputfile, char *outputfile,
+ long volsize);
+\layout Itemize
+
+
+\family typewriter
+\noun on
+HUFF_STATE *shuff_init_encoder_bychunk(char *outputfile, long volsize);
+\layout Itemize
+
+
+\family typewriter
+\noun on
+HUFF_STATE *shuff_init_decoder(char *inputfile, char *outputfile);
+\layout Itemize
+
+
+\family typewriter
+\noun on
+void shuff_deinit_encoder(HUFF_STATE *shuff);
+\layout Itemize
+
+
+\family typewriter
+\noun on
+void shuff_deinit_decoder(HUFF_STATE *shuff);
+\layout Standard
+
+Para llevar a cabo la compresión efectiva de un archivo o chunks de datos,
+ se cuentan con las siguientes rutinas:
+\layout Itemize
+
+
+\family typewriter
+int shuff_encode_file(HUFF_STATE *shuff);
+\layout Itemize
+
+
+\family typewriter
+int shuff_decode_file(HUFF_STATE *shuff);
+\layout Itemize
+
+
+\family typewriter
+int shuff_scanfreq_chunk(HUFF_STATE *shuff, char* chunk, int chunksize);
+\layout Itemize
+
+
+\family typewriter
+int shuff_decode_chunk(HUFF_STATE *shuff, char *chunk, int chunksize, int
+ *decodedbytes);
+\layout Paragraph
+
+Operación sobre archivos o chunks
+\layout Paragraph
+
+
+\series medium
+Dado que se requería la utilización de este compresor en la etapa final
+ de un BS+MTF, el mismo proporciona funcionalidad para comprimir directamente
+ un archivo especificado, o bien para realizar la compresión de chunks de
+ datos, que en nuestro caso serán las salidas del Move to Front.
+\layout Paragraph
+
+Persistencia del Modelo Estadístico de Orden 0
+\layout Paragraph
+
+
+\series medium
+A fines de poder grabar o cargar un modelo de orden-0 el cual simplemente
+ consiste en una tabla de frecuencias/probabilidades de los 255 symbolos
+ posibles en un archivo, dando lugar al Huffman Canónico que será explicado
+ posteriormente, se cuenta con dos funciones:
+\family typewriter
+shuff_save_model()
+\family default
+, y
+\family typewriter
+shuff_load_model()