*+
*  Name:
*     AST_PAR

*  Purpose:
*     Define the Fortran 77 interface to the AST library.

*  Language:
*     Fortran 77

*  Type of Module:
*     Include file.

*  Description:
*     This file contains definitions which are required by Fortran 77
*     programs which use the AST library.

*  Authors:
*     RFWS: R.F. Warren-Smith (STARLINK)
*     MBT: Mark Taylor (STARLINK)
*     DSB: David S. Berry

*  History:
*     12-NOV-1996 (RFWS):
*        Original version.
*     18-MAR-1998 (RFWS):
*        Added definitions for the IntraMap class.
*     21-DEC-1998 (RFWS):
*        Added resampling definitions for the Mapping class.
*     15-NOV-1999 (RFWS):
*        Added definitions for PcdMap.
*     24-NOV-2000 (MBT):
*        Added AST__BLOCKAVE interpolation scheme.
*     22-JUN-2001 (DSB):
*        Added AST_OFFSET2 and AST_ANGLE to Frame class.
*     6-SEP-2001 (DSB):
*        Added AST_AXDISTANCE and AST_AXOFFSET to Frame class.
*     12-SEP-2001 (DSB):
*        Added AST_BEAR to Frame class.
*     21-SEP-2001 (DSB):
*        Replaced AST_BEAR by AST_AXANGLE.
*     28-JAN-2003 (DSB):
*        Added AST_GETACTIVEUNIT.
*     14-FEB-2003 (DSB):
*        Added new values for WcsMap projections.
*     30-APR-2003 (DSB):
*        Added AST_VERSION.
*-

*  Length of character string returned by a character function.
      INTEGER AST__SZCHR
      PARAMETER ( AST__SZCHR = 200 )

*  Bad coordinate value.
      DOUBLE PRECISION AST__BAD
      PARAMETER ( AST__BAD = -1.79769313486231571D+308 )

*  Error module.
      LOGICAL AST_OK
      INTEGER AST_STATUS

*  Object class.
      EXTERNAL AST_NULL
      INTEGER AST__NULL
      PARAMETER ( AST__NULL = 0 )

      CHARACTER * ( AST__SZCHR ) AST_GETC
      DOUBLE PRECISION AST_GETD
      INTEGER AST_CLONE
      INTEGER AST_COPY
      INTEGER AST_GETI
      INTEGER AST_VERSION
      LOGICAL AST_GETL
      LOGICAL AST_ISAOBJECT
      LOGICAL AST_TEST
      REAL AST_GETR

*  Channel class.
      INTEGER AST_CHANNEL
      INTEGER AST_READ
      INTEGER AST_WRITE
      LOGICAL AST_ISACHANNEL

*  FitsChan class.
      INTEGER AST_FITSCHAN
      LOGICAL AST_FINDFITS
      LOGICAL AST_ISAFITSCHAN

*  Mapping Class.
      INTEGER AST__URESAMP1
      PARAMETER ( AST__URESAMP1 = 1 )
      INTEGER AST__URESAMP2
      PARAMETER ( AST__URESAMP2 = 2 )
      INTEGER AST__URESAMP3
      PARAMETER ( AST__URESAMP3 = 4 )
      INTEGER AST__URESAMP4
      PARAMETER ( AST__URESAMP4 = 8 )
      INTEGER AST__USEVAR
      PARAMETER ( AST__USEVAR = 16 )
      INTEGER AST__USEBAD
      PARAMETER ( AST__USEBAD = 32 )

      INTEGER AST__UKERN1
      PARAMETER ( AST__UKERN1 = 1 )
c  Not yet implemented
c      INTEGER AST__UKERNN
c      PARAMETER ( AST__UKERNN = 2 )
      INTEGER AST__UINTERP
      PARAMETER ( AST__UINTERP = 3 )
      INTEGER AST__NEAREST
      PARAMETER ( AST__NEAREST = 4 )
      INTEGER AST__LINEAR
      PARAMETER ( AST__LINEAR = 5 )
      INTEGER AST__SINC
      PARAMETER ( AST__SINC = 6 )
      INTEGER AST__SINCSINC
      PARAMETER ( AST__SINCSINC = 7 )
      INTEGER AST__SINCCOS
      PARAMETER ( AST__SINCCOS = 8 )
      INTEGER AST__SINCGAUSS
      PARAMETER ( AST__SINCGAUSS = 9 )
      INTEGER AST__BLOCKAVE
      PARAMETER ( AST__BLOCKAVE = 10 )

      INTEGER AST_RESAMPLEB
      INTEGER AST_RESAMPLED
      INTEGER AST_RESAMPLEI
      INTEGER AST_RESAMPLER
      INTEGER AST_RESAMPLES
      INTEGER AST_RESAMPLEUB
      INTEGER AST_RESAMPLEUI
      INTEGER AST_RESAMPLEUS
      INTEGER AST_RESAMPLEUW
      INTEGER AST_RESAMPLEW
      INTEGER AST_SIMPLIFY
      LOGICAL AST_ISAMAPPING

*  CmpMap class.
      INTEGER AST_CMPMAP
      LOGICAL AST_ISACMPMAP

*  Frame class.
      CHARACTER * ( AST__SZCHR ) AST_FORMAT
      DOUBLE PRECISION AST_DISTANCE
      INTEGER AST_CONVERT
      INTEGER AST_FINDFRAME
      INTEGER AST_FRAME
      INTEGER AST_PICKAXES
      INTEGER AST_UNFORMAT
      LOGICAL AST_ISAFRAME
      LOGICAL AST_GETACTIVEUNIT
      DOUBLE PRECISION AST_ANGLE
      DOUBLE PRECISION AST_OFFSET2
      DOUBLE PRECISION AST_AXDISTANCE
      DOUBLE PRECISION AST_AXOFFSET
      DOUBLE PRECISION AST_AXANGLE

