8. Outils de notation du code source#
Ces outils doivent être utilisés par toute personne souhaitant effectuer un développement dans une version de référence du Code_Aster .
Ils sont situés dans le répertoire /aster/astest/vers où vers désigne la version associée et sont également disponibles via l’environnement d’utilisation asterix [D1.02.01 §12].
D’une manière générale tous les outils décrits par la suite renvoient un code d’erreur par l’intermédiaire du code de retour d’un processus UNIX (consultable par $status en C-SHELL et $? en Bourne-SHELL).
Ce code est le suivant:
0 si tout est OK,
2 si un message d’alarme a été émis,
4 si une erreur a été rencontrée.
8.1. asno : notation d’unités#
Noter dans les fichiers de code notée (quirou ou quicat ou quites) des unités de source.
8.1.1. Mode d’appel#
asno mon_fichier[version [ message ]]
mon_fichier désigne un fichier étant soit du type fortran ou CAL ou C ou catalogue ou UNIGEST ou CASTEST.
version est un paramètre qui porte le nom de la version de référence concernée (NEW1, NEW2, NEW3). La valeur prise actuellement par défaut est NEW3.
message désigne un fichier en sortie où seront inscrits les messages d’alarmes et d’erreurs émis par asno. Le nom pris par défaut est: message_asno.
8.1.2. Tâches réalisées#
Trois tâches principales:
A |
Recherche du type du fichier code source FORTRANou CALou C, code source CATALOGUE, UNIGEST, ou CASTESTsur les critères suivants: |
Si le fichier contient une ligne commençant par:
C AJOUT ou C MODIF
le C étant en première colonne, le nombre de blanc entre C et AJOUT ou entre C et MODIF n’étant pas significatif,
alors le fichier sera considéré comme contenant du code FORTRAN
Si le fichier contient une ligne commençant par:
/* AJOUT ou /* MODIF
le /* étant en première colonne, le nombre de blanc entre /* et AJOUT ou entre /* et MODIF n’étant pas significatif,
alors le fichier sera considéré comme contenant du code C
Si le fichier contient une ligne commençant par:
AJOUT ou * MODIF
l’* étant en première colonne, le nombre de blanc entre * et AJOUT ou entre * et MODIF n’étant pas significatif,
alors le fichier sera considéré comme contenant du code CAL
Si le fichier contient une ligne commençant par:
% AJOUT ou % MODIF
le % étant en première colonne, le nombre de blanc entre % et AJOUT ou entre % et MODIF n’étant pas significatif,
alors le fichier sera considéré comme contenant du code CATALOGUE
Si le fichier contient une ligne commençant par:
% TITRE
le % étant en première colonne, le nombre de blanc entre % et TITRE n’étant pas significatif,
et une ligne débutant par:
DEBUT (CODE: (NOM: ‘nom_cas_test’
alors le fichier sera considéré comme contenant du code CASTEST
Si le fichier contient une ligne commençant par:
FORSUPPR, CATSUPPR, TESSUPPR, FORDEPLA, alors, le fichier sera considéré du type UNIGEST.
Si le fichier contient un seul type de source Aster :
la notation peut continuer
Sinon
un message d’erreur est inscrit et FIN.
B |
Recherche du nom des unités de sources et du nom des bibliothèques ou catalogues: |
Dans le cas d’un fichier de type FORTRAN:
Le nom des routines est trouvé selon les normes de déclarations FORTRAN:
PROGRAM nom_unite
SUBROUTINE nom_unite
FUNCTION nom_unite
INTEGER FUNCTION nom_unite
…etc…
Le nom des bibliothèques est trouvé par la ligne INFO.
Dans le cas d’un fichier de type CATALOGUE ou CAL ou C:
Les noms des unités et du catalogue (ou de la bibliothèque) sont trouvés grâce aux lignes INFO:
%& MODIF nom_catalogue DATE jj/mm/aa AUTEUR nom_auteur
ou
%& AJOUT nom_catalogue
Le % étant en colonne 1 & en 2ème colonne et le nombre de blanc n’étant pas significatif. (respectivement avec /* pour le C et * pour le CAL).
Dans le cas d’un fichier de type CASTEST:
Les noms des cas-tests sont trouvés grâce au nom du cas-test dans l’instruction DEBUT(CODE:(NOM:’nom_cas_test’,
Dans le cas d’un fichier du type UNIGEST:
Les noms des éléments d’unité sont trouvés de manière évidente.
C |
Pour chacune des unités à noter: |
Si elle est déjà notée dans un fichier:
Si la première notation de cette unité est le fait du développeur appelant asno:
il n’y a rien a faire.
Sinon:
une alarme est émise.
Le nom des personnes ayant noté cette unité ainsi que les heures et dates de notation sont inscrites dans le fichier message .
Si le développeur appelant asno n’a pas déjà noté cette unité:
l’unité est notée
Sinon:
l’unité de source est notée dans le fichier de code noté avec l’identificateur appelant, l’heure et la date.
8.2. asdeno : dénotation d’unités#
Dénoter des unités de source à partir d’un fichier source.
8.2.1. Mode d’appel#
asdeno mon_fichier[version [ message ]]
mon_fichier désigne un fichier contenant soit du code fortran ou CAL ou C, soit du code catalogue, soit de type UNIGEST ou CASTEST.
version est un paramètre qui porte le nom de la version de référence concernée (NEW1, NEW2, NEW3). La valeur prise actuellement par défaut est NEW3.
message désigne un fichier en sortie où seront inscrits les messages d’alarmes et d’erreurs émis par asdeno. Le nom pris par défaut est: message_asdeno.
8.2.2. Tâches réalisées#
Tâche A identique à asno.
Tâche B identique à asno.
Recherche, dans le fichier de code noté, des unités de source déjà notées par l’identificateur appelant, et suppression des lignes correspondantes.
8.3. xasdeno : dénotation d’unités à partir de leur nom#
Dénoter des unités de source à partir d’un fichier contenant des noms de module et d’un type de module.
8.3.1. Mode d’appel#
xasdeno mon_fichiertype[version [ message ]]
mon_fichier désigne un fichier contenant un nom de module par ligne les noms de module doivent faire référence à des unités du même type.
version est un paramètre qui porte le nom de la version de référence concernée (NEW1, NEW2, NEW3). La valeur prise actuellement par défaut est NEW3.
type : pour désigner le type d’unité à dénoter parmi f (fortran), c, cal(assembleur), cata (catalogue), test (cas-test).
message désigne un fichier en sortie où seront inscrits les messages d’alarmes et d’erreurs émis par xasdeno. Le nom pris par défaut est: message_xasdeno.
8.3.2. Tâches réalisées#
Suppression, dans le fichier de code noté, des unités de source déjà notées par l’identificateur appelant avec la version donnée des modules dont le nom est dans le fichier.
8.4. asdeno_adm : dénotation par l’administrateur#
Possibilité donnée seulement à l’administrateur Aster d’invalider toutes les notations concernant des unités. Les unités ‘dénotées’ auront leur champ version remplacé par la mention ‘RAYE’ et la date de cette dénotation sera rajouté dans les fichiers de notation (pour que les développeurs ayant noté ces unités soient prévenus).
Les unités rayées ne seront ‘visibles’ qu’avec asqui et asquit.
8.4.1. Mode d’appel#
asdeno_adm mon_fichier[version [ message ]]
mon_fichier désigne un fichier contenant soit du code fortran ou CAL ou C, soit du code catalogue, soit du type UNIGEST ou CASTEST.
version est un paramètre qui porte le nom de la version de référence concernée (NEW1, NEW2, NEW3). La valeur prise actuellement par défaut est NEW3.
message désigne un fichier en sortie où seront inscrits les messages d’alarmes et d’erreurs émis par asdeno_adm. Le nom pris par défaut est: message_asdeno_adm.
8.4.2. Tâches réalisées#
Tâche A identique à asno
Tâche B identique à asno
Recherche, dans le fichier de code noté, des unités de source déjà notées, remplacement du champ version par ‘RAYE’ et ajout de la date de dénotation.
8.5. asqui : liste de notation d’unités#
Connaître les développeurs qui ont notés des unités de source.
8.5.1. Mode d’appel#
asqui mon_fichier[ message ]
mon_fichier désigne un fichier contenant soit du code fortran ou CAL ou C, soit du code catalogue, soit du type UNIGEST ou CASTEST.
message désigne un fichier en sortie où seront inscrits les messages d’alarmes et d’erreurs émis par asqui. Le nom pris par défaut est: message_asqui.
8.5.2. Tâches réalisées#
Tâche A identique à asno.
Tâche B identique à asno.
Recherche dans le fichier de code noté si les unités de source sont déjà notés (toutes les versions sont concernées).
Si tel est le cas:
Le nom des unités de source et des personnes ainsi que les heures et dates de notation sont inscrits dans message et FIN.
(tâche identique à la tâche C de asno).
8.6. asquit : liste de toutes les notations#
Connaître toutes les unités de source notés.
8.6.1. Mode d’appel#
asquit [ message ]
message : définition identique à asno. Le nom pris par défaut est: message_asquit.
8.6.2. Tâche réalisée#
Recopie des fichiers de code noté (quirou et quicat et quites) dans le fichier message .