/*                                             -*- c-file-style: "Ellemtel" -*-

`gpc_telescope.h' - Pan-STARRS TCS FITS header keywords

This file is part of version 0 of the FITS Keyword Registry.
Read the `License' file for terms of use and distribution.
Copyright 2004, Pan-STARRS, isani@ifa.hawaii.edu.

___This header automatically generated from `Index'. Do not edit it here!___ */

#include "macros.h"

/*
 * Description of columns:
 *
 *      TYPE - MK_BLN, MK_STR, MK_INT, MK_FLT, MK_PFL selects a type for the
 *             keyword (True/False, 'String  ', integer, or floating point.)
 *             Any keyword can still be set to any type with fh_setval_*(),
 *             which takes a pre-formatted character string for the card.
 *
 *      IDX  - Index sorting number, which eventually determines the final
 *             order of keywords in the FITS header.  These are floating point
 *             values so new keywords can always be inserted in between
 *             without shifting all the values.
 *
 *   KEYWORD - The name of the keyword.  Macros will be generated of the form
 *             fh_get_KEYWORD(), fh_set_KEYWORD(), and fh_setval_KEYWORD().
 *
 *      PRC  - For MK_FLT(), this specifies the (scientific) precision,
 *             or number of significant digits in the value.  If necessary,
 *             scientific notation will be used to format the value (see
 *             rules for printf "%.*G").
 *             For MK_PFL(), this specifies mathematical precision, or number
 *             of decimal places in the formatted value (see the rules for
 *             printf "%.*f").
 *
 *             Use MK_PFL() (make "precise float") if that value is always
 *             precise to an exact number digits after the decimal point.
 *             Use MK_FLT() if the value might require scientific notation.
 *             All results are FITS-standard legal.
 *
 *   COMMENT - String to be included after the / in the FITS card, if
 *             there is room within the 80 columns (it may get truncated.)
 *             Note that in the text below, 80 columns are reached when
 *             there is still one space between the " and the ) at the end
 *             of the line.
 *
 * FITS Structure : 0.000 to 9.999
 *
 * The following keywords give basic information about the structure and
 * dimensions of the FITS file, and must appear in the specific order
 * below, usually without any other intervening keywords.
 *
 *  * Telescope : 500.000 to 599.999
 *
 * Almost all keywords we define can be generated with the MK_XXX macros.
 * The only exceptions are those keywords which contain a '-', since the
 * '-' is not a legal character in a C identifier.  TCS uses four of them
 * (DATE-OBS, UTC-OBS, MJD-OBS, and LST-OBS.)  The ID_XXX macros are used
 * and the '-' is translated to a '_' (underscore) for use in C programs.
 *
 *TYPE --IDX--  KEYWORD- PRC -------------------COMMENT----------------------*/
