36 SUBROUTINE getgb2l(LUGB, CINDEX, GFLD, IRET)
40 INTEGER,
INTENT(IN) :: LUGB
41 CHARACTER(LEN = 1),
INTENT(IN) :: CINDEX(*)
43 INTEGER,
INTENT(OUT) :: IRET
45 INTEGER :: LSKIP, SKIP2
46 CHARACTER(LEN = 1):: CSIZE(4)
47 CHARACTER(LEN = 1),
ALLOCATABLE :: CTEMP(:)
48 integer :: ilen, iofst, iskip, lread, ierr
51 subroutine gf_unpack2(cgrib, lcgrib, iofst, lencsec2, csec2, ierr)
52 character(len = 1),
intent(in) :: cgrib(lcgrib)
53 integer,
intent(in) :: lcgrib
54 integer,
intent(inout) :: iofst
55 integer,
intent(out) :: lencsec2
56 integer,
intent(out) :: ierr
57 character(len = 1),
pointer,
dimension(:) :: csec2
64 CALL g2_gbytec(cindex, lskip, 4 * 8, 4 * 8)
65 CALL g2_gbytec(cindex, skip2, 8 * 8, 4 * 8)
68 IF (skip2 .NE. 0)
THEN
72 CALL baread(lugb, iskip, 4, lread, csize)
77 CALL baread(lugb, iskip, ilen, lread, ctemp)
78 IF (ilen .NE. lread)
THEN
84 CALL gf_unpack2(ctemp, ilen, iofst, gfld%locallen, gfld%local, ierr)
subroutine g2_gbytec(in, iout, iskip, nbits)
Extract arbitrary size values from a packed bit string, right justifying each value in the unpacked a...
subroutine getgb2l(LUGB, CINDEX, GFLD, IRET)
This subroutine reads and unpacks a local use section from a GRIB2 message.
subroutine gf_unpack2(cgrib, lcgrib, iofst, lencsec2, csec2, ierr)
Unpack Section 2 (Local Use Section) of a GRIB2 message.
This Fortran module contains the declaration of derived type gribfield.