*+
*  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.
*     15-JUL-2003 (DSB):
*        Added AST_RATE, POLYMAP, SHIFTMAP and GRISMMAP functions.
*     13-NOV-2003 (DSB):
*        Added XmlChan class.
*     9-NOV-2004 (DSB):
*        Added all initial Region classes.
*     19-NOV-2004 (DSB):
*        Added KeyMap.
*     16-JUN-2005 (DSB):
*        Added TimeMap and TimeFrame.
*     1-SEP-2005 (DSB):
*        Added AST__REBININIT and AST__REBINNORM.
*     17-FEB-2006 (DSB):
*        Added AST_ESCAPES.
*     9-FEB-2007 (DSB):
*        Use a double precision constant to initialise AST__UNDEFF.
*     4-DEC-2008 (TIMJ):
*        Add AST_TESTFITS. Remove AST__UNDEF<X>
*     6-FEB-2009 (DSB):
*        Added StcsChan class.
*     26-OCT-2016 (DSB):
*        Make angle constants double precision.
*-

*  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.797693134862315708D+308 )

*  Double precision NaN flag (this value is not actually a NaN itself).
      DOUBLE PRECISION AST__NAN
      PARAMETER ( AST__NAN = -1.707808478119199833D+308 )

*  Single precision NaN flag (this value is not actually a NaN itself).
      REAL AST__NANR
      PARAMETER ( AST__NANR = -3.23268224D+38 )

*  Error module.
      LOGICAL AST_OK
      INTEGER AST_STATUS

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

      INTEGER AST__TUNULL
      PARAMETER ( AST__TUNULL = -99999 )


      CHARACTER AST__TUNULLC*11
      PARAMETER ( AST__TUNULLC = '<NOTUNEPAR>' )

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

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

*  FitsChan class.
      INTEGER AST_FITSCHAN
      LOGICAL AST_FINDFITS
      LOGICAL AST_ISAFITSCHAN
      LOGICAL AST_GETFITSCF
      LOGICAL AST_GETFITSCI
      LOGICAL AST_GETFITSF
      LOGICAL AST_GETFITSI
      LOGICAL AST_GETFITSL
      LOGICAL AST_GETFITSS
      LOGICAL AST_GETFITSCN
      LOGICAL AST_TESTFITS
      INTEGER AST_GETTABLES

      CHARACTER AST__TABEXTNAME*7
      PARAMETER ( AST__TABEXTNAME = 'WCS-TAB' )

      INTEGER AST__NOTYPE
      PARAMETER ( AST__NOTYPE = -1 )
      INTEGER AST__COMMENT
      PARAMETER ( AST__COMMENT = 0 )
      INTEGER AST__INT
      PARAMETER ( AST__INT = 1 )
      INTEGER AST__FLOAT
      PARAMETER ( AST__FLOAT = 2 )
      INTEGER AST__STRING
      PARAMETER ( AST__STRING = 3 )
      INTEGER AST__COMPLEXF
      PARAMETER ( AST__COMPLEXF = 4 )
      INTEGER AST__COMPLEXI
      PARAMETER ( AST__COMPLEXI = 5 )
      INTEGER AST__LOGICAL
      PARAMETER ( AST__LOGICAL = 6 )
      INTEGER AST__CONTINUE
      PARAMETER ( AST__CONTINUE = 7 )
      INTEGER AST__UNDEF
      PARAMETER ( AST__UNDEF = 8 )


