#ifndef IPPTOPSPSDETENUMS_H
#define IPPTOPSPSDETENUMS_H


typedef enum {
  FRAMEMETA_FRAMEID = 1,
  FRAMEMETA_FRAMENAME = 2,
  FRAMEMETA_SURVEYID = 3,
  FRAMEMETA_FILTERID = 4,
  FRAMEMETA_CAMERAID = 5,
  FRAMEMETA_CAMERACONFIGID = 6,
  FRAMEMETA_TELESCOPEID = 7,
  FRAMEMETA_ANALYSISVER = 8,
  FRAMEMETA_P1RECIP = 9,
  FRAMEMETA_P2RECIP = 10,
  FRAMEMETA_P3RECIP = 11,
  FRAMEMETA_NOTA = 12,
  FRAMEMETA_PHOTOSCAT = 13,
  FRAMEMETA_NUMPHOTOREF = 14,
  FRAMEMETA_EXPSTART = 15,
  FRAMEMETA_EXPTIME = 16,
  FRAMEMETA_AIRMASS = 17,
  FRAMEMETA_RABORE = 18,
  FRAMEMETA_DECBORE = 19,
  FRAMEMETA_CTYPE1 = 20,
  FRAMEMETA_CTYPE2 = 21,
  FRAMEMETA_CRVAL1 = 22,
  FRAMEMETA_CRVAL2 = 23,
  FRAMEMETA_CRPIX1 = 24,
  FRAMEMETA_CRPIX2 = 25,
  FRAMEMETA_PC001001 = 26,
  FRAMEMETA_PC001002 = 27,
  FRAMEMETA_PC002001 = 28,
  FRAMEMETA_PC002002 = 29,
  FRAMEMETA_POLYORDER = 30,
  FRAMEMETA_PCA1X3Y0 = 31,
  FRAMEMETA_PCA1X2Y1 = 32,
  FRAMEMETA_PCA1X1Y2 = 33,
  FRAMEMETA_PCA1X0Y3 = 34,
  FRAMEMETA_PCA1X2Y0 = 35,
  FRAMEMETA_PCA1X1Y1 = 36,
  FRAMEMETA_PCA1X0Y2 = 37,
  FRAMEMETA_PCA2X3Y0 = 38,
  FRAMEMETA_PCA2X2Y1 = 39,
  FRAMEMETA_PCA2X1Y2 = 40,
  FRAMEMETA_PCA2X0Y3 = 41,
  FRAMEMETA_PCA2X2Y0 = 42,
  FRAMEMETA_PCA2X1Y1 = 43,
  FRAMEMETA_PCA2X0Y2 = 44,
  FRAMEMETA_CALIBMODNUM = 45,
  FRAMEMETA_DATARELEASE = 46,
} FrameMeta;

