The Init method of AliITSreconstruction has to be called by the user. This was done...
[u/mrichter/AliRoot.git] / ISAJET / isatape / bufin.F
CommitLineData
0795afa3 1#include "isajet/pilot.h"
2 SUBROUTINE BUFIN(IL,IFLAG)
3C
4C INVERSE OF BUFOUT.
5C IF CDCPACK IS USED, READ INPUT RECORD INTO ZVOUT AND
6C UNPACK EACH ZVOUT WORD INTO TWO ZEVEL WORDS BY CALL EXPAIR.
7C OTHERWISE, READ ONE INPUT RECORD INTO ZEVEL.
8C
9#include "isajet/itapes.inc"
10#include "isajet/ita.inc"
11#include "isajet/zevel.inc"
12#include "isajet/zvout.inc"
13 DIMENSION W(2),IW(2)
14 EQUIVALENCE(W(1),IW(1))
15 DATA NPARR/0/
16 1 CONTINUE
17#if defined(CERNLIB_CDCPACK)
18C USE CDC BUFFER IN TO READ PACKED RECORD.
19 BUFFER IN(ITB,1) (ZVOUT(1),ZVOUT(512))
20 IF(UNIT(ITB,ZVOUT(1),ZVOUT(512))) 300,200,100
21#endif
22#if defined(CERNLIB_STDIO)
23C STANDARD FORTRAN 77 READ.
24 CALL ZEROL(ZEVEL,MAXLEN)
25 READ(ITB,ERR=100,END=200) IZVL1,IZVL2,(ZEVEL(JJ),JJ=3,IZVL2)
26 GO TO 300
27#endif
28C TAPE READ ERROR
29 100 WRITE(ITLIS,10) ITB
30 NPARR=NPARR+1
31 10 FORMAT(1X,' TAPE READ ERROR ON TAPE',I3)
32 IFLAG=1
33 IF(NPARR.LT.20) GOTO 1
34C END OF FILE
35 200 IFLAG=-1
36 RETURN
37C GOOD RECORD
38 300 IFLAG=0
39#if defined(CERNLIB_CDCPACK)
40C USE CDC ASSEMBLY LANGUAGE ROUTINE EXPAIR TO UNPACK 1 ZVOUT
41C WORDS INTO 2 ZEVEL WORDS.
42 WOUT=ZVOUT(1)
43 CALL EXPAIR(W(1),W(2),WOUT,IFL)
44 IZEVEL(1)=IW(1)
45 IZEVEL(2)=IW(2)
46 IL=IW(2)
47 NW=IL/2+MOD(IL,2)
48 DO 310 I=2,NW
49 WOUT=ZVOUT(I)
50 II=2*I-1
51 CALL EXPAIR(W(1),W(2),WOUT,IFL)
52 CALL MOVLEV(W,IZEVEL(II),2)
53 310 CONTINUE
54#endif
55 IL=3
56 RETURN
57 END