SURFEX v7.3
General documentation of Surfex
|
00001 C Jan-2011 P. Marguinaud Thread-safe LFI 00002 SUBROUTINE LFIOMF_MT (LFI, KREP, KNUMER, KNIMES ) 00003 USE LFIMOD, ONLY : LFICOM 00004 USE PARKIND1, ONLY : JPRB 00005 USE YOMHOOK , ONLY : LHOOK, DR_HOOK 00006 C**** 00007 C Ce sous-programme permet d'obtenir la valeur courante du niveau 00008 C de messagerie propre aux actions faites via le logiciel LFI, 00009 C sur un fichier particulier ouvert pour ce logiciel. 00010 C 00011 C Noter que si le niveau global de messagerie *LFI%NIMESG* 00012 C vaut 0 ou 2, le niveau propre au fichier est inoperant. 00013 C *LFI%NIMESG* vaut par defaut 1, est reglable via le s/p "LFINMG", 00014 C et sa valeur courante peut etre obtenue par le s/p "LFIOMG". 00015 C** 00016 C ARGUMENTS : KREP (Sortie) ==> Code-REPonse du sous-programme; 00017 C KNUMER (Entree) ==> NUMERo d'unite logique concernee; 00018 C KNIMES (Sortie) ==> NIveau courant de MESsagerie. 00019 C 00020 #ifndef f77 00021 #include "precision.h" 00022 #endif 00023 C 00024 TYPE(LFICOM) :: LFI 00025 INTEGER KREP, KNUMER, KNIMES, IRANG, IREP, INIMES 00026 C 00027 #include "lficom2.h" 00028 #include "lficom_mt.h" 00029 C 00030 REAL(KIND=JPRB) :: ZHOOK_HANDLE 00031 IF (LHOOK) CALL DR_HOOK('LFIOMF_MT',0,ZHOOK_HANDLE) 00032 CALL LFINUM_MT (LFI, KNUMER,IRANG) 00033 C 00034 IF (IRANG.EQ.0) THEN 00035 IREP=-1 00036 ELSE 00037 KNIMES=LFI%NIVMES(IRANG) 00038 LFI%NDEROP(IRANG)=21 00039 IREP=0 00040 ENDIF 00041 C 00042 LLFATA=LLMOER (IREP,IRANG) 00043 KREP=IREP 00044 C 00045 IF (LLFATA.OR.IXNIMS (IRANG).EQ.2) THEN 00046 INIMES=2 00047 ELSE 00048 IF (LHOOK) CALL DR_HOOK('LFIOMF_MT',1,ZHOOK_HANDLE) 00049 RETURN 00050 ENDIF 00051 C 00052 CLNSPR='LFIOMF' 00053 WRITE (UNIT=CLMESS,FMT='(''KREP='',I4,'', KNUMER=' 00054 ',I3, S '', KNIMES='',I3)') KREP,KNUMER,KNIMES 00055 CALL LFIEMS_MT (LFI, KNUMER,INIMES,IREP,LLFATA, 00056 S CLMESS,CLNSPR,CLACTI) 00057 C 00058 IF (LHOOK) CALL DR_HOOK('LFIOMF_MT',1,ZHOOK_HANDLE) 00059 END 00060