*  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__CONSERVEFLUX
      PARAMETER ( AST__CONSERVEFLUX = 64 )
      INTEGER AST__REBININIT
      PARAMETER ( AST__REBININIT = 128 )
      INTEGER AST__REBINEND
      PARAMETER ( AST__REBINEND = 256 )
      INTEGER AST__GENVAR
      PARAMETER ( AST__GENVAR = 512 )
      INTEGER AST__VARWGT
      PARAMETER ( AST__VARWGT = 1024 )
      INTEGER AST__NOBAD
      PARAMETER ( AST__NOBAD = 2048 )
      INTEGER AST__DISVAR
      PARAMETER ( AST__DISVAR = 4096 )
      INTEGER AST__NONORM
      PARAMETER ( AST__NONORM = 8192 )
      INTEGER AST__PARWGT
      PARAMETER ( AST__PARWGT = 16384 )

      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__GAUSS
      PARAMETER ( AST__GAUSS = 11 )
      INTEGER AST__SOMB
      PARAMETER ( AST__SOMB = 12 )
      INTEGER AST__SOMBCOS
      PARAMETER ( AST__SOMBCOS = 13 )

      INTEGER AST_RESAMPLEB
      INTEGER AST_RESAMPLED
      INTEGER AST_RESAMPLEI
      INTEGER AST_RESAMPLEK
      INTEGER AST_RESAMPLER
      INTEGER AST_RESAMPLES
      INTEGER AST_RESAMPLEUB
      INTEGER AST_RESAMPLEUI
      INTEGER AST_RESAMPLEUK
      INTEGER AST_RESAMPLEUS
      INTEGER AST_RESAMPLEUW
      INTEGER AST_RESAMPLEW
      INTEGER*8 AST_RESAMPLE8B
      INTEGER*8 AST_RESAMPLE8D
      INTEGER*8 AST_RESAMPLE8I
      INTEGER*8 AST_RESAMPLE8K
      INTEGER*8 AST_RESAMPLE8R
      INTEGER*8 AST_RESAMPLE8S
      INTEGER*8 AST_RESAMPLE8UB
      INTEGER*8 AST_RESAMPLE8UI
      INTEGER*8 AST_RESAMPLE8UK
      INTEGER*8 AST_RESAMPLE8US
      INTEGER*8 AST_RESAMPLE8UW
      INTEGER*8 AST_RESAMPLE8W
      INTEGER AST_REMOVEREGIONS
      INTEGER AST_SIMPLIFY
      LOGICAL AST_ISAMAPPING
      LOGICAL AST_LINEARAPPROX
      LOGICAL AST_QUADAPPROX
      DOUBLE PRECISION AST_RATE

*  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
      INTEGER AST_GETGRFCONTEXT
      LOGICAL AST_ISAPLOT
      INTEGER AST_ESCAPES
      CHARACTER * ( AST__SZCHR ) AST_STRIPESCAPES

*  SkyFrame class.
      INTEGER AST_SKYFRAME
      LOGICAL AST_ISASKYFRAME
      INTEGER AST_SKYOFFSETMAP

*  SpecFrame class.
      INTEGER AST_SPECFRAME
      LOGICAL AST_ISASPECFRAME

*  DSBSpecFrame class.
      INTEGER AST_DSBSPECFRAME
      LOGICAL AST_ISADSBSPECFRAME

*  MathMap class.
      INTEGER AST_MATHMAP
      LOGICAL AST_ISAMATHMAP

*  MatrixMap class.
      INTEGER AST_MATRIXMAP
      LOGICAL AST_ISAMATRIXMAP

*  PermMap class.
      INTEGER AST_PERMMAP
      LOGICAL AST_ISAPERMMAP

*  PolyMap class.
      INTEGER AST_POLYMAP
      LOGICAL AST_ISAPOLYMAP
      INTEGER AST_POLYTRAN

*  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__WCSMX
      PARAMETER ( AST__WCSMX = 10 )

      DOUBLE PRECISION AST__DPI
      PARAMETER ( AST__DPI = 3.1415926535897932384626433832795028842D0 )

      DOUBLE PRECISION AST__DPIBY2
      PARAMETER ( AST__DPIBY2 = 1.5707963267948966192313216916397514D0 )

      DOUBLE PRECISION AST__DD2R
      PARAMETER ( AST__DD2R = 0.017453292519943295769236907684886127D0 )

      DOUBLE PRECISION AST__DR2D
      PARAMETER ( AST__DR2D = 57.29577951308232087679815481410517033D0 )

      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__HPX
      PARAMETER ( AST__HPX = 30 )
      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__XPH
      PARAMETER ( AST__XPH = 31 )
      INTEGER AST__ZEA
      PARAMETER ( AST__ZEA = 8 )
      INTEGER AST__ZPN
      PARAMETER ( AST__ZPN = 7 )
      INTEGER AST__WCSBAD
      PARAMETER ( AST__WCSBAD = 32 )

      INTEGER AST_WCSMAP
      LOGICAL AST_ISAWCSMAP

*  ShiftMap class.
      INTEGER AST_SHIFTMAP
      LOGICAL AST_ISASHIFTMAP

*  WinMap class.
      INTEGER AST_WINMAP
      LOGICAL AST_ISAWINMAP

*  ZoomMap class.
      INTEGER AST_ZOOMMAP
      LOGICAL AST_ISAZOOMMAP

