SURFEX v7.3
General documentation of Surfex
 All Classes Files Functions Variables Typedefs
/home/dasprezs/EXPORT_v7_3/src/LIB/XRD38/LFI/mt/lfioef_mt.F
Go to the documentation of this file.
00001 C Jan-2011 P. Marguinaud Thread-safe LFI
00002       SUBROUTINE LFIOEF_MT (LFI, KREP, KNUMER, LDERFA )
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 l'option courante
00008 C     de traitement des ERREURS detectees par le logiciel LFI,
00009 C     pour un fichier particulier ouvert pour ce logiciel.
00010 C
00011 C        Noter que si le niveau global d'erreur fatale *LFI%NERFAG*
00012 C     vaut 0 ou 2, l'option propre au fichier est inoperante.
00013 C     *LFI%NERFAG* vaut par defaut 1, est reglable via le s/p "LFINEG",
00014 C     et sa valeur peut etre obtenue par le s/p "LFIOEG".
00015 C**
00016 C     ARGUMENTS : KREP   (Sortie) ==> Code-REPonse du sous-programme;
00017 C                 KNUMER (Entree) ==> NUMERo d'unite logique concernee;
00018 C                 LDERFA (Sortie) ==> Option d'ERreur FAtale (vrai=oui).
00019 C
00020 #ifndef f77
00021 #include "precision.h"
00022 #endif
00023 C
00024       TYPE(LFICOM) :: LFI
00025       INTEGER KREP, KNUMER, IRANG, IREP, INIMES
00026 C
00027       LOGICAL LDERFA
00028 C
00029 #include "lficom2.h"
00030 #include "lficom_mt.h"
00031 C
00032       REAL(KIND=JPRB) :: ZHOOK_HANDLE
00033       IF (LHOOK) CALL DR_HOOK('LFIOEF_MT',0,ZHOOK_HANDLE)
00034       CALL LFINUM_MT (LFI, KNUMER,IRANG)
00035 C
00036       IF (IRANG.EQ.0) THEN
00037         IREP=-1
00038       ELSE
00039         LDERFA=LFI%LERFAT(IRANG)
00040         LFI%NDEROP(IRANG)=19
00041         IREP=0
00042       ENDIF
00043 C
00044       LLFATA=LLMOER (IREP,IRANG)
00045       KREP=IREP
00046 C
00047       IF (LLFATA.OR.IXNIMS (IRANG).EQ.2) THEN
00048         INIMES=2
00049       ELSE
00050         IF (LHOOK) CALL DR_HOOK('LFIOEF_MT',1,ZHOOK_HANDLE)
00051         RETURN
00052       ENDIF
00053 C
00054       CLNSPR='LFIOEF'
00055       WRITE (UNIT=CLMESS,FMT='(''KREP='',I4,'', KNUMER='
00056 ',I3,     S       '', LDERFA= '',L1)') KREP,KNUMER,LDERFA
00057       CALL LFIEMS_MT (LFI, KNUMER,INIMES,IREP,LLFATA,
00058      S                CLMESS,CLNSPR,CLACTI)
00059 C
00060       IF (LHOOK) CALL DR_HOOK('LFIOEF_MT',1,ZHOOK_HANDLE)
00061       END
00062