typedef enum {
  IMAGEMETA_IMAGEID = 1,
  IMAGEMETA_FRAMEID = 2,
  IMAGEMETA_CCDID = 3,
  IMAGEMETA_PHOTOCALID = 4,
  IMAGEMETA_FILTERID = 5,
  IMAGEMETA_BIAS = 6,
  IMAGEMETA_BIASSCAT = 7,
  IMAGEMETA_SKY = 8,
  IMAGEMETA_SKYSCAT = 9,
  IMAGEMETA_NDETECT = 10,
  IMAGEMETA_MAGSAT = 11,
  IMAGEMETA_COMPLETMAG = 12,
  IMAGEMETA_ASTROSCAT = 13,
  IMAGEMETA_PHOTOSCAT = 14,
  IMAGEMETA_NUMASTROREF = 15,
  IMAGEMETA_NUMPHOTOREF = 16,
  IMAGEMETA_NX = 17,
  IMAGEMETA_NY = 18,
  IMAGEMETA_PSFMODELID = 19,
  IMAGEMETA_PSFFWHM = 20,
  IMAGEMETA_PSFWIDMAJOR = 21,
  IMAGEMETA_PSFWIDMINOR = 22,
  IMAGEMETA_PSFTHETA = 23,
  IMAGEMETA_MOMENTFWHM = 24,
  IMAGEMETA_MOMENTWIDMAJOR = 25,
  IMAGEMETA_MOMENTWIDMINOR = 26,
  IMAGEMETA_MOMENTTHETA = 27,
  IMAGEMETA_APRESID = 28,
  IMAGEMETA_DAPRESID = 29,
  IMAGEMETA_DETECTORID = 30,
  IMAGEMETA_QAFLAGS = 31,
  IMAGEMETA_DETREND1 = 32,
  IMAGEMETA_DETREND2 = 33,
  IMAGEMETA_DETREND3 = 34,
  IMAGEMETA_DETREND4 = 35,
  IMAGEMETA_DETREND5 = 36,
  IMAGEMETA_DETREND6 = 37,
  IMAGEMETA_DETREND7 = 38,
  IMAGEMETA_DETREND8 = 39,
  IMAGEMETA_PHOTOZERO = 40,
  IMAGEMETA_CTYPE1 = 41,
  IMAGEMETA_CTYPE2 = 42,
  IMAGEMETA_CRVAL1 = 43,
  IMAGEMETA_CRVAL2 = 44,
  IMAGEMETA_CRPIX1 = 45,
  IMAGEMETA_CRPIX2 = 46,
  IMAGEMETA_PC001001 = 47,
  IMAGEMETA_PC001002 = 48,
  IMAGEMETA_PC002001 = 49,
  IMAGEMETA_PC002002 = 50,
  IMAGEMETA_POLYORDER = 51,
  IMAGEMETA_PCA1X3Y0 = 52,
  IMAGEMETA_PCA1X2Y1 = 53,
  IMAGEMETA_PCA1X1Y2 = 54,
  IMAGEMETA_PCA1X0Y3 = 55,
  IMAGEMETA_PCA1X2Y0 = 56,
  IMAGEMETA_PCA1X1Y1 = 57,
  IMAGEMETA_PCA1X0Y2 = 58,
  IMAGEMETA_PCA2X3Y0 = 59,
  IMAGEMETA_PCA2X2Y1 = 60,
  IMAGEMETA_PCA2X1Y2 = 61,
  IMAGEMETA_PCA2X0Y3 = 62,
  IMAGEMETA_PCA2X2Y0 = 63,
  IMAGEMETA_PCA2X1Y1 = 64,
  IMAGEMETA_PCA2X0Y2 = 65,
  IMAGEMETA_CALIBMODNUM = 66,
  IMAGEMETA_DATARELEASE = 67,
} ImageMeta;

typedef enum {
  DETECTION_OBJID = 1,
  DETECTION_DETECTID = 2,
  DETECTION_IPPOBJID = 3,
  DETECTION_IPPDETECTID = 4,
  DETECTION_FILTERID = 5,
  DETECTION_SURVEYID = 6,
  DETECTION_IMAGEID = 7,
  DETECTION_OBSTIME = 8,
  DETECTION_XPOS = 9,
  DETECTION_YPOS = 10,
  DETECTION_XPOSERR = 11,
  DETECTION_YPOSERR = 12,
  DETECTION_INSTFLUX = 13,
  DETECTION_INSTFLUXERR = 14,
  DETECTION_PEAKADU = 15,
  DETECTION_PSFWIDMAJOR = 16,
  DETECTION_PSFWIDMINOR = 17,
  DETECTION_PSFTHETA = 18,
  DETECTION_PSFLIKELIHOOD = 19,
  DETECTION_PSFCF = 20,
  DETECTION_MOMENTWIDMAJOR = 21,
  DETECTION_MOMENTWIDMINOR = 22,
  DETECTION_MOMENTTHETA = 23,
  DETECTION_CRLIKELIHOOD = 24,
  DETECTION_EXTENDEDLIKELIHOOD = 25,
  DETECTION_INFOFLAG = 26,
  DETECTION_SKY = 27,
  DETECTION_SKYERR = 28,
  DETECTION_SGSEP = 29,
  DETECTION_ACTIVEFLAG = 30,
  DETECTION_ASSOCDATE = 31,
  DETECTION_HISTORYMODNUM = 32,
  DETECTION_DATARELEASE = 33,
} Detection;

typedef enum {
  SKINNYOBJECT_OBJID = 1,
  SKINNYOBJECT_IPPOBJID = 2,
  SKINNYOBJECT_PROJECTIONCELLID = 3,
  SKINNYOBJECT_DATARELEASE = 4,
} SkinnyObject;

typedef enum {
  OBJECTCALCOLOR_OBJID = 1,
  OBJECTCALCOLOR_IPPOBJID = 2,
  OBJECTCALCOLOR_FILTERID = 3,
  OBJECTCALCOLOR_CALCOLOR = 4,
  OBJECTCALCOLOR_CALCOLORERR = 5,
  OBJECTCALCOLOR_CALIBMODNUM = 6,
  OBJECTCALCOLOR_DATARELEASE = 7,
} ObjectCalColor;

#endif