*  GrismMap class.
      INTEGER AST_GRISMMAP
      LOGICAL AST_ISAGRISMMAP

*  XmlChan class.
      INTEGER AST_XMLCHAN
      LOGICAL AST_ISAXMLCHAN

*  TranMap class.
      INTEGER AST_TRANMAP
      LOGICAL AST_ISATRANMAP

*  Region class.
      INTEGER AST_REGION
      INTEGER AST_GETUNC
      INTEGER AST_GETREGIONFRAME
      LOGICAL AST_ISAREGION
      INTEGER AST_MAPREGION
      INTEGER AST_OVERLAP
      INTEGER AST_MASKB
      INTEGER AST_MASKD
      INTEGER AST_MASKI
      INTEGER AST_MASKR
      INTEGER AST_MASKS
      INTEGER AST_MASKUB
      INTEGER AST_MASKUI
      INTEGER AST_MASKUS
      INTEGER AST_MASKUW
      INTEGER AST_MASKW
      INTEGER*8 AST_MASK8B
      INTEGER*8 AST_MASK8D
      INTEGER*8 AST_MASK8I
      INTEGER*8 AST_MASK8R
      INTEGER*8 AST_MASK8S
      INTEGER*8 AST_MASK8UB
      INTEGER*8 AST_MASK8UI
      INTEGER*8 AST_MASK8US
      INTEGER*8 AST_MASK8UW
      INTEGER*8 AST_MASK8W
      LOGICAL AST_POINTINREGION

*  Box class.
      INTEGER AST_BOX
      LOGICAL AST_ISABOX

*  PointList class.
      INTEGER AST_POINTLIST
      LOGICAL AST_ISAPOINTLIST

*  Polygon class.
      INTEGER AST_POLYGON
      LOGICAL AST_ISAPOLYGON
      INTEGER AST_DOWNSIZE
      INTEGER AST_OUTLINED
      INTEGER AST_OUTLINER
      INTEGER AST_OUTLINEI
      INTEGER AST_OUTLINEUI
      INTEGER AST_OUTLINES
      INTEGER AST_OUTLINEUS
      INTEGER AST_OUTLINEW
      INTEGER AST_OUTLINEUW
      INTEGER AST_OUTLINEB
      INTEGER AST_OUTLINEUB

      INTEGER AST_OUTLINE8D
      INTEGER AST_OUTLINE8R
      INTEGER AST_OUTLINE8I
      INTEGER AST_OUTLINE8UI
      INTEGER AST_OUTLINE8S
      INTEGER AST_OUTLINE8US
      INTEGER AST_OUTLINE8W
      INTEGER AST_OUTLINE8UW
      INTEGER AST_OUTLINE8B
      INTEGER AST_OUTLINE8UB

      INTEGER AST_CONVEXD
      INTEGER AST_CONVEXR
      INTEGER AST_CONVEXI
      INTEGER AST_CONVEXUI
      INTEGER AST_CONVEXS
      INTEGER AST_CONVEXUS
      INTEGER AST_CONVEXW
      INTEGER AST_CONVEXUW
      INTEGER AST_CONVEXB
      INTEGER AST_CONVEXUB

      INTEGER AST_CONVEX8D
      INTEGER AST_CONVEX8R
      INTEGER AST_CONVEX8I
      INTEGER AST_CONVEX8UI
      INTEGER AST_CONVEX8S
      INTEGER AST_CONVEX8US
      INTEGER AST_CONVEX8W
      INTEGER AST_CONVEX8UW
      INTEGER AST_CONVEX8B
      INTEGER AST_CONVEX8UB

      INTEGER AST__LE
      PARAMETER( AST__LE = 2 )

      INTEGER AST__EQ
      PARAMETER( AST__EQ = 3 )

      INTEGER AST__GE
      PARAMETER( AST__GE = 4 )

      INTEGER AST__GT
      PARAMETER( AST__GT = 5 )

      INTEGER AST__NE
      PARAMETER( AST__NE = 6 )

*  Circle class.
      INTEGER AST_CIRCLE
      LOGICAL AST_ISACIRCLE

*  Ellipse class.
      INTEGER AST_ELLIPSE
      LOGICAL AST_ISAELLIPSE

*  Moc class.
      INTEGER AST_MOC
      LOGICAL AST_ISAMOC
      LOGICAL AST_TESTCELL
      INTEGER AST_GETMOCHEADER

