180 SUBROUTINE getgbem(LUGB,LUGI,JF,J,JPDS,JGDS,JENS,
181 & MBUF,CBUF,NLEN,NNUM,MNUM,
182 & KF,K,KPDS,KGDS,KENS,LB,F,IRET)
183 INTEGER JPDS(200),JGDS(200),JENS(200)
184 INTEGER KPDS(200),KGDS(200),KENS(200)
188 parameter(msk1=32000,msk2=4000)
199 IF(jr.GE.0.AND.(jr.LT.nnum.OR.irgi.EQ.0))
THEN
200 CALL getgb1s(cbuf,nlen,nnum,jr,jpds,jgds,jens,
201 & kr,kpds,kgds,kens,lskip,lgrib,irgs)
202 IF(irgs.EQ.0) k=kr+mnum
203 IF(irgi.EQ.1.AND.irgs.EQ.0) mnum=-1-mnum
204 IF(irgi.EQ.1.AND.irgs.GT.0) mnum=mnum+nnum
218 dowhile(irgi.EQ.1.AND.irgs.EQ.1)
220 CALL getgi(lugi,mnum,mbuf,cbuf,nlen,nnum,irgi)
222 CALL getgir(lugb,msk1,msk2,mnum,mbuf,cbuf,nlen,nnum,irgi)
225 CALL getgb1s(cbuf,nlen,nnum,jr,jpds,jgds,jens,
226 & kr,kpds,kgds,kens,lskip,lgrib,irgs)
227 IF(irgs.EQ.0) k=kr+mnum
228 IF(irgi.EQ.1.AND.irgs.EQ.0) mnum=-1-mnum
229 IF(irgi.EQ.1.AND.irgs.GT.0) mnum=mnum+nnum
236 ELSEIF(irgs.NE.0)
THEN
238 ELSEIF(
lengds(kgds).GT.jf)
THEN
241 CALL getgb1r(lugb,lskip,lgrib,kf,kpds,kgds,kens,lb,f,nbits,
subroutine getgb1r(lugb, lskip, lgrib, kf, kpds, kgds, kens, lb, f, nbitss, iret)
Program history log:
subroutine getgb1s(cbuf, nlen, nnum, j, jpds, jgds, jens, k, kpds, kgds, kens, lskip, lgrib, iret)
Find a grib message.
subroutine getgbem(lugb, lugi, jf, j, jpds, jgds, jens, mbuf, cbuf, nlen, nnum, mnum, kf, k, kpds, kgds, kens, lb, f, iret)
Find and unpack a grib message.
subroutine getgi(lugi, mnum, mbuf, cbuf, nlen, nnum, iret)
Read a grib index file and return its contents.
subroutine getgir(lugb, msk1, msk2, mnum, mbuf, cbuf, nlen, nnum, iret)
Read a grib file and return its index contents.