Index: trunk/psphot/src/psphot.h
===================================================================
--- trunk/psphot/src/psphot.h	(revision 5993)
+++ trunk/psphot/src/psphot.h	(revision 6056)
@@ -14,32 +14,25 @@
 # define psMemCopy(A)(psMemIncrRefCounter((A)))
 
-typedef struct {
-    psImage *image;
-    psImage *mask;
-    psImage *weight;
-    psMetadata *header;
-} eamReadout;
-
 // top-level psphot functions
 psMetadata     *psphotArguments (int *argc, char **argv);
-eamReadout     *psphotSetup (psMetadata *config);
-bool            psphotModelTest (eamReadout *imdata, psMetadata *config);
-psStats        *psphotImageStats (eamReadout *imdata, psMetadata *config);
-psPolynomial2D *psphotImageBackground (eamReadout *imdata, psMetadata *config, psStats *sky);
-psArray        *psphotFindPeaks (eamReadout *imdata, psMetadata *config, psStats *sky);
-psArray        *psphotSourceStats (eamReadout *imdata, psMetadata *config, psArray *allpeaks);
+pmReadout      *psphotSetup (psMetadata *config, psMetadata **header);
+bool            psphotModelTest (pmReadout *readout, psMetadata *config);
+psStats        *psphotImageStats (pmReadout *readout, psMetadata *config);
+psPolynomial2D *psphotImageBackground (pmReadout *readout, psMetadata *config, psStats *sky);
+psArray        *psphotFindPeaks (pmReadout *readout, psMetadata *config, psStats *sky);
+psArray        *psphotSourceStats (pmReadout *readout, psMetadata *config, psArray *allpeaks);
 bool            psphotRoughClass (psArray *sources, psMetadata *config);
 bool            psphotBasicDeblend (psArray *sources, psMetadata *config, psStats *sky);
 pmPSF          *psphotChoosePSF (psMetadata *config, psArray *sources, psStats *sky);
-void            psphotOutput (eamReadout *imdata, psMetadata *config, psArray *sources, pmPSF *psf, psStats *sky);
+void            psphotOutput (pmReadout *readout, psMetadata *header, psMetadata *config, psArray *sources, pmPSF *psf, psStats *sky);
 
 // optional object analysis steps
-bool 	        psphotEnsemblePSF (eamReadout *imdata, psMetadata *config, psArray *sources, pmPSF *psf, psStats *sky);
-bool            psphotFullFit (eamReadout *imdata, psMetadata *config, psArray *sources, pmPSF *psf, psStats *sky);
-bool            psphotBlendFit (eamReadout *imdata, psMetadata *config, psArray *sources, pmPSF *psf, psStats *sky);
+bool 	        psphotEnsemblePSF (pmReadout *readout, psMetadata *config, psArray *sources, pmPSF *psf, psStats *sky);
+bool            psphotFullFit (pmReadout *readout, psMetadata *config, psArray *sources, pmPSF *psf, psStats *sky);
+bool            psphotBlendFit (pmReadout *readout, psMetadata *config, psArray *sources, pmPSF *psf, psStats *sky);
 bool            psphotReplaceUnfit (psArray *sources);
-bool            psphotApplyPSF (eamReadout *imdata, psMetadata *config, psArray *sources, pmPSF *psf, psStats *sky);
-bool            psphotFitExtended (eamReadout *imdata, psMetadata *config, psArray *sources, psStats *skyStats);
-bool            psphotApResid (eamReadout *imdata, psArray *sources, psMetadata *config, pmPSF *psf);
+bool            psphotApplyPSF (pmReadout *readout, psMetadata *config, psArray *sources, pmPSF *psf, psStats *sky);
+bool            psphotFitExtended (pmReadout *readout, psMetadata *config, psArray *sources, psStats *skyStats);
+bool            psphotApResid (pmReadout *readout, psArray *sources, psMetadata *config, pmPSF *psf);
 
 // basic support functions
@@ -51,21 +44,21 @@
 int 	        psphotSortBySN (const void **a, const void **b);
 int 	        psphotSortByY (const void **a, const void **b);
-bool            psphotGrowthCurve (eamReadout *imdata, pmPSF *psf);
+bool            psphotGrowthCurve (pmReadout *readout, pmPSF *psf);
 void            psphotTestArguments (int *argc, char **argv);
 
 // functions to set the correct source pixels
 bool 		psphotInitRadiusPSF (psMetadata *config, psStats *sky, pmModelType type);