*  MocChan class.
      INTEGER AST_MOCCHAN
      LOGICAL AST_ISAMOCCHAN

*  NullRegion class.
      INTEGER AST_NULLREGION
      LOGICAL AST_ISANULLREGION

*  Interval class.
      INTEGER AST_INTERVAL
      LOGICAL AST_ISAINTERVAL

*  Prism class.
      INTEGER AST_PRISM
      LOGICAL AST_ISAPRISM

*  CmpRegion class.
      INTEGER AST_CMPREGION
      LOGICAL AST_ISACMPREGION

      INTEGER AST__AND
      PARAMETER( AST__AND = 1 )

      INTEGER AST__OR
      PARAMETER( AST__OR = 2 )

      INTEGER AST__XOR
      PARAMETER( AST__XOR = 3 )

*  KeyMap class.
      INTEGER AST_KEYMAP
      LOGICAL AST_ISAKEYMAP
      LOGICAL AST_MAPGET0I
      LOGICAL AST_MAPGET0K
      LOGICAL AST_MAPGET0S
      LOGICAL AST_MAPGET0B
      LOGICAL AST_MAPGET0D
      LOGICAL AST_MAPGET0R
      LOGICAL AST_MAPGET0C
      LOGICAL AST_MAPGET0A
      LOGICAL AST_MAPGET1I
      LOGICAL AST_MAPGET1K
      LOGICAL AST_MAPGET1B
      LOGICAL AST_MAPGET1S
      LOGICAL AST_MAPGET1D
      LOGICAL AST_MAPGET1R
      LOGICAL AST_MAPGET1C
      LOGICAL AST_MAPGET1A
      LOGICAL AST_MAPGETC
      LOGICAL AST_MAPGETELEMI
      LOGICAL AST_MAPGETELEMK
      LOGICAL AST_MAPGETELEMS
      LOGICAL AST_MAPGETELEMB
      LOGICAL AST_MAPGETELEMD
      LOGICAL AST_MAPGETELEMR
      LOGICAL AST_MAPGETELEMC
      LOGICAL AST_MAPGETELEMA
      INTEGER AST_MAPSIZE
      INTEGER AST_MAPLENGTH
      INTEGER AST_MAPLENC
      INTEGER AST_MAPTYPE
      LOGICAL AST_MAPHASKEY
      LOGICAL AST_MAPDEFINED
      CHARACTER * ( AST__SZCHR ) AST_MAPKEY

      INTEGER AST__BADTYPE
      PARAMETER ( AST__BADTYPE = 0)

      INTEGER AST__INTTYPE
      PARAMETER ( AST__INTTYPE = 1)

      INTEGER AST__DOUBLETYPE
      PARAMETER ( AST__DOUBLETYPE = 2)

      INTEGER AST__STRINGTYPE
      PARAMETER ( AST__STRINGTYPE = 3)

      INTEGER AST__OBJECTTYPE
      PARAMETER ( AST__OBJECTTYPE = 4)

      INTEGER AST__FLOATTYPE
      PARAMETER ( AST__FLOATTYPE = 5)

      INTEGER AST__SINTTYPE
      PARAMETER ( AST__SINTTYPE = 7)

      INTEGER AST__UNDEFTYPE
      PARAMETER ( AST__UNDEFTYPE = 8)

      INTEGER AST__BYTETYPE
      PARAMETER ( AST__BYTETYPE = 9)

      INTEGER AST__KINTTYPE
      PARAMETER ( AST__KINTTYPE = 10)

*  FluxFrame class.
      INTEGER AST_FLUXFRAME
      LOGICAL AST_ISAFLUXFRAME

*  SpecFluxFrame class.
      INTEGER AST_SPECFLUXFRAME
      LOGICAL AST_ISASPECFLUXFRAME

*  NormMap class.
      INTEGER AST_NORMMAP
      LOGICAL AST_ISANORMMAP

*  RateMap class.
      INTEGER AST_RATEMAP
      LOGICAL AST_ISARATEMAP

