Index: trunk/psLib/src/image/psImageManip.h
===================================================================
--- trunk/psLib/src/image/psImageManip.h	(revision 1205)
+++ trunk/psLib/src/image/psImageManip.h	(revision 1216)
@@ -10,11 +10,11 @@
  *  @author Ross Harman, MHPCC
  *
- *  @version $Revision: 1.1 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2004-07-09 21:48:07 $
+ *  @version $Revision: 1.2 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2004-07-14 23:22:49 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
  */
-# ifndef PS_IMAGE_MANIP_H
-# define PS_IMAGE_MANIP_H
+#ifndef PS_IMAGE_MANIP_H
+#define PS_IMAGE_MANIP_H
 
 #include "psImage.h"
@@ -23,5 +23,5 @@
 /// @{
 
-/** Clip image values outside of tange to given values
+/** Clip image values outside of range to given values
  *
  *  All pixels with values less than min are set to the value vmin.  all pixels
@@ -33,8 +33,25 @@
 int psImageClip(
     psImage* input,                 ///< the image to clip
-    psF32 min,                      ///< the minimum image value allowed
-    psF32 vmin,                     ///< the value pixels < min are set to
-    psF32 max,                      ///< the maximum image value allowed
-    psF32 vmax                      ///< the value pixels > max are set to
+    psF64 min,                      ///< the minimum image value allowed
+    psF64 vmin,                     ///< the value pixels < min are set to
+    psF64 max,                      ///< the maximum image value allowed
+    psF64 vmax                      ///< the value pixels > max are set to
+);
+
+/** Clip image values outside of a specified complex region
+ *
+ *  All pixels outside of the rectangular region in complex space formed by
+ *  the min and max input parameters are set to the value vmax (if either
+ *  the real or imaginary portion exceeds the respective max values), or vmin. 
+ *  This function is defined for psC32, and psC64 imagery only.
+ *
+ *  @return int     The number of clipped pixels
+ */
+int psImageClipComplexRegion(
+    psImage* input,                 ///< the image to clip
+    psC64 min,                      ///< the minimum image value allowed
+    psC64 vmin,                     ///< the value pixels < min are set to
+    psC64 max,                      ///< the maximum image value allowed
+    psC64 vmax                      ///< the value pixels > max are set to
 );
 
@@ -48,5 +65,5 @@
 int psImageClipNaN(
     psImage* input,                 ///< the image to clip
-    psF32 value                     ///< the value to set all NaN/Inf values to
+    psF64 value                     ///< the value to set all NaN/Inf values to
 );
 
@@ -70,4 +87,21 @@
 );
 
+/** Rebin image to new scale.
+ *
+ *  A new image is constructed in which the dimensions are reduced by a factor of
+ *  1/scale.  The scale, always a positive number, is equal in each dimension and
+ *  specified the number of pixels used to define a new pixel in the output image.
+ *  The output image is generated from all input image pixels. This function is 
+ *  defined for psU8, psS8, psS16, psF32, psF64, psC32, and psC64.
+ *
+ *  @return psImage    new image formed by rebinning input image.
+ */
+psImage* psImageRebin(
+    psImage* out,                   ///< an psImage to recycle.  If NULL, a new image is created
+    const psImage* in,              ///< input image
+    unsigned int scale,             ///< the scale to rebin for each dimension
+    const psStats* stats            ///< the statistic to perform when rebinning.  Only one method should be set.
+);
 
 #endif
+