-bool 		psphotCheckRadiusPSF (eamReadout *imdata, pmSource *source, pmModel *model);
+bool 		psphotCheckRadiusPSF (pmReadout *readout, pmSource *source, pmModel *model);
 bool 		psphotInitRadiusEXT (psMetadata *config, psStats *sky, pmModelType type);
-bool 		psphotCheckRadiusEXT (eamReadout *imdata, pmSource *source, pmModel *model);
-bool 	        psphotDefinePixels (pmSource *mySource, const eamReadout *imdata, psF32 x, psF32 y, psF32 Radius);
-bool 	        psphotRedefinePixels (pmSource *mySource, const eamReadout *imdata, psF32 x, psF32 y, psF32 Radius);
+bool 		psphotCheckRadiusEXT (pmReadout *readout, pmSource *source, pmModel *model);
+bool 	        psphotDefinePixels (pmSource *mySource, const pmReadout *readout, psF32 x, psF32 y, psF32 Radius);
+bool 	        psphotRedefinePixels (pmSource *mySource, const pmReadout *readout, psF32 x, psF32 y, psF32 Radius);
 
 // output functions
-bool 	     	pmSourcesWriteText (eamReadout *imdata, psMetadata *config, char *filename, psArray *sources, pmPSF *psf, psStats *sky);
-bool 	     	pmSourcesWriteOBJ  (eamReadout *imdata, psMetadata *config, char *filename, psArray *sources, pmPSF *psf, psStats *sky);
-bool 	     	pmSourcesWriteCMP  (eamReadout *imdata, psMetadata *config, char *filename, psArray *sources, pmPSF *psf, psStats *sky);
-bool 	     	pmSourcesWriteCMF  (eamReadout *imdata, psMetadata *config, char *filename, psArray *sources, pmPSF *psf, psStats *sky);
-bool 	     	pmSourcesWriteSX   (eamReadout *imdata, psMetadata *config, char *filename, psArray *sources, pmPSF *psf, psStats *sky);
+bool 	     	pmSourcesWriteText (pmReadout *readout, psMetadata *config, char *filename, psArray *sources, pmPSF *psf, psStats *sky);
+bool 	     	pmSourcesWriteOBJ  (pmReadout *readout, psMetadata *config, char *filename, psArray *sources, pmPSF *psf, psStats *sky);
+bool 	     	pmSourcesWriteCMP  (pmReadout *readout, psMetadata *header, psMetadata *config, char *filename, psArray *sources, pmPSF *psf, psStats *sky);
+bool 	     	pmSourcesWriteCMF  (pmReadout *readout, psMetadata *header, psMetadata *config, char *filename, psArray *sources, pmPSF *psf, psStats *sky);
+bool 	     	pmSourcesWriteSX   (pmReadout *readout, psMetadata *config, char *filename, psArray *sources, pmPSF *psf, psStats *sky);
 
 bool 	     	pmModelWritePSFs (psArray *sources, psMetadata *config, char *filename, pmPSF *psf);
@@ -96,12 +89,9 @@
 bool 		psphotInitLimitsPSF (psMetadata *config);
 bool		psphotInitLimitsEXT (psMetadata *config, psStats *sky);
-bool		psphotFitBlend (eamReadout *imdata, pmSource *source);
-bool		psphotFitBlob (eamReadout *imdata, pmSource *source, psArray *sources);
-bool		psphotFitPSF (eamReadout *imdata, pmSource *source);
-pmModel	       *psphotFitEXT (eamReadout *imdata, pmSource *source);
-psArray	       *psphotFitDBL (eamReadout *imdata, pmSource *source);
-
-// eamReadout functions
-eamReadout     *eamReadoutAlloc (psImage *image, psImage *noise, psImage *mask, psMetadata *header);
+bool		psphotFitBlend (pmReadout *readout, pmSource *source);
+bool		psphotFitBlob (pmReadout *readout, pmSource *source, psArray *sources);
+bool		psphotFitPSF (pmReadout *readout, pmSource *source);
+pmModel	       *psphotFitEXT (pmReadout *readout, pmSource *source);
+psArray	       *psphotFitDBL (pmReadout *readout, pmSource *source);
 
 // bicubic interpolation
