#ifndef TA_PLUGMAP_OBJ_H
#define TA_PLUGMAP_OBJ_H

#ifdef __cplusplus
extern "C" {
#endif

typedef enum taHoleType
{
  OBJECT, COHERENT_SKY, GUIDE, LIGHT_TRAP, QUALITY, ALIGNMENT
} HOLETYPE; /* pragma SCHEMA */

/* typedef enum taObjType
*/
/*{
*/
/*  GALAXY, QSO, STAR, STANDARDSTAR, ROSAT, SERENDIPITY, QA, SKY, UNKNOW, NA
*/
/*} OBJTYPE; */ /* pragma SCHEMA */

typedef enum taObjType
{
  GALAXY, QSO, STAR_BHB, STAR_CARBON, STAR_BROWN_DWARF, STAR_SUB_DWARF,
  STAR_CATY_VAR, STAR_RED_DWARF, STAR_WHITE_DWARF,
  REDDEN_STD, SPECTROPHOTO_STD, HOT_STD,
  ROSAT_A, ROSAT_B, ROSAT_C, ROSAT_D,
  SERENDIPITY_BLUE, SERENDIPITY_FIRST, SERENDIPITY_RED,
  SERENDIPITY_DISTANT, SERENDIPITY_MANUAL,
  QA, SKY, NA
} OBJTYPE; /* pragma SCHEMA */




/* This struct is put out by completetile and read in
	by the plate product.  One PLUGMAPOBJ per assigned fiber */
typedef struct taPlugMapObj
{
  int		objId[5];
  HOLETYPE	holeType;
  double 	ra;
  double	dec;
  float		mag[5];
  float		starL;
  float		expL;
  float		deVaucL;
  OBJTYPE	objType;
  double	xFocal;
  double	yFocal;
  int		spectrographId;
  int		fiberId;
  int		throughput;
  int		primTarget;
  int		secTarget;
} PLUGMAPOBJ; /* pragma SCHEMA */

#ifdef __cplusplus
}
#endif

#endif
