!-------------------------------------- LICENCE BEGIN ------------------------------------
!Environment Canada - Atmospheric Science and Technology License/Disclaimer,
!                     version 3; Last Modified: May 7, 2008.
!This is free but copyrighted software; you can use/redistribute/modify it under the terms
!of the Environment Canada - Atmospheric Science and Technology License/Disclaimer
!version 3 or (at your option) any later version that should be found at:
!http://collaboration.cmc.ec.gc.ca/science/rpn.comm/license.html
!
!This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
!without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
!See the above mentioned License/Disclaimer for more details.
!You should have received a copy of the License/Disclaimer along with this software;
!if not, you can write to: EC-RPN COMM Group, 2121 TransCanada, suite 500, Dorval (Quebec),
!CANADA, H9P 1J3; or send e-mail to service.rpn@ec.gc.ca
!-------------------------------------- LICENCE END --------------------------------------
!

      SUBROUTINE RESUME(KHANDL,CDTYP,KBUFIN) 3
#if defined (DOC)
*
************************************************************************
*
***s/r        - TO READ "RESUME REPORT" FROM CMC DERIVATE FILES
*               AND SET CONSTANTS DEPENDING ON DATA TYPE.
*
*ARGUMENTS:
*
*     i-      KHANDL  : "HANDLE" OF BURP REPORT
*     .       CDTYP   : DATA TYPE (I.E: UA=UPPER AIR ...)
*     .       KBUFIN  : BUFFER CONTAINING BURP REPORT
*
*     o-      NONE
*
*       AUTHOR: P. KOCLAS(CMC/CMDA TEL. 4665)
*
*Revision:
*     .  P. Koclas  *CMC/CMDA February 94
*     .             -documentation
*     .  P. Koclas  *CMC/CMDA February 95
*                   -allow new types of data and vertical coordinates
*     .  C. Charette-  *ARMA/DRM September 95
*                   -allow bogus type of data (BO)
*     .  P. Koclas  *CMC/CMSV January 97
*                   -SSMI data and vertical coordinate
*     .  S. Pellerin *ARMA/AES Sept 97
*                   - Introduction of type OZ
*     .  C. Charette *ARMA/AES Sept 98
*                   - Change value of vconv de 0.01 to 1.0
*                     Pressure values will be stored in Pascal in the CMA
*     .  P. Koclas  *CMC/CMSV October 98
*     .             -force derialt type for airep family when analysis
*                    is on model levels
*         C. Charette ARMA/AES NOV 1998
*            - Change value of conversion factor vconv for pressure coordinate
*             from 0.01 to 1.0. Consequently units of pressure will be
*             in Pascal in the CMA.  Updates for option cvcord = 'PRESS'
*     .  P. Koclas  *CMC/CMDA June 99
*     .             -modify format for y2k
*     .  J. Halle  *CMC/CMDA December 2000
*     .             -TOVS level 1B data
*     .  JM Belanger *CMDA/SMC* june 2001
*     .             -32 bits conversion.
*     .  C Charette *ARMA/SMC Oct 2001
*     .             - Added >>BGCKALT
*     .  N. Wagneur *MSC/CMC June 2001
*         - Adapt to GOES family ('GO')
*     .  J. St-James *CMDA/SMC July 2003
*         - Add profiler family ('PR')
*     .  JM Belanger *CMDA/SMC* Nov 2003
*     .             -Add QUIKSCAT
*     .  J.M. Aparicio *ARMA/MSC* October 2006
*     .  - Adapt for GPSRO
*     .  S. Macpherson *ARMA/MRD Sep 2009
*         - Added ground-based GPS family ('GP')
*
************************************************************************
#endif
*
      IMPLICIT NONE
#include "comlun.cdk"
#include "cbtypes.cdk"
#include "cvcord.cdk"
#include "partov.cdk"
#include "comtov.cdk"
*
      INTEGER KBUFIN(*)
      INTEGER KHANDL
      CHARACTER *2 CDTYP
      INTEGER  IER,IG,IR
      INTEGER ITIME,IFLGS,IDBURP,ILAT,ILON,IDX,IDY,
     &       IALT,IDELAY,IDATE,IRS,IRUNN,INBLK,ISUP,INSUP,IXAUX,INXAUX
*
      INTEGER  IGALTIN, IRALTIN, IGSFCIN, IRSFCIN
      INTEGER  IGPREVI, IRPREVI, IGANALY, IRANALY
      INTEGER  IGALTOA, IRALTOA, IGSFCOA, IRSFCOA
      INTEGER  IOBSDAT
      INTEGER  IBITTYP,IBITRUN
*
      PARAMETER(IGALTIN=02, IRALTIN=03, IGALTOA=06, IRALTOA=07)
      PARAMETER(IGPREVI=18, IRPREVI=19, IGANALY=14, IRANALY=15)
      PARAMETER(IGSFCIN=04, IRSFCIN=05, IGSFCOA=08, IRSFCOA=09)
      PARAMETER(IOBSDAT=00)
      PARAMETER(IBITRUN=6 , IBITTYP=6 )
*
      INTEGER  MRFGET,MRBHDR
      EXTERNAL MRFGET,MRBHDR
*
      CHARACTER *9 CLSTNID
*
************************************************************************
*      READ THE "RESUME REPORT"
*
*    ... temporary addition...
*      IN THE CASE WHERE NONE IS PRESENT IT IS ASSUMED THAT THE
*      DATA WAS GENERATED BY "PROGRAM GENPROF" OF CMC. (P.KOCLAS A.GUY)
************************************************************************
*
      NVCORDTYP = -1
      INSUP=0
      INXAUX=0
      IER = MRFGET(KHANDL,KBUFIN)
      IER = MRBHDR(KBUFIN,ITIME,IFLGS,CLSTNID,IDBURP,ILAT,ILON,IDX,IDY,
     1       IALT,IDELAY,IDATE,IRS,IRUNN,INBLK,ISUP,INSUP,IXAUX,INXAUX)

      IF ( CLSTNID(1:2) .NE. '>>' ) THEN
         IF ( IFLGS .EQ. 2**19) THEN
            CLSTNID='>>ANALYSE'
         ELSE IF (IFLGS .EQ. 2**20) THEN
            CLSTNID='>>PREVISI'
         ELSE IF ( BTEST(IFLGS,10) ) then
            CLSTNID='>>DONNEES'
         ELSE
            WRITE(NULOUT,*) ' TYPE OF DATA IN BURP FILE IS UNKNOWN'
         ENDIF
      ENDIF
*
      WRITE(NULOUT,*) ' '
      WRITE(NULOUT,*) ' RESUME REPORT '
      WRITE(NULOUT,*) '*********************************************'
      WRITE(NULOUT,*) ' STNID       DATE         TIME       RUNN '
      WRITE(NULOUT,*) '*********************************************'
      WRITE(NULOUT,FMT='(2X,A9,3(3X,I8))' ) CLSTNID,IDATE,ITIME,IRUNN
      WRITE(NULOUT,*) ' '
*
************************************************************************
*     FIND THE APPROPRIATE BKTYP VIA RUNN FOUND VIA THE "RESUME REPORT"
*     OR THE FIRST REPORT FOUND IN THE BURP FILE
************************************************************************
*
      WRITE(NULOUT,*) ' '
      WRITE(NULOUT,*) ' ========================================'
      WRITE(NULOUT,*) ' DESIRED DATA TYPE =',CDTYP
*
      IF( .NOT. BTEST(IRUNN,IBITRUN)) THEN
         IF ( CLSTNID .EQ. '>>DERIALT' ) THEN
            IG=IGALTIN
         ELSE IF ( CLSTNID .EQ. '>>POSTALT') THEN
            IG=IGALTOA
         ELSE IF ( CLSTNID .EQ. '>>BGCKALT') THEN
            IG=IGALTOA
         ELSE IF ( CLSTNID .EQ. '>>ANALYSE') THEN
            IG=IGANALY
         ELSE IF ( CLSTNID .EQ. '>>PREVISI') THEN
            IG=IGPREVI
         ELSE IF ( CLSTNID .EQ. '>>DONNEES') THEN
            IG=IOBSDAT
         ENDIF
*
         NBKTYPA = IBSET(IG,IBITTYP)
         NBKTYPS = IG
         WRITE(NULOUT,*) ' DATA ORIGINATES FROM GLOBAL RUN'
      ELSE
         IF (      CLSTNID .EQ. '>>DERIALT') THEN
            IR=IRALTIN
         ELSE IF ( CLSTNID .EQ. '>>POSTALT') THEN
            IR=IRALTOA
         ELSE IF ( CLSTNID .EQ. '>>BGCKALT') THEN
            IR=IRALTOA
         ELSE IF ( CLSTNID .EQ. '>>ANALYSE') THEN
            IR=IRANALY
         ELSE IF ( CLSTNID .EQ. '>>PREVISI') THEN
            IR=IRPREVI
         ELSE IF ( CLSTNID .EQ. '>>DONNEES') THEN
            IR=IOBSDAT
         ENDIF
*
         NBKTYPA = IBSET(IR,IBITTYP)
         NBKTYPS = IR
         NBKSTP=1
         WRITE(NULOUT,*) ' DATA ORIGINATES FROM REGIONAL RUN'
      ENDIF
      WRITE(NULOUT,*) ' BKTYP ARE: '
      WRITE(NULOUT,*) ' SURFACE BLOCKS ' , NBKTYPS
      WRITE(NULOUT,*) ' ALTITUDE BLOCKS ', NBKTYPA
