185 & MBUF,CBUF,NLEN,NNUM,MNUM,
186 & KF,K,KPDS,KGDS,KENS,KPROB,XPROB,KCLUST,KMEMBR,
188 INTEGER JPDS(200),JGDS(200),JENS(200)
189 INTEGER KPDS(200),KGDS(200),KENS(200)
190 INTEGER KPROB(2),KCLUST(16),KMEMBR(80)
195 parameter(msk1=32000,msk2=4000)
206 IF(jr.GE.0.AND.(jr.LT.nnum.OR.irgi.EQ.0))
THEN
207 CALL getgb1s(cbuf,nlen,nnum,jr,jpds,jgds,jens,
208 & kr,kpds,kgds,kens,lskip,lgrib,irgs)
209 IF(irgs.EQ.0) k=kr+mnum
210 IF(irgi.EQ.1.AND.irgs.EQ.0) mnum=-1-mnum
211 IF(irgi.EQ.1.AND.irgs.GT.0) mnum=mnum+nnum
225 dowhile(irgi.EQ.1.AND.irgs.EQ.1)
227 CALL getgi(lugi,mnum,mbuf,cbuf,nlen,nnum,irgi)
229 CALL getgir(lugb,msk1,msk2,mnum,mbuf,cbuf,nlen,nnum,irgi)
232 CALL getgb1s(cbuf,nlen,nnum,jr,jpds,jgds,jens,
233 & kr,kpds,kgds,kens,lskip,lgrib,irgs)
234 IF(irgs.EQ.0) k=kr+mnum
235 IF(irgi.EQ.1.AND.irgs.EQ.0) mnum=-1-mnum
236 IF(irgi.EQ.1.AND.irgs.GT.0) mnum=mnum+nnum
243 ELSEIF(irgs.NE.0)
THEN
245 ELSEIF(
lengds(kgds).GT.jf)
THEN
248 CALL getgb1re(lugb,lskip,lgrib,kf,kpds,kgds,kens,
249 & kprob,xprob,kclust,kmembr,lb,f,iret)
subroutine getgb1re(LUGB, LSKIP, LGRIB, KF, KPDS, KGDS, KENS, KPROB, XPROB, KCLUST, KMEMBR, LB, F, IRET)
Reads and unpacks a grib message.
subroutine getgb1s(CBUF, NLEN, NNUM, J, JPDS, JGDS, JENS, K, KPDS, KGDS, KENS, LSKIP, LGRIB, IRET)
Find a grib message.
subroutine getgbexm(LUGB, LUGI, JF, J, JPDS, JGDS, JENS, MBUF, CBUF, NLEN, NNUM, MNUM, KF, K, KPDS, KGDS, KENS, KPROB, XPROB, KCLUST, KMEMBR, 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.
function lengds(KGDS)
Program history log: