Index: trunk/psModules/src/camera/pmFPA.h
===================================================================
--- trunk/psModules/src/camera/pmFPA.h	(revision 19013)
+++ trunk/psModules/src/camera/pmFPA.h	(revision 21363)
@@ -6,6 +6,6 @@
  * @author Eugene Magnier, IfA
  *
- * @version $Revision: 1.25 $ $Name: not supported by cvs2svn $
- * @date $Date: 2008-08-12 02:51:20 $
+ * @version $Revision: 1.26 $ $Name: not supported by cvs2svn $
+ * @date $Date: 2009-02-06 02:31:24 $
  * Copyright 2005-2006 Institute for Astronomy, University of Hawaii
  */
@@ -113,5 +113,5 @@
 ///
 /// A readout corresponds to an individual read of a cell (e.g., a single image as part of a video sequence,
-/// or one of multiple coadds).  It contains the actual pixels used in analysis (along with mask and weight
+/// or one of multiple coadds).  It contains the actual pixels used in analysis (along with mask and variance
 /// maps).  When reading from a FITS file, the images are subimages (from CELL.TRIMSEC) of the pixels read
 /// from the appropriate HDU (at the FPA, chip or cell level).  The readout also contains a list of bias
@@ -123,5 +123,6 @@
     psImage *image;                     ///< Imaging area of readout (corresponds to CELL.TRIMSEC region)
     psImage *mask;                      ///< Mask of input image (corresponds to CELL.TRIMSEC region)
-    psImage *weight;                    ///< Weight of input image (corresponds to CELL.TRIMSEC region)
+    psImage *variance;                  ///< Variance of input image (corresponds to CELL.TRIMSEC region)
+    psKernel *covariance;               ///< Covariance pseudo-matrix (covariance factors for single pixel)
     psList *bias;                       ///< List of bias (prescan/overscan) images
     psMetadata *analysis;               ///< Readout-level analysis metadata
@@ -130,10 +131,10 @@
     bool file_exists;                   ///< Does the file for this readout exist (read case only)?
     bool data_exists;                   ///< Does the data for this readout exist (read case only)?
-    int thisImageScan;                  ///< start scan for next/current read
-    int lastImageScan;                  ///< start scan of the last read
-    int thisMaskScan;                   ///< start scan for next/current read
-    int lastMaskScan;                   ///< start scan of the last read
-    int thisWeightScan;                 ///< start scan for next/current read
-    int lastWeightScan;                 ///< start scan of the last read
+    int thisImageScan;                  ///< start scan for next/current read of image
+    int lastImageScan;                  ///< start scan of the last read of image
+    int thisMaskScan;                   ///< start scan for next/current read of mask
+    int lastMaskScan;                   ///< start scan of the last read of mask
+    int thisVarianceScan;               ///< start scan for next/current read of variance
+    int lastVarianceScan;               ///< start scan of the last read of variance
     bool forceScan;                     ///< Force pmFPARead to obey the above commanded this and last scans.
 } pmReadout;
@@ -217,10 +218,12 @@
         } \
     } \
-    psImage *weight = (READOUT)->weight; /* Weight map pixels */ \
-    if (weight) { \
-        PS_ASSERT_IMAGE_NON_NULL((READOUT)->weight, RETVAL); \
-        if ((numCols != 0 || numRows != 0) && (weight->numCols != numCols || weight->numRows != numRows)) { \
-            psError(PS_ERR_BAD_PARAMETER_SIZE, true, "Weight in readout %s has wrong size (%dx%d vs %dx%d)", \
-                    #READOUT, weight->numCols, weight->numRows, numCols, numRows); \
+    psImage *variance = (READOUT)->variance; /* Variance map pixels */ \
+    if (variance) { \
+        PS_ASSERT_IMAGE_NON_NULL((READOUT)->variance, RETVAL); \
+        if ((numCols != 0 || numRows != 0) && \
+            (variance->numCols != numCols || variance->numRows != numRows)) { \
+            psError(PS_ERR_BAD_PARAMETER_SIZE, true, \
+                    "Variance in readout %s has wrong size (%dx%d vs %dx%d)", \
+                    #READOUT, variance->numCols, variance->numRows, numCols, numRows); \
             return RETVAL; \
         } \
@@ -236,7 +239,11 @@
     PS_ASSERT_IMAGE_NON_NULL((READOUT)->mask, RETVAL);
 
-/// Assert that a readout contains a weight map
-#define PM_ASSERT_READOUT_WEIGHT(READOUT, RETVAL) \
-    PS_ASSERT_IMAGE_NON_NULL((READOUT)->weight, RETVAL);
+/// Assert that a readout contains a variance map
+#define PM_ASSERT_READOUT_VARIANCE(READOUT, RETVAL) \
+    PS_ASSERT_IMAGE_NON_NULL((READOUT)->variance, RETVAL);
+
+/// Assert that a readout contains a covariance matrix
+#define PM_ASSERT_READOUT_COVARIANCE(READOUT, RETVAL) \
+    PS_ASSERT_KERNEL_NON_NULL((READOUT)->covariance, RETVAL);
 
 /// @}
