/** * @file * @brief Interprétation des arguments (options et opérandes) passés * au programme */ #ifndef __HUFFMAN_ARGUMENTS_H_INCLUDED__ #define __HUFFMAN_ARGUMENTS_H_INCLUDED__ #include #include /** * @brief Valeurs des arguments (options et opérandes) passés au programme. */ typedef struct Args { /** * Lance-t-on le programme en mode verbeux ? (informations de débogage) */ int verbose; /** * Compresse-t-on la source ou bien la décompresse-t-on ? */ int compress; /** * Fichier source de l'opération à effectuer */ FILE* source; /** * Fichier de sortie de l'opération effectuée */ FILE* dest; } Args; /** * @brief Interpréter l'argument @p key de valeur @p arg dans * la structure argp d'état @p state * * @param key Clé de l'option, ou clé spéciale pour indiquer une opérande * @param arg Valeur de l'option ou de l'opérande * @param state État actuel de argp */ error_t parseArgument(int key, char* arg, struct argp_state* state); #endif // __HUFFMAN_ARGUMENTS_H_INCLUDED__