]> SALOME platform Git repositories - modules/homard.git/blob - src/tool/Utilitaire/utfino.F
Salome HOME
Homard executable
[modules/homard.git] / src / tool / Utilitaire / utfino.F
1       subroutine utfino ( mctyob, option, nomfic, lnomfi,
2      >                    optimp,
3      >                    ulsort, langue, codret )
4 c
5 c ______________________________________________________________________
6 c
7 c                             H O M A R D
8 c
9 c Outil de Maillage Adaptatif par Raffinement et Deraffinement d'EDF R&D
10 c
11 c Version originale enregistree le 18 juin 1996 sous le numero 96036
12 c aupres des huissiers de justice Simart et Lavoir a Clamart
13 c Version 11.2 enregistree le 13 fevrier 2015 sous le numero 2015/014
14 c aupres des huissiers de justice
15 c Lavoir, Silinski & Cherqui-Abrahmi a Clamart
16 c
17 c    HOMARD est une marque deposee d'Electricite de France
18 c
19 c Copyright EDF 1996
20 c Copyright EDF 1998
21 c Copyright EDF 2002
22 c Copyright EDF 2020
23 c ______________________________________________________________________
24 c
25 c  but : renvoyer le nom unix complet correspondant a un fichier
26 c        de nom symbolique donne
27 c  remarque : si la variable nomfic est trop grande, elle est completee
28 c             par des blancs
29 c  remarque : utfino et utfin2 sont des clones
30 c ______________________________________________________________________
31 c .        .     .        .                                            .
32 c .  nom   . e/s . taille .           description                      .
33 c .____________________________________________________________________.
34 c . mctyob . e   .  ch8   . nom symbolique du type de fichier          .
35 c . option . e   .   1    . 0 : le nom est renvoye tel quel            .
36 c .        .     .        . 1 : les minuscules deviennent majuscules   .
37 c .        .     .        . 2 : les majuscules deviennent minuscules   .
38 c .        .     .        . si negatif, on interdit tout caractere     .
39 c .        .     .        . non alphabetique                           .
40 c . nomfic .  s  .  ch*   . nom unix du fichier associe                .
41 c . lnomfi .  s  .    1   . longueur du nom unix du fichier associe    .
42 c . optimp . e   .    1   . 0 : pas d'affichage de message             .
43 c .        .     .        . 1 : affichage de message d'erreur          .
44 c . ulsort . e   .    1   . unite logique d'impression                 .
45 c . langue . e   .    1   . langue des messages                        .
46 c .        .     .        . 1 : francais, 2 : anglais                  .
47 c . codret .  s  .    1   . code de retour                             .
48 c .        .     .        . 0 : pas de probleme                        .
49 c .        .     .        . 1 : la configuration est perdue            .
50 c .        .     .        . 2 : pas de nom dans la base                .
51 c .        .     .        . 4 : la chaine prevue est trop courte       .
52 c ______________________________________________________________________
53 c
54 c====
55 c 0. declarations et dimensionnement
56 c====
57 c
58 c 0.1. ==> generalites
59 c
60       implicit none
61       save
62 c
63       character*6 nompro
64       parameter ( nompro = 'UTFINO' )
65 c
66 #include "nblang.h"
67 c
68 c 0.2. ==> communs
69 c
70 c 0.3. ==> arguments
71 c
72       character*8 mctyob
73       character*(*) nomfic
74       integer optimp
75 c
76       integer option, lnomfi
77       integer ulsort, langue, codret
78 c
79 c 0.4. ==> variables locales
80 c
81       integer iaux
82       integer numero, nombre, ulmess
83 c
84       integer nbmess
85       parameter ( nbmess = 10 )
86       character*80 texte(nblang,nbmess)
87 c
88 #include "motcle.h"
89 c
90 c 0.5. ==> initialisations
91 c ______________________________________________________________________
92 c
93 c====
94 c 1.  messages
95 c     si on recherche le fichier de la liste standard, il faut
96 c     imprimer sur la sortie standard.
97 c====
98 c
99 #include "impr01.h"
100 c
101 #ifdef _DEBUG_HOMARD_
102       write (ulsort,texte(langue,1)) 'Entree', nompro
103       call dmflsh (iaux)
104 #endif
105 c
106       texte(1,10) = '(1x,''La configuration est perdue.'')'
107       texte(1,4) =
108      > '(1x,''Objet '',a8,'' : '',i4,'' fichiers possibles.'')'
109 c
110       texte(2,10) = '(1x,''The configuration is lost.'')'
111       texte(2,4) =
112      > '(1x,''Object '',a8,'' : '',i4,'' available files.'')'
113 c
114       if ( mctyob.eq.mclist ) then
115         call gusost ( ulmess )
116       else
117         ulmess = ulsort
118       endif
119 c
120 c====
121 c 2. appel de l'utilitaire : on n'est interesse que par le premier
122 c    fichier ou le mot-cle apparait
123 c    code retour : 0 : pas de probleme
124 c                  1 : la configuration est perdue
125 c                  2 : pas de nom dans la base
126 c                  3 : mauvais numero
127 c                  4 : la chaine nomfic est trop courte
128 c====
129 c
130       numero = 1
131 c
132       call utfin1 ( mctyob, numero,
133      >              nombre, nomfic, lnomfi,
134      >              ulmess, langue, codret )
135 c
136       if ( codret.eq.3 ) then
137         codret = 2
138       endif
139 c
140       if ( codret.ne.0 ) then
141 c
142 #ifdef _DEBUG_HOMARD_
143         write (ulsort,texte(langue,1)) 'Sortie', nompro
144 #else
145         if ( optimp.gt.0 ) then
146 #endif
147         write (ulsort,texte(langue,2)) codret
148         if ( codret.eq.1 ) then
149           write (ulmess,texte(langue,10))
150         else
151           call utosme ( mctyob, ulsort, langue )
152           write (ulmess,texte(langue,4)) mctyob, nombre
153         endif
154 #ifdef _DEBUG_HOMARD_
155 c
156 #else
157         endif
158 #endif
159 c
160       endif
161 c
162 c====
163 c 3. conversion eventuelle
164 c====
165 c
166       if ( codret.eq.0 ) then
167 c
168       if ( option.ne.0 ) then
169 c
170         call utmnmj ( option, nomfic, iaux,
171      >                ulmess, langue, codret )
172 c
173       endif
174 c
175       endif
176 c
177       end