Index: trunk/Ohana/src/opihi/dvo/dbExtractMeasures.c
===================================================================
--- trunk/Ohana/src/opihi/dvo/dbExtractMeasures.c	(revision 14379)
+++ trunk/Ohana/src/opihi/dvo/dbExtractMeasures.c	(revision 14401)
@@ -12,5 +12,5 @@
 double dbExtractMeasures (Average *average, SecFilt *secfilt, Measure *measure, dbField *field) {
 
-  int i;
+  int i, Nsec;
   double value;
   double ra, dec, x, y;
@@ -27,5 +27,5 @@
       if ((field->photcode->type == PHOT_REF) && (measure[0].photcode == field->photcode->code)) goto valid_photcode;
       if ((field->photcode->type == PHOT_DEP) && (measure[0].photcode == field->photcode->code)) goto valid_photcode;
-      if ((field->photcode->type == PHOT_SEC) && (GetPhotcodeEquivbyCode (measure[0].photcode) == field->photcode->code)) goto valid_photcode;
+      if ((field->photcode->type == PHOT_SEC) && (GetPhotcodeEquivCodebyCode (measure[0].photcode) == field->photcode->code)) goto valid_photcode;
       break;
 
@@ -53,4 +53,20 @@
 	  value = PhotRef  (GetPhotcodeEquivbyCode (measure[0].photcode), average, secfilt, measure); 
 	  break;
+	case MAG_ERR:
+	  value = PhotdM  (GetPhotcodeEquivbyCode (measure[0].photcode), average, secfilt); 
+	  break;
+	case MAG_CHISQ:
+	  value = PhotXm  (GetPhotcodeEquivbyCode (measure[0].photcode), average, secfilt); 
+	  break;
+	case MAG_NCODE:
+	  Nsec = GetPhotcodeNsec (GetPhotcodeEquivCodebyCode (measure[0].photcode));
+	  if (Nsec == -1) break;
+	  value = secfilt[Nsec].Ncode;
+	  break;
+	case MAG_NPHOT:
+	  Nsec = GetPhotcodeNsec (GetPhotcodeEquivCodebyCode (measure[0].photcode));
+	  if (Nsec == -1) break;
+	  value = secfilt[Nsec].Nused;
+	  break;
       }
       break;
@@ -67,6 +83,64 @@
       value = average[0].D;
       break;
-    case MEAS_dMAG: /* OK */
-      value = measure[0].dM;
+    case MEAS_RA_AVE_ERR: /* OK */
+      value = average[0].dR;
+      break;
+    case MEAS_DEC_AVE_ERR: /* OK */
+      value = average[0].dD;
+      break;
+    case MEAS_U_RA: /* OK */
+      value = average[0].uR;
+      break;
+    case MEAS_U_DEC: /* OK */
+      value = average[0].uD;
+      break;
+    case MEAS_U_RA_ERR: /* OK */
+      value = average[0].duR;
+      break;
+    case MEAS_U_DEC_ERR: /* OK */
+      value = average[0].duD;
+      break;
+    case MEAS_PAR: /* OK */
+      value = average[0].R;
+      break;
+    case MEAS_PAR_ERR: /* OK */
+      value = average[0].D;
+      break;
+    case MEAS_XP: /* OK */
+      value = average[0].Xp;
+      break;
+    case MEAS_NMEAS: /* OK */
+      value = average[0].Nm;
+      break;
+    case MEAS_NMISS: /* OK */
+      value = average[0].Nn;
+      break;
+    case MEAS_NPHOT: /* OK */
+      Nsec = f(measure[0].photcode);
+      value = secfilt[Nsec].Nused;
+      break;
+    case MEAS_NCODE: /* OK */
+      Nsec = f(measure[0].photcode);
+      value = secfilt[Nsec].Ncode;
+      break;
+    case MEAS_OBJFLAGS: /* OK */
+      value = average[0].code;
+      break;
+//    case MEAS_dMAG: /* OK */
+//      value = measure[0].dM;
+//      break;
+    // note that these represent the ra displacement relative to the average, not 
+    // the error.
+    case MEAS_RA_OFFSET: /* OK */
+      value = measure[0].dR;
+      break;
+    case MEAS_DEC_OFFSET: /* OK */
+      value = measure[0].dD;
+      break;
+    case MEAS_RA_OFFSET_ERR: /* OK */
+      value = NO_MAG;
+      break;
+    case MEAS_DEC_OFFSET_ERR: /* OK */
+      value = NO_MAG;
       break;
     case MEAS_AIRMASS: /* OK */
@@ -82,18 +156,19 @@
       value = TimeValue (measure[0].t, TimeReference, TimeFormat);
       break;
-    // note that these represent the ra displacement relative to the average, not 
-    // the error.
-    case MEAS_dR: /* OK */
-      value = measure[0].dR;
-      break;
-    case MEAS_dD: /* OK */
-      value = measure[0].dD;
-      break;
     case MEAS_FWHM: /* OK */
+      value = 0.01*(measure[0].FWx + measure[0].FWy);
+      break;
+    case MEAS_FWHM_MAJ: /* OK */
       value = 0.01*measure[0].FWx;
       break;
-    case MEAS_DOPHOT: /* OK */
-      value = measure[0].dophot;
-      break;
+    case MEAS_FWHM_MIN: /* OK */
+      value = 0.01*measure[0].FWy;
+      break;
+    case MEAS_THETA: /* OK */
+      value = measure[0].theta;
+      break;
+//    case MEAS_DOPHOT: /* OK */
+//      value = measure[0].dophot;
+//      break;
     case MEAS_FLAGS: /* ? */
       value = measure[0].flags;