MK_CMT(  500.00,CMTPNT1 ,   ""                                                )
MK_CMT(  500.10,CMTPNT2 ,   "Telescope and Pointing Information"              )
MK_CMT(  500.20,CMTPNT3 ,   "----------------------------------"              )
MK_CMT(  500.40,CMTPNT4 ,   ""                                                )
MK_STR(  501.00,TELESCOP,   "Telescope"                                       )
ID_PFL( 513.1,  MJD_OBS ,"MJD-OBS",7, "Modified Julian Date at start of obs." )
ID_STR( 514.1,  LST_OBS ,"LST-OBS", "Local Sidereal time at start of obs."    )
MK_STR(  503.0, TELSTAT ,   "Telescope control system status"                 )
MK_STR(  503.1, DOMSTAT ,   "Telescope enclosure status"                      )
MK_STR(  503.2, GUISTAT ,   "Telescope guiding system status"                 )
MK_STR(  503.3, GUICONF ,   "Telescope guiding configuration"                 )
MK_STR(  503.4, GUIKERN ,   "Filter kernel used for guiding"                  )
MK_PFL(  503.5, GUIGAIX ,2, "Telescope guiding gain factor (x offset)"        )
MK_PFL(  503.6, GUIGAIY ,2, "Telescope guiding gain factor (y offset)"        )
MK_PFL(  503.7, GUIRATE ,1, "Telescope guiding rate (Hz)"                     )
MK_VAL(  521.1, EQUINOX ,   "Telescope equinox of coordinates"                )
MK_VAL(  521.2, EPOCH   ,   "Telescope equinox of coordinates"                )
MK_PFL(  522.1, RA      ,6, "Telescope Right Ascension (degrees)"             )
MK_PFL(  522.2, DEC     ,6, "Telescope Declination (degrees)"                 )
MK_PFL(  522.3, AZ      ,6, "Telescope azimuth (degrees)"                     )
MK_PFL(  522.4, ALT     ,6, "Telescope pointing altitude (degrees)"           )
MK_PFL(  522.5, ROT     ,6, "Telescope rotator angle (degrees)"               )
MK_PFL(  522.6, POSANGLE,6, "Telescope position angle (degrees)"              )
MK_PFL(  523.0, COMRA   ,6, "Commanded telescope Right Ascension (degrees)"   )
MK_PFL(  523.1, COMDEC  ,6, "Commanded telescope Declination (degrees)"       )
MK_PFL(  523.2, COMAZ   ,6, "Commanded telescope azimuth (degrees)"           )
MK_PFL(  523.3, COMALT  ,6, "Commanded telescope pointing altitude (degrees)" )
MK_PFL(  523.4, COMROT  ,6, "Commanded telescope rotator angle (degrees)"     )
MK_CMT(  530.00,CMTTELO1,   "NOTE: Telescope RA DEC or ALT AZ already include")
MK_CMT(  530.10,CMTTELO2,   "      the following offsets.  Do not re-apply!"  )
MK_PFL(  532.1, TELOFRA ,6, "Telescope offset in RA (degrees)"                )
MK_PFL(  532.2, TELOFDEC,6, "Telescope offset in DEC (degrees)"               )
MK_PFL(  532.3, TELOFAZ ,6, "Telescope offset in AZ (degrees)"                )
MK_PFL(  532.4, TELOFALT,6, "Telescope offset in ALT (degrees)"               )
MK_PFL(  532.5, TELOFROT,6, "Telescope offset in ROT (degrees)"               )
MK_PFL(  532.7, TELOFX  ,6, "Telescope offset in camera X (degrees)"          )
MK_PFL(  532.8, TELOFY  ,6, "Telescope offset in camera Y (degrees)"          )
MK_PFL(  540.1, AIRMASS ,3, "Airmass at start of observation"                 )
MK_PFL(  541.1, M1X     ,6, "Primary mirror x position (um)"                  )
MK_PFL(  541.2, M1Y     ,6, "Primary mirror y position (um)"                  )
MK_PFL(  541.3, M1Z     ,6, "Primary mirror z position (um)"                  )
MK_PFL(  541.4, M1TIP   ,6, "Primary mirror tip (arcsec)"                     )
MK_PFL(  541.5, M1TILT  ,6, "Primary mirror tilt (arcsec)"                    )
MK_PFL(  542.1, M2X     ,6, "Secondary mirror x position (um)"                )
MK_PFL(  542.2, M2Y     ,6, "Secondary mirror y position (um)"                )
MK_PFL(  542.3, M2Z     ,6, "Secondary mirror z position (um)"                )
MK_PFL(  542.4, M2TIP   ,6, "Secondary mirror tip (arcsec)"                   )
MK_PFL(  542.5, M2TILT  ,6, "Secondary mirror tilt (arcsec)"                  )
MK_STR(  543.0, M1M2MODV,   "Telescope mirror position model version"         )
MK_PFL(  543.1, M1NOMX  ,6, "Modeled Primary mirror x position (um)"          )
MK_PFL(  543.2, M1NOMY  ,6, "Modeled Primary mirror y position (um)"          )
MK_PFL(  543.3, M1NOMZ  ,6, "Modeled Primary mirror z position (um)"          )
MK_PFL(  543.4, M1NOMTIP,6, "Modeled Primary mirror tip (arcsec)"             )
MK_PFL(  543.5, M1NOMTIL,6, "Modeled Primary mirror tilt (arcsec)"            )
MK_PFL(  544.1, M2NOMX  ,6, "Modeled Secondary mirror x position (um)"        )
MK_PFL(  544.2, M2NOMY  ,6, "Modeled Secondary mirror y position (um)"        )
MK_PFL(  544.3, M2NOMZ  ,6, "Modeled Secondary mirror z position (um)"        )
MK_PFL(  544.4, M2NOMTIP,6, "Modeled Secondary mirror tip (arcsec)"           )
MK_PFL(  544.5, M2NOMTIL,6, "Modeled Secondary mirror tilt (arcsec)"          )
MK_STR(  550.1, TELTEMTR,   "Mid truss temperatures (C)"                      )
MK_STR(  550.2, TELTEMSP,   "Spider temperatures (C)"                         )
MK_STR(  550.3, TELTEMMS,   "Primary mirror support temps (C)"                )
MK_STR(  550.4, TELTEMM1,   "Primary mirror temps (C)"                        )
MK_STR(  550.5, TELTEMM2,   "Secondary mirror temps (C)"                      )
MK_STR(  550.6, TELTEMEX,   "Miscellaneous temperatures (C)"                  )

