Index: /trunk/psModules/src/camera/pmReadoutFake.c
===================================================================
--- /trunk/psModules/src/camera/pmReadoutFake.c	(revision 36865)
+++ /trunk/psModules/src/camera/pmReadoutFake.c	(revision 36866)
@@ -55,5 +55,5 @@
 
     psF32 *params = model->params->data.F32; // Model parameters
-    psEllipseAxes axes = pmPSF_ModelToAxes(params, model->type); // Ellipse axes
+    psEllipseAxes axes = pmPSF_ModelToAxes(params, model->class->useReff); // Ellipse axes
     // Curiously, the minor axis can be larger than the major axis, so need to check.
     if (axes.major >= axes.minor) {
@@ -62,5 +62,5 @@
         axes.major = axes.minor;
     }
-    return pmPSF_AxesToModel(params, axes, model->type);
+    return pmPSF_AxesToModel(params, axes, model->class->useReff);
 }
 
Index: /trunk/psModules/src/objects/models/pmModel_DEV.c
===================================================================
--- /trunk/psModules/src/objects/models/pmModel_DEV.c	(revision 36865)
+++ /trunk/psModules/src/objects/models/pmModel_DEV.c	(revision 36866)
@@ -124,5 +124,5 @@
     if (radius <= 1.5) {
 	// Nsub ~ 10*index^2 + 1
-	psEllipseAxes axes = pmPSF_ModelToAxes(PAR, pmModelClassGetType ("PS_MODEL_DEV"));
+	psEllipseAxes axes = pmPSF_ModelToAxes(PAR, true); // DEV uses Reff
 	int Nsub = 2 * ((int)(25 / axes.minor)) + 1;
 	Nsub = PS_MIN (Nsub, 121);
Index: /trunk/psModules/src/objects/models/pmModel_SERSIC.c
===================================================================
--- /trunk/psModules/src/objects/models/pmModel_SERSIC.c	(revision 36865)
+++ /trunk/psModules/src/objects/models/pmModel_SERSIC.c	(revision 36866)
@@ -125,5 +125,5 @@
     if (radius <= 1.5) {
 	// Nsub ~ 10*index^2 + 1
-	psEllipseAxes axes = pmPSF_ModelToAxes(PAR, pmModelClassGetType ("PS_MODEL_SERSIC"));
+	psEllipseAxes axes = pmPSF_ModelToAxes(PAR, true); // SERSIC model uses Reff
 	int Nsub = 2 * ((int)(6.0*Sindex / axes.minor)) + 1;
 	Nsub = PS_MIN (Nsub, 121);
Index: /trunk/psModules/src/objects/pmSourceIO_CFF.c
===================================================================
--- /trunk/psModules/src/objects/pmSourceIO_CFF.c	(revision 36865)
+++ /trunk/psModules/src/objects/pmSourceIO_CFF.c	(revision 36866)
@@ -208,5 +208,5 @@
             axes.minor        = 1.0;
             axes.theta        = 0.0;
-            pmPSF_AxesToModel (PAR, axes, modelType);
+            pmPSF_AxesToModel (PAR, axes, model->class->useReff);
 
             // peak->detValue, rawFlux, smoothFlux are all set to the flux argument which is counts per second
@@ -273,5 +273,5 @@
 	    galaxyAxes.theta = theta * PS_RAD_DEG;
 
-	    pmPSF_AxesToModel (xPAR, galaxyAxes, galaxyModelType);
+	    pmPSF_AxesToModel (xPAR, galaxyAxes, model->class->useReff);
 	    if (model->params->n > 7) {
                 xPAR[PM_PAR_7] = 0.5 / Sindex;
@@ -461,5 +461,5 @@
                         yPos[0] = PAR[PM_PAR_YPOS];
 
-                        psEllipseAxes axes = pmPSF_ModelToAxes (PAR, model->type);
+                        psEllipseAxes axes = pmPSF_ModelToAxes (PAR, model->class->useReff);
                         rMajor[0] = axes.major;
                         rMinor[0] = axes.minor;
@@ -490,5 +490,5 @@
                                 yPos[1] = PAR[PM_PAR_YPOS];
 
-                                psEllipseAxes axes = pmPSF_ModelToAxes (PAR, model->type);
+                                psEllipseAxes axes = pmPSF_ModelToAxes (PAR, model->class->useReff);
                                 rMajor[1] = axes.major;
                                 rMinor[1] = axes.minor;
Index: /trunk/psModules/src/objects/pmSourceIO_CMF.c.in
===================================================================
--- /trunk/psModules/src/objects/pmSourceIO_CMF.c.in	(revision 36865)
+++ /trunk/psModules/src/objects/pmSourceIO_CMF.c.in	(revision 36866)
@@ -372,4 +372,6 @@
         @ALL@     source->apMag     = psMetadataLookupF32 (&status, row, "AP_MAG");
         @>PS1_V2,PS1_SV?,>PS1_DV1@ source->apMagRaw  = psMetadataLookupF32 (&status, row, "AP_MAG_RAW");
+	@>PS1_DV1,>PS1_V3,>PS1_SV1@ source->apFlux = psMetadataLookupF32 (&status, row, "AP_FLUX");
+	@>PS1_DV1,>PS1_V3,>PS1_SV1@ source->apFluxErr = psMetadataLookupF32 (&status, row, "AP_FLUX_SIG");
 
         // XXX use these to determine PAR[PM_PAR_I0] if they exist?
@@ -382,5 +384,5 @@
         @ALL@     dPAR[PM_PAR_I0]   = (isfinite(source->psfMag)) ? PAR[PM_PAR_I0] * source->psfMagErr : NAN;
 
-        pmPSF_AxesToModel (PAR, axes, modelType);
+        pmPSF_AxesToModel (PAR, axes, model->class->useReff);
 
         @ALL@     float peakMag     = psMetadataLookupF32 (&status, row, "PEAK_FLUX_AS_MAG");
@@ -432,6 +434,6 @@
 	if (haveLensOBJ) {
 	  source->lensingOBJ = pmSourceLensingAlloc ();
-	  source->lensingOBJ->lensing->smear = pmLensingParsAlloc();
-	  source->lensingOBJ->lensing->shear = pmLensingParsAlloc();
+	  source->lensingOBJ->smear = pmLensingParsAlloc();
+	  source->lensingOBJ->shear = pmLensingParsAlloc();
 
 	  @>PS1_V4@ source->lensingOBJ->smear->X11 = psMetadataLookupF32 (&status, row, "LENS_X11_SM_OBJ");
@@ -449,6 +451,6 @@
 	if (haveLensPSF) {
 	  source->lensingPSF = pmSourceLensingAlloc ();
-	  source->lensingPSF->lensing->smear = pmLensingParsAlloc();
-	  source->lensingPSF->lensing->shear = pmLensingParsAlloc();
+	  source->lensingPSF->smear = pmLensingParsAlloc();
+	  source->lensingPSF->shear = pmLensingParsAlloc();
 
 	  @>PS1_V4@ source->lensingPSF->smear->X11 = psMetadataLookupF32 (&status, row, "LENS_X11_SM_PSF");
@@ -1185,5 +1187,5 @@
         axes.minor = psMetadataLookupF32(&status, row, "EXT_WIDTH_MIN");
         axes.theta = psMetadataLookupF32(&status, row, "EXT_THETA");
-        if (!pmPSF_AxesToModel(PAR, axes, modelType)) {
+        if (!pmPSF_AxesToModel(PAR, axes, model->class->useReff)) {
             // Do we need to fail here or can this happen?
             psError(PS_ERR_UNKNOWN, false, "Failed to convert psf axes to model");
Index: /trunk/psModules/src/objects/pmSourceIO_CMP.c
===================================================================
--- /trunk/psModules/src/objects/pmSourceIO_CMP.c	(revision 36865)
+++ /trunk/psModules/src/objects/pmSourceIO_CMP.c	(revision 36866)
@@ -293,5 +293,5 @@
                 goto skip_source;
 
-            pmPSF_AxesToModel (PAR, axes, modelType);
+            pmPSF_AxesToModel (PAR, axes, model->class->useReff);
 
             psArrayAdd (sources, 100, source);
Index: /trunk/psModules/src/objects/pmSourceIO_PS1_CAL_0.c
===================================================================
--- /trunk/psModules/src/objects/pmSourceIO_PS1_CAL_0.c	(revision 36865)
+++ /trunk/psModules/src/objects/pmSourceIO_PS1_CAL_0.c	(revision 36866)
@@ -290,5 +290,5 @@
 	dPAR[PM_PAR_I0]   = (isfinite(source->psfMag)) ? PAR[PM_PAR_I0] * source->psfMagErr : NAN;
 
-        pmPSF_AxesToModel (PAR, axes, modelType);
+        pmPSF_AxesToModel (PAR, axes, model->class->useReff);
 
         float peakMag     = psMetadataLookupF32 (&status, row, "PEAK_FLUX_AS_MAG");
Index: /trunk/psModules/src/objects/pmSourceIO_PS1_DEV_0.c
===================================================================
--- /trunk/psModules/src/objects/pmSourceIO_PS1_DEV_0.c	(revision 36865)
+++ /trunk/psModules/src/objects/pmSourceIO_PS1_DEV_0.c	(revision 36866)
@@ -216,5 +216,5 @@
         source->psfMagErr    = psMetadataLookupF32 (&status, row, "PSF_INST_MAG_SIG");
 
-        pmPSF_AxesToModel (PAR, axes, modelType);
+        pmPSF_AxesToModel (PAR, axes, model->class->useReff);
 
         float peakMag = psMetadataLookupF32 (&status, row, "PEAK_FLUX_AS_MAG");
Index: /trunk/psModules/src/objects/pmSourceIO_PS1_DEV_1.c
===================================================================
--- /trunk/psModules/src/objects/pmSourceIO_PS1_DEV_1.c	(revision 36865)
+++ /trunk/psModules/src/objects/pmSourceIO_PS1_DEV_1.c	(revision 36866)
@@ -259,5 +259,5 @@
 	dPAR[PM_PAR_I0]   = (isfinite(source->psfMag)) ? PAR[PM_PAR_I0] * source->psfMagErr : NAN;
 
-        pmPSF_AxesToModel (PAR, axes, modelType);
+        pmPSF_AxesToModel (PAR, axes, model->class->useReff);
 
         float peakMag     = psMetadataLookupF32 (&status, row, "PEAK_FLUX_AS_MAG");
Index: /trunk/psModules/src/objects/pmSourceIO_SMPDATA.c
===================================================================
--- /trunk/psModules/src/objects/pmSourceIO_SMPDATA.c	(revision 36865)
+++ /trunk/psModules/src/objects/pmSourceIO_SMPDATA.c	(revision 36866)
@@ -190,5 +190,5 @@
         axes.theta       = psMetadataLookupF32 (&status, row, "THETA");
 
-	pmPSF_AxesToModel (PAR, axes, modelType);
+	pmPSF_AxesToModel (PAR, axes, model->class->useReff);
 
         source->psfMag = psMetadataLookupF32 (&status, row, "MAG_RAW") - ZERO_POINT;