*
      WRITE(NULOUT,*) '  '
      WRITE(NULOUT,*) ' ------------------------------------ '
      NBKTYPSSMI=  86
      WRITE(NULOUT,*) ' SSMI DATA     BLOCKS ', NBKTYPSSMI
      WRITE(NULOUT,*) ' ------------------------------------ '
c     NBKTYPGPSRO= 66
c     WRITE(NULOUT,*) ' GPS RO DATA   BLOCKS ', NBKTYPGPSRO
      WRITE(NULOUT,*) ' ------------------------------------ '
*
************************************************************************
*      SET THE POSSIBLE VERTICAL COORDINATES FOR EACH FAMILY OF DATA
************************************************************************
*
*
*     UPPER AIR ( TEMP PILOT AND SURFACE ..)
*--------------------------------------------
*
      IF ( CDTYP .EQ. 'UA' ) THEN
         NVCORD=007004
         NVCORDTYP=2
         VCONV=1.0D0
*
*     PROFILER
*--------------------------------------------
*
      ELSE IF ( CDTYP .EQ. 'PR' ) THEN
         NVCORD=007006
         NVCORDTYP=1
         VCONV=1.0D0
*
*     HUMSAT
*--------------------------------------------
*
      ELSE IF ( CDTYP .EQ. 'HU' ) THEN
         NVCORD=007004
         NVCORDTYP=2
         VCONV=1.0D0
*
*     SATEMS
*--------------------------------------------
*
      ELSE IF ( CDTYP .EQ. 'ST' ) THEN
         NVCORD=007004
         NVCORDTYP=2
         VCONV=1.0D0
*
*     SATWIND
*--------------------------------------------
*
      ELSE IF ( CDTYP .EQ. 'SW' ) THEN
         NVCORD=007004
         NVCORDTYP=2
         VCONV=1.0D0
*
*
*     AIREP  ASDAR
*--------------------------------------------
*
      ELSE IF ( CDTYP .EQ. 'AI' ) THEN
        NVCORD=007004
        NVCORDTYP=2
        VCONV=1.0D0
*
*
*     SYNOPS DRIFTERS DRIBUS SHIPS
*--------------------------------------------
*
      ELSE IF ( CDTYP .EQ. 'SF' ) THEN
        NVCORD=007004
        NVCORD=007001
        NVCORDTYP=1
        VCONV=1.0D0
*
*     SCATTEROMETER WINDS
*--------------------------------------------
*
      ELSE IF ( CDTYP .EQ. 'SC' ) THEN

        NVCORD=007001
        NVCORDTYP=1
        VCONV=1.0D0
*
*     TOVS
*--------------------------------------------
*
      ELSE IF ( CDTYP .EQ. 'TO' ) THEN
         IF ( LEVEL1B ) THEN
            NVCORD=002150
         ELSE
            NVCORD=005042
         ENDIF
         VCONV=1.0D0
*
*     GOES
*--------------------------------------------
*
      ELSE IF ( CDTYP .EQ. 'GO' ) THEN
         NVCORD=005042
         VCONV=1.0D0
*
*     GPS RO
*--------------------------------------------
*
      ELSE IF ( CDTYP .EQ. 'RO' ) THEN
         NVCORD=007007
         NVCORDTYP=1
         VCONV=1.0D0
*
*     GPS GB
*--------------------------------------------
*
      ELSE IF ( CDTYP .EQ. 'GP' ) THEN
         NVCORD=007001
         NVCORDTYP=1
         VCONV=1.0D0
*
*     TOTAL OZONE FROM TOVS INFO BLOCK
*--------------------------------------------
*
      ELSE IF ( CDTYP .EQ. 'OZ' ) THEN
         NVCORD=005042
         VCONV=1.0D0
*
*     SSMI
*--------------------------------------------
*
      ELSE IF ( CDTYP .EQ. 'MI' ) THEN
         NVCORD=13208
         VCONV=0.0D0
*
*     ACARS
*--------------------------------------------
*
      ELSE IF ( CDTYP .EQ. 'AC' ) THEN
         NVCORD=007004
         VCONV=1.0D0
         NVCORDTYP=2
*
*     BOGUS
*--------------------------------------------
*
      ELSE IF ( CDTYP .EQ. 'BO' ) THEN
         NVCORD=007004
         VCONV=1.0D0
         NVCORDTYP=2
      ELSE
         WRITE(NULOUT,*) ' DATA TYPE = ',CDTYP,' UNKNOWN'
         RETURN
      ENDIF
      WRITE(NULOUT,*) ' ========================================'
      WRITE(NULOUT,*) ' '
*
************************************************************************
*      SET BKNAT FOR "BLOCS MARQUEURS"
************************************************************************
*
*     MULTI
*------------------------
*            B'0111'
      NBKNAMU = 7
*
*     UNI
*------------------------
*            B'0011'
      NBKNAUN = 3
*
      RETURN
      END