*  TimeFrame class.
      INTEGER AST_TIMEFRAME
      LOGICAL AST_ISATIMEFRAME
      DOUBLE PRECISION AST_CURRENTTIME

      INTEGER AST__MJD
      PARAMETER( AST__MJD    = 1  )

      INTEGER AST__JD
      PARAMETER( AST__JD     = 2  )

      INTEGER AST__JEPOCH
      PARAMETER( AST__JEPOCH = 3  )

      INTEGER AST__BEPOCH
      PARAMETER( AST__BEPOCH = 4  )

      INTEGER AST__BADTS
      PARAMETER( AST__BADTS  = 0  )

      INTEGER AST__TAI
      PARAMETER( AST__TAI    = 1  )

      INTEGER AST__UTC
      PARAMETER( AST__UTC    = 2  )

      INTEGER AST__UT1
      PARAMETER( AST__UT1    = 3  )

      INTEGER AST__GMST
      PARAMETER( AST__GMST   = 4  )

      INTEGER AST__LAST
      PARAMETER( AST__LAST   = 5  )

      INTEGER AST__LMST
      PARAMETER( AST__LMST   = 6  )

      INTEGER AST__TT
      PARAMETER( AST__TT     = 7  )

      INTEGER AST__TDB
      PARAMETER( AST__TDB    = 8  )

      INTEGER AST__TCB
      PARAMETER( AST__TCB    = 9  )

      INTEGER AST__TCG
      PARAMETER( AST__TCG    = 10 )

      INTEGER AST__LT
      PARAMETER( AST__LT     = 11 )

*  TimeMap class.
      INTEGER AST_TIMEMAP
      LOGICAL AST_ISATIMEMAP

*  Stc class.
      LOGICAL AST_ISASTC
      INTEGER AST_GETSTCREGION
      INTEGER AST_GETSTCCOORD
      INTEGER AST_GETSTCNCOORD

      CHARACTER AST__STCNAME*4
      PARAMETER ( AST__STCNAME  = 'Name' )

      CHARACTER AST__STCVALUE*5
      PARAMETER ( AST__STCVALUE = 'Value' )

      CHARACTER AST__STCERROR*5
      PARAMETER ( AST__STCERROR = 'Error' )

      CHARACTER AST__STCRES*10
      PARAMETER ( AST__STCRES   = 'Resolution' )

      CHARACTER AST__STCSIZE*4
      PARAMETER ( AST__STCSIZE  = 'Size' )

      CHARACTER AST__STCPIXSZ*7
      PARAMETER ( AST__STCPIXSZ = 'PixSize' )

*  StcSearchLocation class.
      LOGICAL AST_ISASTCSEARCHLOCATION
      INTEGER AST_STCSEARCHLOCATION

*  StcCatalogEntryLocation class.
      LOGICAL AST_ISASTCCATALOGENTRYLOCATION
      INTEGER AST_STCCATALOGENTRYLOCATION

*  StcResourceProfile class.
      LOGICAL AST_ISASTCRESOURCEPROFILE
      INTEGER AST_STCRESOURCEPROFILE

*  StcObsDataLocation class.
      LOGICAL AST_ISASTCOBSDATALOCATION
      INTEGER AST_STCOBSDATALOCATION

*  SwitchMap class.
      INTEGER AST_SWITCHMAP
      LOGICAL AST_ISASWITCHMAP

*  SelectorMap class.
      INTEGER AST_SELECTORMAP
      LOGICAL AST_ISASELECTORMAP

*  Plot3D class.
      INTEGER AST_PLOT3D
      LOGICAL AST_ISAPLOT3D

*  StcsChan class.
      INTEGER AST_STCSCHAN
      LOGICAL AST_ISASTCSCHAN

*  Table class.
      INTEGER AST_TABLE
      LOGICAL AST_ISATABLE
      LOGICAL AST_HASCOLUMN
      CHARACTER * ( AST__SZCHR ) AST_COLUMNNAME
      LOGICAL AST_HASPARAMETER
      CHARACTER * ( AST__SZCHR ) AST_PARAMETERNAME

*  FitsTable class.
      INTEGER AST_FITSTABLE
      LOGICAL AST_ISAFITSTABLE
      INTEGER AST_COLUMNNULL
      INTEGER AST_COLUMNSIZE
      INTEGER AST_GETTABLEHEADER

*  UnitNormMap class.
      INTEGER AST_UNITNORMMAP
      LOGICAL AST_ISAUNITNORMMAP

*  ChebyMap class.
      INTEGER AST_CHEBYMAP
      LOGICAL AST_ISACHEBYMAP
      INTEGER AST_CHEBYTRAN

*  YamlChan class.
      INTEGER AST_YAMLCHAN
      LOGICAL AST_ISAYAMLCHAN

