Index: trunk/ppTranslate/src/ppMopsRead.c
===================================================================
--- trunk/ppTranslate/src/ppMopsRead.c	(revision 26561)
+++ trunk/ppTranslate/src/ppMopsRead.c	(revision 28027)
@@ -93,13 +93,26 @@
             det->mag->data.F32[numGood] = psMetadataLookupF32(NULL, row, "PSF_INST_MAG");
             det->magErr->data.F32[numGood] = psMetadataLookupF32(NULL, row, "PSF_INST_MAG_SIG");
+            det->chi2->data.F32[numGood] = psMetadataLookupF32(NULL, row, "PSF_CHISQ");
+            det->dof->data.S32[numGood] = psMetadataLookupS32(NULL, row, "PSF_NDOF");
+            det->cr->data.F32[numGood] = psMetadataLookupF32(NULL, row, "CR_NSIGMA");
             det->extended->data.F32[numGood] = psMetadataLookupF32(NULL, row, "EXT_NSIGMA");
-            det->angle->data.F32[numGood] = 0.0;
-            det->angleErr->data.F32[numGood] = 0.0;
-            det->length->data.F32[numGood] = 0.0;
-            det->lengthErr->data.F32[numGood] = 0.0;
+            det->psfMajor->data.F32[numGood] = psMetadataLookupF32(NULL, row, "PSF_MAJOR");
+            det->psfMinor->data.F32[numGood] = psMetadataLookupF32(NULL, row, "PSF_MINOR");
+            det->psfTheta->data.F32[numGood] = psMetadataLookupF32(NULL, row, "PSF_THETA");
+            det->quality->data.F32[numGood] = psMetadataLookupF32(NULL, row, "PSF_QF");
+            det->numPix->data.S32[numGood] = psMetadataLookupS32(NULL, row, "PSF_NPIX");
+            det->xxMoment->data.F32[numGood] = psMetadataLookupF32(NULL, row, "MOMENTS_XX");
+            det->xyMoment->data.F32[numGood] = psMetadataLookupF32(NULL, row, "MOMENTS_XY");
+            det->yyMoment->data.F32[numGood] = psMetadataLookupF32(NULL, row, "MOMENTS_YY");
             det->flags->data.U32[numGood] = psMetadataLookupU32(NULL, row, "FLAGS");
             det->diffSkyfileId->data.S64[numGood] = diffSkyfileId;
             det->naxis1->data.S32[numGood] = naxis1;
             det->naxis2->data.S32[numGood] = naxis2;
+
+            det->nPos->data.S32[numGood] = psMetadataLookupS32(NULL, row, "DIFF_NPOS");
+            det->fPos->data.F32[numGood] = psMetadataLookupF32(NULL, row, "DIFF_FRATIO");
+            det->nRatioBad->data.F32[numGood] = psMetadataLookupF32(NULL, row, "DIFF_NRATIO_BAD");
+            det->nRatioMask->data.F32[numGood] = psMetadataLookupF32(NULL, row, "DIFF_NRATIO_MASK");
+            det->nRatioAll->data.F32[numGood] = psMetadataLookupF32(NULL, row, "DIFF_NRATIO_ALL");
 
             // Calculate error in RA, Dec
@@ -146,9 +159,16 @@
         det->mag->n = numGood;
         det->magErr->n = numGood;
+        det->chi2->n = numGood;
+        det->dof->n = numGood;
+        det->cr->n = numGood;
         det->extended->n = numGood;
-        det->angle->n = numGood;
-        det->angleErr->n = numGood;
-        det->length->n = numGood;
-        det->lengthErr->n = numGood;
+        det->psfMajor->n = numGood;
+        det->psfMinor->n = numGood;
+        det->psfTheta->n = numGood;
+        det->quality->n = numGood;
+        det->numPix->n = numGood;
+        det->xxMoment->n = numGood;
+        det->xyMoment->n = numGood;
+        det->yyMoment->n = numGood;
         det->flags->n = numGood;
         det->diffSkyfileId->n = numGood;
@@ -156,4 +176,9 @@
         det->naxis2->n = numGood;
         det->mask->n = numGood;
+        det->nPos->n = numGood;
+        det->fPos->n = numGood;
+        det->nRatioBad->n = numGood;
+        det->nRatioMask->n = numGood;
+        det->nRatioAll->n = numGood;
 
         det->num = numGood;
