173 SUBROUTINE getgbm(LUGB,LUGI,JF,J,JPDS,JGDS,
174 & MBUF,CBUF,NLEN,NNUM,MNUM,
175 & KF,K,KPDS,KGDS,LB,F,IRET)
176 INTEGER JPDS(200),JGDS(200)
177 INTEGER KPDS(200),KGDS(200)
181 parameter(msk1=256000000,msk2=4000)
182 INTEGER JENS(200),KENS(200)
194 IF(jr.GE.0.AND.(jr.LT.nnum.OR.irgi.EQ.0))
THEN
195 CALL getgb1s(cbuf,nlen,nnum,jr,jpds,jgds,jens,
196 & kr,kpds,kgds,kens,lskip,lgrib,irgs)
197 IF(irgs.EQ.0) k=kr+mnum
198 IF(irgi.EQ.1.AND.irgs.EQ.0) mnum=-1-mnum
199 IF(irgi.EQ.1.AND.irgs.GT.0) mnum=mnum+nnum
213 dowhile(irgi.EQ.1.AND.irgs.EQ.1)
215 CALL getgi(lugi,mnum,mbuf,cbuf,nlen,nnum,irgi)
217 CALL getgir(lugb,msk1,msk2,mnum,mbuf,cbuf,nlen,nnum,irgi)
220 CALL getgb1s(cbuf,nlen,nnum,jr,jpds,jgds,jens,
221 & kr,kpds,kgds,kens,lskip,lgrib,irgs)
222 IF(irgs.EQ.0) k=kr+mnum
223 IF(irgi.EQ.1.AND.irgs.EQ.0) mnum=-1-mnum
224 IF(irgi.EQ.1.AND.irgs.GT.0) mnum=mnum+nnum
231 ELSEIF(irgs.NE.0)
THEN
233 ELSEIF(
lengds(kgds).GT.jf)
THEN
236 CALL getgb1r(lugb,lskip,lgrib,kf,kpds,kgds,kens,lb,f,nbitss
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 getgbm(lugb, lugi, jf, j, jpds, jgds, mbuf, cbuf, nlen, nnum, mnum, kf, k, kpds, kgds, lb, f, iret)
Read a grib index file (or optionally the grib file itself) to get the index buffer (i....
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.