SUBROUTINE DB_DS4Q ( dburpt, ipt, iret ) C************************************************************************ C* DB_DS4Q * C* * C* This subroutine decodes the drifting buoy section 4 group * C* 1Q(P)Q(2)Q(TW)Q(4), which contains quality control data. * C* * C* DB_DS4Q ( DBURPT, IPT, IRET ) * C* * C* Input parameters: * C* DBURPT CHAR* Report array * C* * C* Input and Output parameters: * C* IPT INTEGER On input, points to first Q in * C* group; on output, to last Q * C* * C* Output parameters passed via common: * C* RIVALS(IRQOPM) REAL Quality of pressure measurement * C* RIVALS(IRQCBH) REAL Quality of ARGOS housekeepg parm* C* RIVALS(IRQWTM) REAL Quality of water sfc temperature* C* RIVALS(IRQATM) REAL Quality of air temperature * C* group; on output, to last Q * C* Output parameters: * C* IRET INTEGER Return code * C* 0 = Normal return * C* 1 = Problems * C** * C* Log: * C* R. Hollern/NCEP 12/99 * C* C. Caruso Magee/NCEP 03/2000 Fixed docblock comments. * C************************************************************************ INCLUDE 'GEMPRM.PRM' INCLUDE 'dbcmn.cmn' C* CHARACTER*(*) dburpt C* CHARACTER fld1*1 C------------------------------------------------------------------------ iret = 0 C C* Get the quality of the pressure measurement. C IF ( dburpt (ipt:ipt) .ne. '/' ) THEN fld1 = dburpt (ipt:ipt) CALL ST_INTG ( fld1, ival, ier ) IF ( ier .eq. 0 ) rivals ( irqopm ) = FLOAT ( ival ) END IF C ipt = ipt + 1 C C* Get the quality of the ARGOS housekeeping parameter. C IF ( dburpt (ipt:ipt) .ne. '/' ) THEN fld1 = dburpt (ipt:ipt) CALL ST_INTG ( fld1, ival, ier ) IF ( ier .eq. 0 ) rivals ( irqcbh ) = FLOAT ( ival ) END IF C ipt = ipt + 1 C C* Get the quality of the water surface temperature. C IF ( dburpt (ipt:ipt) .ne. '/' ) THEN fld1 = dburpt (ipt:ipt) CALL ST_INTG ( fld1, ival, ier ) IF ( ier .eq. 0 ) rivals ( irqwtm ) = FLOAT ( ival ) END IF C ipt = ipt + 1 C C* Get the quality of the air temperature. C IF ( dburpt (ipt:ipt) .ne. '/' ) THEN fld1 = dburpt (ipt:ipt) CALL ST_INTG ( fld1, ival, ier ) IF ( ier .eq. 0 ) rivals ( irqatm ) = FLOAT ( ival ) END IF C* RETURN END