Index: branches/eam_branches/ipp-20101205/psModules/src/objects/pmSource.c
===================================================================
--- branches/eam_branches/ipp-20101205/psModules/src/objects/pmSource.c	(revision 30139)
+++ branches/eam_branches/ipp-20101205/psModules/src/objects/pmSource.c	(revision 30142)
@@ -127,4 +127,5 @@
     source->diffStats = NULL;
     source->radialAper = NULL;
+    source->parent = NULL;
 
     source->region = psRegionSet(NAN, NAN, NAN, NAN);
Index: branches/eam_branches/ipp-20101205/psModules/src/objects/pmSource.h
===================================================================
--- branches/eam_branches/ipp-20101205/psModules/src/objects/pmSource.h	(revision 30139)
+++ branches/eam_branches/ipp-20101205/psModules/src/objects/pmSource.h	(revision 30142)
@@ -54,9 +54,9 @@
     pmPeak  *peak;                      ///< Description of peak pixel.
     psImage *pixels;                    ///< Rectangular region including object pixels.
-    psImage *variance;                    ///< Image variance.
+    psImage *variance;			///< Image variance.
     psImage *maskObj;                   ///< unique mask for this object which marks included pixels associated with objects.
     psImage *maskView;                  ///< view into global image mask for this object region
     psImage *modelFlux;                 ///< cached copy of the best model for this source
-    psImage *psfImage;                   ///< cached copy of the psf model for this source
+    psImage *psfImage;			///< cached copy of the psf model for this source
     pmMoments *moments;                 ///< Basic moments measured for the object.
     pmModel *modelPSF;                  ///< PSF Model fit (parameters and type)
@@ -90,6 +90,20 @@
     pmSourceDiffStats *diffStats;       ///< extra parameters for difference detections
     psArray *radialAper;		///< radial flux in circular apertures
+    pmSource *parent;			///< reference to the master source from which this is derived
     int imageID;
 };
+
+/* a pmSource is the information about a (possible) blob of flux in a specific image.  A source
+ * may represent an insignificant or undetected source.  There may be multiple representations
+ * of an image (eg, alternate smoothed copies); sources on alternate images may have a pointer
+ * to the version on the primary image (source->parent).  A set of sources on different, but
+ * related images (eg, multiple exposures or different filters) which (may) represent the same
+ * astronomical object are grouped together with the pmPhotObj type (set pmPhotObj.h).
+ * 
+ * A single source may be fitted with multiple models (not at the same time!).  The PSF model
+ * fit is a fit of the position (optionally) and the flux to the PSF model at the location of
+ * the source.  Alternate model fits are extended source models. The best model fit is used to
+ * subtract the object from the image.
+ */
 
 /** pmPSFClump data structure
