Access to data
CHARACTER*80 GENAME COMMON /QUEST/IQUEST(100) * * FATMEN keys. These will be returned by the call to FMOPEN * PARAMETER (LKEYFA=10) DIMENSION KEY(LKEYFA) * * Units for reading the FATMEN catalogue and for * sending updates to the server * LUNRZ = 1 LUNFZ = 2 * * Initialise FATMEN novice interface * CALL FMSTRT(LUNRZ,LUNFZ,'//CERN/OPAL',IRC) * GENAME = '//CERN/OPAL/DDST/PASS3/FYZ1/P18R1929/C01' LG = LENOCC(GENAME) * * Access and open the file. R indicates Read mode * and F instructs FMFILE to issue the appropriate * call to FZFILE for this dataset. * LBANK = 0 CALL FMFILE(11,GENAME(1:LG),'RF',IRC) IF(IRC.NE.0) THEN PRINT *,'Return code ',IRC,' from FMFILE' GOTO 10 ELSE * * Now process the file, reading just the FZ headers * CALL READRZ(11) ENDIF * * Now close this file, issuing FZENDI (option E), * drop staging disk (option D) * CALL FMFEND(11,GENAME(1:LG),'ED',IRC) IF(IRC.NE.0) PRINT *,'Return code ',IRC,' from FMFEND' 1 CONTINUE 10 CONTINUE * END SUBROUTINE READFZ(LUN) COMMON/QUEST/IQUEST(100) CHARACTER*8 DELTIM DIMENSION IUHEAD(400) DIMENSION IOCR(100) PARAMETER (JBIAS=2) NREC = 0 CALL FMRTIM(DELTIM) CALL TIMED(T) 1 CONTINUE NHEAD = 400 IXDIV = 0 CALL FZIN(LUN,IXDIV,LSUP,JBIAS,'S',NHEAD,IUHEAD) IF(IQUEST(1).LT.4) THEN NREC = NREC + 1 GOTO 1 ENDIF PRINT *,'READFZ. end after ',NREC,' records, IQUEST(1) = ', + IQUEST(1) CALL FMRTIM(DELTIM) CALL TIMED(T) PRINT *,'FMFZLP. Elapsed time = ',DELTIM, + ' CP time = ',T,' sec.' END