SURFEX v7.3
General documentation of Surfex
 All Classes Files Functions Variables Typedefs
/home/dasprezs/EXPORT_v7_3/src/LIB/XRD38/LFI/mt/lfierf_mt.F
Go to the documentation of this file.
00001 C Jan-2011 P. Marguinaud Thread-safe LFI
00002       SUBROUTINE LFIERF_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'ACTIVER OU DE DESACTIVER L'OPTION
00008 C     RENDANT FATALE TOUTE ERREUR DETECTEE SUR UN FICHIER PARTICULIER,
00009 C     OUVERT POUR LE LOGICIEL LFI.
00010 C        CEPENDANT, TANT QUE LE NIVEAU GLOBAL D'ERREUR FATALE *LFI%NERFAG*
00011 C     VAUT 0 OU 2, L'OPTION PROPRE AU FICHIER EST INOPERANTE.
00012 C     *LFI%NERFAG* VAUT PAR DEFAUT 1, ET EST REGLABLE VIA LE S/P "LFINEG".
00013 C**
00014 C     ARGUMENTS : KREP   (SORTIE) ==> CODE-REPONSE DU SOUS-PROGRAMME;
00015 C                 KNUMER (ENTREE) ==> LFI%NUMERO D'UNITE LOGIQUE CONCERNEE;
00016 C                 LDERFA (ENTREE) ==> OPTION D'ERREUR FATALE (VRAI=OUI).
00017 C
00018 #ifndef f77
00019 #include "precision.h"
00020 #endif
00021 C
00022       TYPE(LFICOM) :: LFI
00023       INTEGER KREP, KNUMER, IRANG, IREP, INIMES
00024 C
00025       LOGICAL LDERFA
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('LFIERF_MT',0,ZHOOK_HANDLE)
00032       CALL LFINUM_MT (LFI, KNUMER,IRANG)
00033 C
00034       IF (IRANG.NE.0) THEN
00035         LFI%LERFAT(IRANG)=LDERFA
00036         LFI%NDEROP(IRANG)=4
00037         IREP=0
00038       ELSE
00039         IREP=-1
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('LFIERF_MT',1,ZHOOK_HANDLE)
00049         RETURN
00050       ENDIF
00051 C
00052       CLNSPR='LFIERF'
00053       WRITE (UNIT=CLMESS,FMT='(''KREP='',I4,'', KNUMER='
00054 ',I3,     S       '', LDERFA= '',L1)') KREP,KNUMER,LDERFA
00055       CALL LFIEMS_MT (LFI, KNUMER,INIMES,IREP,LLFATA,
00056      S                CLMESS,CLNSPR,CLACTI)
00057 C
00058       IF (LHOOK) CALL DR_HOOK('LFIERF_MT',1,ZHOOK_HANDLE)
00059       END
00060