SURFEX v7.3
General documentation of Surfex
|
00001 C Jan-2011 P. Marguinaud Thread-safe LFI 00002 SUBROUTINE LFINMG_MT (LFI, KNIVAU ) 00003 USE LFIMOD, ONLY : LFICOM 00004 USE PARKIND1, ONLY : JPRB 00005 USE YOMHOOK , ONLY : LHOOK, DR_HOOK 00006 C**** 00007 C CE SOUS-PROGRAMME SE CHARGE DE METTRE LE NIVEAU GLOBAL 00008 C D'IMPRESSION DES MESSAGES (*LFI%NIMESG*) A LA VALEUR KNIVAU . 00009 C** 00010 C ARGUMENT : KNIVAU (ENTREE) ==> NIVEAU GLOBAL D'IMPRESSION 00011 C DES MESSAGES . 00012 C VALEURS POSSIBLES 00013 C 00014 C 0 : N'EMETTRE QUE LES MESSAGES D'ERREURS REELLEMENT IMPORTANTS . 00015 C 1 : N'EMETTRE QU'UN MINIMUM DE MESSAGES "GLOBAUX", ET LES MESSAGES 00016 C LIES A UN FICHIER OUVERT QUI SONT DE NIVEAU AU PLUS EGAL AU 00017 C NIVEAU DE LA MESSAGERIE POUR CE FICHIER (MODE PAR DEFAUT) . 00018 C 2 : EMETTRE TOUS LES MESSAGES POSSIBLES, MEME S'ILS NE CORRESPON- 00019 C DENT PAS A UN FICHIER OUVERT AVEC LE NIVEAU DE MESSAGERIE 2 . 00020 C 00021 #ifndef f77 00022 #include "precision.h" 00023 #endif 00024 C 00025 TYPE(LFICOM) :: LFI 00026 INTEGER KNIVAU, INIMES, IREP, INUMER 00027 #include "lficom_mt.h" 00028 C 00029 REAL(KIND=JPRB) :: ZHOOK_HANDLE 00030 IF (LHOOK) CALL DR_HOOK('LFINMG_MT',0,ZHOOK_HANDLE) 00031 IF (LFI%LFINMG_LLPREA) THEN 00032 CALL LFIINI_MT (LFI, 2) 00033 LFI%LFINMG_LLPREA=.FALSE. 00034 ENDIF 00035 C 00036 IF (KNIVAU.GE.0.AND.KNIVAU.LE.2) THEN 00037 INIMES=MAX0 (LFI%NIMESG,KNIVAU) 00038 LFI%NIMESG=KNIVAU 00039 IREP=0 00040 ELSE 00041 INIMES=LFI%NIMESG 00042 IREP=-2 00043 ENDIF 00044 C 00045 LLFATA=IREP.NE.0.AND.LFI%NERFAG.NE.2 00046 C 00047 IF (LLFATA) THEN 00048 INIMES=2 00049 ELSEIF (IREP.NE.0) THEN 00050 INIMES=0 00051 ELSEIF (INIMES.EQ.2) THEN 00052 INIMES=2 00053 ELSE 00054 IF (LHOOK) CALL DR_HOOK('LFINMG_MT',1,ZHOOK_HANDLE) 00055 RETURN 00056 ENDIF 00057 C 00058 INUMER=LFI%JPNIL 00059 CLNSPR='LFINMG' 00060 C 00061 IF (MAX0 (INIMES,LFI%NIMESG).EQ.2) THEN 00062 C 00063 IF (LFI%LFRANC) THEN 00064 WRITE (UNIT=CLMESS, 00065 S FMT='(''KNIVAU='',I5,'', CODE INTERNE=' 00066 ', S I4)') KNIVAU,IREP 00067 ELSE 00068 WRITE (UNIT=CLMESS, 00069 S FMT='(''KNIVAU='',I5,'', INTERNAL CODE=' 00070 ', S I4)') KNIVAU,IREP 00071 ENDIF 00072 C 00073 IF (INIMES.NE.2) CALL LFIEMS_MT (LFI, INUMER,LFI%NIMESG,IREP, 00074 S .FALSE.,CLMESS, 00075 S CLNSPR,CLACTI) 00076 ENDIF 00077 C 00078 CALL LFIEMS_MT (LFI, INUMER,INIMES,IREP,LLFATA, 00079 S CLMESS,CLNSPR,CLACTI) 00080 C 00081 IF (LHOOK) CALL DR_HOOK('LFINMG_MT',1,ZHOOK_HANDLE) 00082 END 00083