58 SUBROUTINE getg2i(LUGI, CBUF, NLEN, NNUM, IRET)
61 CHARACTER(LEN=1),
POINTER,
DIMENSION(:) :: CBUF
62 INTEGER,
INTENT(IN) :: LUGI
63 INTEGER,
INTENT(OUT) :: NLEN, NNUM, IRET
65 integer :: ios, istat, lbuf, lhead, nskp
71 CALL baread(lugi, 0, 162, lhead, chead)
72 IF (lhead .EQ. 162 .AND. chead(42:47) .EQ.
'GB2IX1')
THEN
73 READ(chead(82:162),
'(8X, 3I10, 2X, A40)', iostat = ios) nskp, nlen, nnum
75 ALLOCATE(cbuf(nlen), stat = istat)
76 IF (istat .NE. 0)
THEN
81 CALL baread(lugi, nskp, nlen, lbuf, cbuf)
82 IF (lbuf .NE. nlen) iret = 3
subroutine getg2i(LUGI, CBUF, NLEN, NNUM, IRET)
Read a GRIB2 index file and return its contents.