Index: trunk/psLib/src/imageops/psImageCovariance.h
===================================================================
--- trunk/psLib/src/imageops/psImageCovariance.h	(revision 21207)
+++ trunk/psLib/src/imageops/psImageCovariance.h	(revision 21280)
@@ -5,6 +5,6 @@
  * @author Paul Price, IfA
  *
- * @version $Revision: 1.1 $ $Name: not supported by cvs2svn $
- * @date $Date: 2009-01-28 22:16:33 $
+ * @version $Revision: 1.2 $ $Name: not supported by cvs2svn $
+ * @date $Date: 2009-02-04 02:55:27 $
  * Copyright 2009 Institute for Astronomy, University of Hawaii
  */
@@ -17,4 +17,15 @@
 
 #include <psImageConvolve.h>
+
+// We don't carry the entire covariance matrix for an image (the size goes as N^2, for N pixels, which makes
+// storage difficult; and if that's not enough, the time to do the calculation is definitely impractical).
+// Since there are (generally) lots of zeros in the covariance matrix, and the same basic pattern repeats (for
+// background pixels), we can just carry that pattern.  We carry this in a psKernel, since the values are the
+// covariance between the pixel of consideration (at 0,0 in the kernel) and neighbouring pixels.  Note that
+// this may not be strictly correct near sources, but this is the best we can do (and much better than most
+// currently do).
+
+/// Allocate a covariance pseudo-matrix with no covariance
+psKernel *psImageCovarianceNone(void);
 
 /// Calculate the covariance pseudo-matrix for a convolution kernel
@@ -29,4 +40,9 @@
     );
 
+/// Average many covariance pseudo-matrices
+psKernel *psImageCovarianceAverage(
+    const psArray *array                ///< Array of covariance pseudo-matrices
+    );
+
 
 /// @}
