168 & MBUF,CBUF,NLEN,NNUM,MNUM,
169 & KG,K,KPDS,KGDS,G,IRET)
170 INTEGER JPDS(200),JGDS(200)
171 INTEGER KPDS(200),KGDS(200)
174 parameter(msk1=32000,msk2=4000)
175 INTEGER JENS(200),KENS(200)
187 IF(jr.GE.0.AND.(jr.LT.nnum.OR.irgi.EQ.0))
THEN
188 CALL getgb1s(cbuf,nlen,nnum,jr,jpds,jgds,jens,
189 & kr,kpds,kgds,kens,lskip,lgrib,irgs)
190 IF(irgs.EQ.0) k=kr+mnum
191 IF(irgi.EQ.1.AND.irgs.EQ.0) mnum=-1-mnum
192 IF(irgi.EQ.1.AND.irgs.GT.0) mnum=mnum+nnum
206 dowhile(irgi.EQ.1.AND.irgs.EQ.1)
208 CALL getgi(lugi,mnum,mbuf,cbuf,nlen,nnum,irgi)
210 CALL getgir(lugb,msk1,msk2,mnum,mbuf,cbuf,nlen,nnum,irgi)
213 CALL getgb1s(cbuf,nlen,nnum,jr,jpds,jgds,jens,
214 & kr,kpds,kgds,kens,lskip,lgrib,irgs)
215 IF(irgs.EQ.0) k=kr+mnum
216 IF(irgi.EQ.1.AND.irgs.EQ.0) mnum=-1-mnum
217 IF(irgi.EQ.1.AND.irgs.GT.0) mnum=mnum+nnum
224 ELSEIF(irgs.NE.0)
THEN
226 ELSEIF(lgrib.GT.jg)
THEN
230 CALL baread(lugb,lskip,lgrib,kg,g)
231 IF(kg.EQ.lgrib) iret=0
subroutine getgb1s(CBUF, NLEN, NNUM, J, JPDS, JGDS, JENS, K, KPDS, KGDS, KENS, LSKIP, LGRIB, IRET)
Find a grib message.
subroutine getgbmp(LUGB, LUGI, JG, J, JPDS, JGDS, MBUF, CBUF, NLEN, NNUM, MNUM, KG, K, KPDS, KGDS, G, 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.