*  CmpFrame class.
      INTEGER AST_CMPFRAME
      LOGICAL AST_ISACMPFRAME

*  FrameSet class.
      INTEGER AST__BASE
      PARAMETER ( AST__BASE = 0 )
      INTEGER AST__CURRENT
      PARAMETER ( AST__CURRENT = -1 )
      INTEGER AST__NOFRAME
      PARAMETER ( AST__NOFRAME = -99 )

      INTEGER AST_FRAMESET
      INTEGER AST_GETFRAME
      INTEGER AST_GETMAPPING
      LOGICAL AST_ISAFRAMESET

*  IntraMap class.
      INTEGER AST__NOFWD
      PARAMETER ( AST__NOFWD = 1 )
      INTEGER AST__NOINV
      PARAMETER ( AST__NOINV = 2 )
      INTEGER AST__SIMPFI
      PARAMETER ( AST__SIMPFI = 4 )
      INTEGER AST__SIMPIF
      PARAMETER ( AST__SIMPIF = 8 )
      INTEGER AST__ANY
      PARAMETER ( AST__ANY = -66 )

      INTEGER AST_INTRAMAP
      LOGICAL AST_ISAINTRAMAP

*  LutMap class.
      INTEGER AST_LUTMAP
      LOGICAL AST_ISALUTMAP

*  PcdMap class.
      INTEGER AST_PCDMAP
      LOGICAL AST_ISAPCDMAP

*  Plot class.
      INTEGER AST_PLOT
      LOGICAL AST_BORDER
      LOGICAL AST_ISAPLOT

*  SkyFrame class.
      INTEGER AST_SKYFRAME
      LOGICAL AST_ISASKYFRAME

*  SpecFrame class.
      INTEGER AST_SPECFRAME
      LOGICAL AST_ISASPECFRAME

*  MathMap class.
      INTEGER AST_MATHMAP
      LOGICAL AST_ISAMATHMAP

*  MatrixMap class.
      INTEGER AST_MATRIXMAP
      LOGICAL AST_ISAMATRIXMAP

*  PermMap class.
      INTEGER AST_PERMMAP
      LOGICAL AST_ISAPERMMAP

*  SlaMap class.
      INTEGER AST_SLAMAP
      LOGICAL AST_ISASLAMAP

*  SpecMap class.
      INTEGER AST_SPECMAP
      LOGICAL AST_ISASPECMAP

*  SphMap class.
      INTEGER AST_SPHMAP
      LOGICAL AST_ISASPHMAP

*  UnitMap class.
      INTEGER AST_UNITMAP
      LOGICAL AST_ISAUNITMAP

*  WcsMap class.
      INTEGER AST__AIR
      PARAMETER ( AST__AIR = 9 )
      INTEGER AST__AIT
      PARAMETER ( AST__AIT = 17 )
      INTEGER AST__ARC
      PARAMETER ( AST__ARC = 6 )
      INTEGER AST__AZP
      PARAMETER ( AST__AZP = 1 )
      INTEGER AST__BON
      PARAMETER ( AST__BON = 22 )
      INTEGER AST__CAR
      PARAMETER ( AST__CAR = 12 )
      INTEGER AST__CEA
      PARAMETER ( AST__CEA = 11 )
      INTEGER AST__COD
      PARAMETER ( AST__COD = 20 )
      INTEGER AST__COE
      PARAMETER ( AST__COE = 19 )
      INTEGER AST__COO
      PARAMETER ( AST__COO = 21 )
      INTEGER AST__COP
      PARAMETER ( AST__COP = 18 )
      INTEGER AST__CSC
      PARAMETER ( AST__CSC = 25 )
      INTEGER AST__CYP
      PARAMETER ( AST__CYP = 10 )
      INTEGER AST__GLS
      PARAMETER ( AST__GLS = 28 )
      INTEGER AST__MER
      PARAMETER ( AST__MER = 13 )
      INTEGER AST__MOL
      PARAMETER ( AST__MOL = 16 )
      INTEGER AST__NCP
      PARAMETER ( AST__NCP = 27 )
      INTEGER AST__PAR
      PARAMETER ( AST__PAR = 15 )
      INTEGER AST__PCO
      PARAMETER ( AST__PCO = 23 )
      INTEGER AST__QSC
      PARAMETER ( AST__QSC = 26 )
      INTEGER AST__SFL
      PARAMETER ( AST__SFL = 14 )
      INTEGER AST__SIN
      PARAMETER ( AST__SIN = 5 )
      INTEGER AST__STG
      PARAMETER ( AST__STG = 4 )
      INTEGER AST__SZP
      PARAMETER ( AST__SZP = 2 )
      INTEGER AST__TAN
      PARAMETER ( AST__TAN = 3 )
      INTEGER AST__TPN
      PARAMETER ( AST__TPN = 29 )
      INTEGER AST__TSC
      PARAMETER ( AST__TSC = 24 )
      INTEGER AST__ZEA
      PARAMETER ( AST__ZEA = 8 )
      INTEGER AST__ZPN
      PARAMETER ( AST__ZPN = 7 )
      INTEGER AST__WCSBAD 
      PARAMETER ( AST__WCSBAD = 30 )

      INTEGER AST_WCSMAP
      LOGICAL AST_ISAWCSMAP

*  WinMap class.
      INTEGER AST_WINMAP
      LOGICAL AST_ISAWINMAP

*  ZoomMap class.
      INTEGER AST_ZOOMMAP
      LOGICAL AST_ISAZOOMMAP
