Index: trunk/psLib/src/imageops/psImageInterpolate.h
===================================================================
--- trunk/psLib/src/imageops/psImageInterpolate.h	(revision 12741)
+++ trunk/psLib/src/imageops/psImageInterpolate.h	(revision 13483)
@@ -7,11 +7,11 @@
  * @author Paul Price, Institute for Astronomy
  *
- * @version $Revision: 1.1 $ $Name: not supported by cvs2svn $
- * @date $Date: 2007-04-04 22:42:02 $
+ * @version $Revision: 1.2 $ $Name: not supported by cvs2svn $
+ * @date $Date: 2007-05-23 02:55:01 $
  * Copyright 2004-2007 Institute for Astronomy, University of Hawaii
  */
 
-#ifndef PS_IMAGE_PIXEL_INTERPOLATE_H
-#define PS_IMAGE_PIXEL_INTERPOLATE_H
+#ifndef PS_IMAGE_INTERPOLATE_H
+#define PS_IMAGE_INTERPOLATE_H
 
 
@@ -28,4 +28,12 @@
 } psImageInterpolateMode;
 
+/// Status of interpolation
+typedef enum {
+    PS_INTERPOLATE_STATUS_ERROR = 0,    ///< There was an error
+    PS_INTERPOLATE_STATUS_OFF,          ///< The pixel fell completely off the image or in the border
+    PS_INTERPOLATE_STATUS_BAD,          ///< The pixel is bad
+    PS_INTERPOLATE_STATUS_POOR,         ///< The pixel is poor
+    PS_INTERPOLATE_STATUS_GOOD,         ///< The pixel is good
+} psImageInterpolateStatus;
 
 /// Options for general interpolation.
@@ -35,14 +43,14 @@
 /// included.
 typedef struct {
-    psImageInterpolateMode mode;        // Interpolation mode
-    const psImage *image;               // Input image for interpolation
-    const psImage *variance;            // Variance image for interpolation
-    const psImage *mask;                // Mask image for interpolation
-    psMaskType maskVal;                 // Value to mask
-    double badImage;                    // Image value if x,y location is not good
-    double badVariance;                 // Variance value if x,y location is not good
-    psMaskType badMask;                 // Mask value to give bad pixels
-    psMaskType poorMask;                // Mask value to give poor pixels
-    float poorFrac;                     // Fraction of flux in bad pixels before output is marked bad
+    psImageInterpolateMode mode;        ///< Interpolation mode
+    const psImage *image;               ///< Input image for interpolation
+    const psImage *variance;            ///< Variance image for interpolation
+    const psImage *mask;                ///< Mask image for interpolation
+    psMaskType maskVal;                 ///< Value to mask
+    double badImage;                    ///< Image value if x,y location is not good
+    double badVariance;                 ///< Variance value if x,y location is not good
+    psMaskType badMask;                 ///< Mask value to give bad pixels
+    psMaskType poorMask;                ///< Mask value to give poor pixels
+    float poorFrac;                     ///< Fraction of flux in bad pixels before output is marked bad
 } psImageInterpolateOptions;
 
@@ -64,9 +72,9 @@
 
 /// Interpolate image pixel value given floating point coordinates.
-bool psImageInterpolate(double *imageValue, ///< Return value for image
-                        double *varianceValue, ///< Return value for variance
-                        psMaskType *maskValue, ///< Return value for mask
-                        float x, float y, ///< Location to which to interpolate
-                        const psImageInterpolateOptions *options ///< Options for interpolation
+psImageInterpolateStatus psImageInterpolate(double *imageValue, ///< Return value for image
+                                            double *varianceValue, ///< Return value for variance
+                                            psMaskType *maskValue, ///< Return value for mask
+                                            float x, float y, ///< Location to which to interpolate
+                                            const psImageInterpolateOptions *options ///< Options
     );
 