/*
 * Wavefront
 */
MK_PFL(  551.01,WVFA    ,14,"Wavefront A actuator force (N)"                  )
MK_PFL(  551.02,WVFB    ,14,"Wavefront B actuator force (N)"                  )
MK_PFL(  551.03,WVFC    ,14,"Wavefront C actuator force (N)"                  )
MK_PFL(  551.04,WVFD    ,14,"Wavefront D actuator force (N)"                  )
MK_PFL(  551.05,WVFE    ,14,"Wavefront E actuator force (N)"                  )
MK_PFL(  551.06,WVFF    ,14,"Wavefront F actuator force (N)"                  )
MK_PFL(  551.07,WVFG    ,14,"Wavefront G actuator force (N)"                  )
MK_PFL(  551.08,WVFH    ,14,"Wavefront H actuator force (N)"                  )
MK_PFL(  551.09,WVFI    ,14,"Wavefront I actuator force (N)"                  )
MK_PFL(  551.10,WVFJ    ,14,"Wavefront J actuator force (N)"                  )
MK_PFL(  551.11,WVFK    ,14,"Wavefront K actuator force (N)"                  )
MK_PFL(  551.12,WVFL    ,14,"Wavefront L actuator force (N)"                  )

/*
 * These probably want to be in a different section... %%%
 */
MK_PFL(  560.1, ENVTEM,  1, "[C]           Weather, outside temperature"      )
MK_PFL(  560.2, ENVHUM,  1, "[%]           Weather, relative humidity"        )
MK_PFL(  560.3, ENVWIN,  1, "[m/s]         Weather, wind speed"               )
MK_PFL(  560.4, ENVDIR,  1, "[deg E. of N] Weather, wind direction"           )
MK_PFL(  561.0, SEEING,  1, "[arcsec]      Weather, seeing from DIMM, FWHM"   )

/* 
 * Other stuff Craig had put in general.h:
 *
 *TYPE --IDX--  KEYWORD- PRC -------------------COMMENT----------------------*/
MK_PFL( 586.02, HA      ,16,"Hour angle at start (degrees)"                   )
MK_PFL( 586.03,	ST      ,16,"Sidereal time at start (hours)"                  )
MK_PFL( 586.04,	ZD      ,16,"Zenith distance (degrees)"                       )
MK_STR( 587.00,	RASTRNG ,   "Actual Right Ascension (incl offset)"            )
MK_STR( 587.01,	DECSTRNG,   "Actual Declination (incl offset)"                )
MK_STR( 587.02,	HASTRNG ,   "Hour angle at start"                             )
MK_STR( 587.03,	STSTRNG ,   "Sidereal time at start"                          )     
MK_STR( 587.04,	ZDSTRNG ,   "Zenith distance (deg:mm:ss)"                     )                   
