User Intro
Prog Intro
Liste des programmes
Liste des manuels
Table of Contents
iusage - impression d'un message d'information pour une commande
subroutine iusage(cmd,detail)
integer cmd(1), detail(1)
iusage_(cmd,detail)
char *cmd, detail;
iusage
imprime, sur stderr, un message supposé correspondre
à un mode d'emploi simplifié, puis
termine le programme avec exit(100).
Cette information comprend :
- éventuellement un message indiquant les options non reconnues.
Ce message est préparé par les programmes de test d'options
(gtstopts, tstopts, ...).
- une ligne contenant le nom de la commande, éventuellement son numéro
de version (si la variable globale inr_progvers, de type char *
n'est pas nulle, elle doit contenir un pointeur vers le message correspondant),
enfin le numéro de la version Inrimage;
- la chaine de caractères contenue dans cmd
en la faisant précéder de "Usage :" et du nom de la commande (donné
par xargv[0]);
- enfin, si le pointeur est non nul, le message detail en lui rajoutant aussi un
Newline.
En pratique cmd doit donner la liste des arguments de la commande
et detail des informations complémentaires, éventuellement sur
plusieurs lignes.
Si cmd est un pointeur nul, on imprime, s'ils existent
les messages qui ont été passés en argument à inr_init.
Le programme se termine en erreur fatale si le mécanisme de traitement
des options n'a pas été initialisé (il faut avoir appelé
la fonction inr_init par exemple).
Voici par exemple l'utilisation de ce programme faite par la commade
cco :
static char Ucmd[]=
"[image-in] [image-out] [-I] [options-de-codage] [-F=file_type] [-hdr=nn]";
static char Udetail[]=
"\tconvertit 'image-in' dans le codage de 'image-out'\n
\tSi 'image-out' n'existe pas, le codage est pris dans 'options-de-codagé\n
\tou lu sur stdin si '-I'";
.........
iusage_(Ucmd,Udetail);