Index: trunk/psLib/src/image/psImageManip.h
===================================================================
--- trunk/psLib/src/image/psImageManip.h	(revision 1441)
+++ trunk/psLib/src/image/psImageManip.h	(revision 1442)
@@ -11,6 +11,6 @@
  *  @author Ross Harman, MHPCC
  *
- *  @version $Revision: 1.10 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2004-08-09 23:40:55 $
+ *  @version $Revision: 1.11 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2004-08-10 01:05:53 $
  *
  *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
@@ -32,10 +32,11 @@
  *  @return int     The number of clipped pixels
  */
-int psImageClip(psImage* input,        ///< the image to clip
-                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
-               );
+int psImageClip(
+    psImage* input,                    ///< the image to clip
+    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
@@ -48,10 +49,11 @@
  *  @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
-                            );
+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
+);
 
 /** Clip NaN image pixels to given value.
@@ -62,7 +64,8 @@
  *  @return int     The number of clipped pixels
  */
-int psImageClipNaN(psImage* input,     ///< the image to clip
-                   psF64 value  ///< the value to set all NaN/Inf values to
-                  );
+int psImageClipNaN(
+    psImage* input,                    ///< the image to clip
+    psF64 value                        ///< the value to set all NaN/Inf values to
+);
 
 /** Overlay subregion of image with another image
@@ -77,10 +80,11 @@
  *  @return int         0 if success, non-zero if failed.
  */
-int psImageOverlaySection(psImage* image,      ///< target image
-                          const psImage* overlay,      ///< the overlay image
-                          int col0,     ///< the column to start overlay
-                          int row0,     ///< the row to start overlay
-                          const char *op        ///< the operation to perform for overlay
-                         );
+int psImageOverlaySection(
+    psImage* image,                    ///< target image
+    const psImage* overlay,            ///< the overlay image
+    int col0,                          ///< the column to start overlay
+    int row0,                          ///< the row to start overlay
+    const char *op                     ///< the operation to perform for overlay
+);
 
 /** Rebin image to new scale.
@@ -94,22 +98,68 @@
  *  @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.
-                     );
+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.
+);
 
-psImage* psImageResample(psImage* out, ///< an psImage to recycle.  If NULL, a new image is created
-                         const psImage* in,    ///< input image
-                         int scale, psImageInterpolateMode mode);
+/** Resample image to new scale.
+ *
+ *  A new image is constructed in which the dimensions are increased by a 
+ *  factor of scale. The scale, always a positive number, is equal in each 
+ *  dimension. The output image is generated from all input image pixels. 
+ *  Each pixel in the output image is derived by interpolating between 
+ *  neighboring pixels using the specified interpolation method (mode).
+ *
+ *  @return psImage*    resampled image result
+ */
+psImage* psImageResample(
+    psImage* out,                      ///< an psImage to recycle.  If NULL, a new image is created
+    const psImage* in,                 ///< input image
+    int scale,                         ///< resample scaling factor
+    psImageInterpolateMode mode        ///< the interpolation mode used in resampling
+);
 
-psImage* psImageRotate(psImage* out,   ///< an psImage to recycle.  If NULL, a new image is created
-                       const psImage* in,      ///< input image
-                       float angle, float unexposedValue, psImageInterpolateMode mode);
+/** Rotate the input image by given angle, specified in degrees.
+ *
+ *  The output image must contain all of the pixels from the input image in 
+ *  their new frame. Pixels in the output image which do not map to input 
+ *  pixels should be set to exposed. The center of rotation is always the 
+ *  center pixel of the image. The rotation is specified in the sense that a 
+ *  positive angle is an anti-clockwise rotation. This function must be 
+ *  defined for the following types: psU8, psU16, psS8, psS16, psF32, psF64, 
+ *  psC32, psC64.
+ *
+ *  @return psImage*     the rotated image result.
+ */
+psImage* psImageRotate(
+    psImage* out,                      ///< an psImage to recycle.  If NULL, a new image is created
+    const psImage* in,                 ///< input image
+    float angle,                       ///< the rotation angle in degrees.
+    float unexposedValue,              ///< the output image pixel values for non-imagery areas
+    psImageInterpolateMode mode        ///< the interpolation mode used
+);
 
-psImage* psImageShift(psImage* out,    ///< an psImage to recycle.  If NULL, a new image is created
-                      const psImage* in,       ///< input image
-                      float dx, float dy, float unexposedValue, psImageInterpolateMode mode);
+/** Shift image by an arbitrary number of pixels (dx,dy) in either direction.
+ *
+ *  If the shift values are fractional, the output pixel values should 
+ *  interpolate between the input pixel values. The output image has the same 
+ *  dimensions as the input image. Pixels which fall off the edge of the 
+ *  output image are lost. Newly exposed pixels are set to the value given by 
+ *  exposed. This function must be defined for the following types: psU8, 
+ *  psU16, psS8, psS16, psF32, psF64, psC32, psC64.
+ *
+ *  @return psImage*     the shifted image result.
+ */
+psImage* psImageShift(
+    psImage* out,                      ///< an psImage to recycle.  If NULL, a new image is created
+    const psImage* in,                 ///< input image
+    float dx,                          ///< the shift in x direction.
+    float dy,                          ///< the shift in y direction.
+    float unexposedValue,              ///< the output image pixel values for non-imagery areas
+    psImageInterpolateMode mode        ///< the interpolation mode to use
+);
 
 /** Roll image by an integer number of pixels in either direction.
@@ -121,9 +171,10 @@
  *  @return psImage* the rolled version of the input image.
  */
-psImage* psImageRoll(psImage* out,     ///< an psImage to recycle.  If NULL, a new image is created
-                     const psImage* in,        ///< input image
-                     int dx,    ///< number of pixels to roll in the x-dimension
-                     int dy     ///< number of pixels to roll in the y-dimension
-                    );
+psImage* psImageRoll(
+    psImage* out,                      ///< an psImage to recycle.  If NULL, a new image is created
+    const psImage* in,                 ///< input image
+    int dx,                            ///< number of pixels to roll in the x-dimension
+    int dy                             ///< number of pixels to roll in the y-dimension
+);
 
 #endif
